📄 checkpersonalaccount.~pas
字号:
unit CheckPersonalAccount;
interface
uses
Windows, Messages, SysUtils, Variants, Classes, Graphics, Controls, Forms,
Dialogs, BASEWIN, XPMenu, Menus, ActnList, ImgList, TFlatButtonUnit,
ExtCtrls, StdCtrls, CheckLst, TFlatEditUnit, TFlatComboBoxUnit,typinfo,
TFlatSpeedButtonUnit, ComCtrls;
const screenwidth=1024;
const screenheight=768;
type
TCheckPersonalAccount_frm = class(Tbasewin_frm)
Panel4: TPanel;
Label31: TLabel;
Label32: TLabel;
FlatSpeedButton1: TFlatSpeedButton;
Label7: TLabel;
FlatComboBox1: TFlatComboBox;
FlatEdit30: TFlatEdit;
FlatComboBox2: TFlatComboBox;
FlatComboBox4: TFlatComboBox;
FlatComboBox5: TFlatComboBox;
FlatComboBox3: TFlatComboBox;
Splitter1: TSplitter;
ScrollBox1: TScrollBox;
Panel2: TPanel;
Panel3: TPanel;
Label1: TLabel;
Panel5: TPanel;
Edit1: TEdit;
Label2: TLabel;
Label3: TLabel;
Edit2: TEdit;
Bevel2: TBevel;
Bevel6: TBevel;
Bevel3: TBevel;
Bevel4: TBevel;
Bevel5: TBevel;
Label4: TLabel;
Edit3: TEdit;
Bevel7: TBevel;
Bevel8: TBevel;
Label5: TLabel;
Edit4: TEdit;
Bevel9: TBevel;
Bevel10: TBevel;
Label6: TLabel;
Edit5: TEdit;
Bevel11: TBevel;
Label8: TLabel;
Bevel12: TBevel;
Edit6: TEdit;
Bevel13: TBevel;
Label9: TLabel;
Bevel14: TBevel;
Edit7: TEdit;
Bevel15: TBevel;
Label10: TLabel;
Bevel16: TBevel;
Bevel17: TBevel;
Edit8: TEdit;
Label11: TLabel;
Edit9: TEdit;
Bevel18: TBevel;
Label12: TLabel;
Bevel19: TBevel;
Bevel20: TBevel;
Bevel21: TBevel;
Label13: TLabel;
Label14: TLabel;
Label15: TLabel;
Label16: TLabel;
Label17: TLabel;
Label18: TLabel;
Bevel22: TBevel;
Bevel23: TBevel;
Bevel24: TBevel;
Bevel25: TBevel;
Label19: TLabel;
Bevel26: TBevel;
Bevel27: TBevel;
Label20: TLabel;
Label21: TLabel;
Bevel28: TBevel;
Label22: TLabel;
Label23: TLabel;
Label24: TLabel;
Label25: TLabel;
Bevel29: TBevel;
Bevel30: TBevel;
Bevel31: TBevel;
Bevel32: TBevel;
Label26: TLabel;
Bevel33: TBevel;
Bevel34: TBevel;
Bevel35: TBevel;
Label27: TLabel;
Label28: TLabel;
Label29: TLabel;
Label30: TLabel;
Label33: TLabel;
Label34: TLabel;
Bevel36: TBevel;
Bevel37: TBevel;
Bevel38: TBevel;
Label35: TLabel;
Edit10: TEdit;
Edit11: TEdit;
Edit12: TEdit;
Edit13: TEdit;
Edit14: TEdit;
Edit15: TEdit;
Edit16: TEdit;
Edit17: TEdit;
Edit18: TEdit;
Edit19: TEdit;
Edit20: TEdit;
Edit21: TEdit;
Memo1: TMemo;
Label36: TLabel;
Bevel39: TBevel;
Label37: TLabel;
Label38: TLabel;
Edit22: TEdit;
Edit23: TEdit;
TreeView1: TTreeView;
procedure FormCreate(Sender: TObject);
procedure FlatComboBox3Change(Sender: TObject);
procedure FlatSpeedButton1Click(Sender: TObject);
procedure FlatComboBox1Change(Sender: TObject);
procedure TreeView1Click(Sender: TObject);
procedure FlatEdit30KeyPress(Sender: TObject; var Key: Char);
private
procedure ShowData(psseno,yearno:string);
procedure init;
{ Private declarations }
public
{ Public declarations }
end;
var
CheckPersonalAccount_frm: TCheckPersonalAccount_frm;
implementation
uses datashare;
{$R *.dfm}
procedure TCheckPersonalAccount_frm.init ;
begin
edit1.Text :=''; edit2.Text :=''; edit3.Text :='' ; edit4.Text :=''; edit5.Text :='';
edit6.Text :=''; edit7.Text :=''; edit8.Text :=''; edit9.Text :=''; edit10.Text :='';
edit11.Text :=''; edit12.Text :=''; edit13.Text :=''; edit14.Text :=''; edit15.Text :='';
edit16.Text :=''; edit17.Text :=''; edit18.Text :=''; edit19.Text :=''; edit20.Text :='';
edit21.Text :=''; edit22.Text :=''; edit23.Text :='';
memo1.Lines.Clear ;
end;
procedure TCheckPersonalAccount_frm.ShowData(psseno,yearno:string);
var
s:widestring;
begin
init;
with DataShare_frm.Query1 do
begin
close;
sql.Clear ; //累计缴费月数
sql.Add('select A.dept,B.yearno,A.psname,A.agcardno,A.iscode,isnull(B.months+B.wgmonup,0), ');
// cymonths+lymonths+lyremonths组成"其中本年缴费月数" 缴费基数,缴费情况, 累计储存额
sql.Add('isnull(cymonths,0) ,isnull(lymonths+lyremonths,0),wgnotes,ftnotes,isnull(lycpprin+lypsprin+lycpints+lypsints,0),');
// 个人部分储存额, 储存额本年利息,储存额本年利息个人部分,
sql.Add('isnull(lypsprin+lypsints,0),isnull(lycycpints+lycypsints,0),isnull(lycypsints,0),');
// 本息缴费单位划入 本年缴费个人部分 补缴单位划入 补缴个人划入 当年本金利息单位部分 当年本金利息个人部分
sql.Add('isnull(cyftcpfd+accpinup+splycpfd,0),isnull(cypsarac,0),isnull(cyrelycpac,0),isnull(cyrelypsarac+cyrelypsac,0),isnull(cycpints+accpinupints,0),isnull(cypsints+acpswginupints,0),');
//累计储存额
sql.Add('isnull(cyftcpfd+cyrelycpac+splycpfd+acpswginup+ cypsarac+cyrelypsarac+cyrelypsac+accpinup+cycpints+accpinupints+cypsints+acpswginupints+lycpprin+lycpints+lypsprin+lypsints+lycycpints+lycypsints,0),');
//累计储存额个人部分
sql.Add('isnull(acpswginup+cypsarac+cyrelypsarac+cyrelypsac+cypsints+acpswginupints+lypsprin+lypsints+lycypsints,0),');
// 本年欠缴额, 单位欠缴,备注
sql.Add('isnull(dbcpfd+dbpsfd,0),isnull(dbcpfd,0),B.notes from sbdb_psarch A,sbda_psagacct B');
sql.Add(' where A.psseno=B.psseno and B.yearno=:param1 and B.psseno=:param2');
s:=sql[0]+sql[1]+sql[2]+sql[3]+sql[4]+sql[5]+sql[6]+sql[7];
parambyname('param1').asstring:=yearno;
parambyname('param2').asstring:=psseno;
prepare;
open;
{showmessage(inttostr(DataShare_frm.Query1.RecordCount));
if recordcount>0 then
begin }
Edit1.Text :=Fields[0].AsString ;
Edit2.Text :=Fields[1].AsString ;
Edit3.Text :=trim(Fields[2].AsString);
edit4.Text :=trim(Fields[3].AsString);
Edit5.Text :=trim(Fields[4].AsString);
Edit6.Text :=trim(fields[5].AsString);
Edit7.Text :=trim(Fields[6].AsString)+'+'+trim(Fields[7].AsString);
Edit8.Text :=trim(Fields[8].AsString);
Edit9.Text :=trim(Fields[9].AsString);
Edit10.Text :=formatfloat('0.00',Fields[10].asfloat);
Edit11.Text :=formatfloat('0.00',Fields[11].AsFloat);
Edit12.Text :=formatfloat('0.00',fields[12].AsFloat);
Edit13.Text :=formatfloat('0.00',fields[13].AsFloat);
Edit14.Text :=formatfloat('0.00',Fields[14].AsFloat);
Edit15.Text :=formatfloat('0.00',Fields[15].AsFloat);
Edit16.Text :=formatfloat('0.00',Fields[16].AsFloat);
Edit17.Text :=formatfloat('0.00',Fields[17].AsFloat);
Edit18.Text :=formatfloat('0.00',Fields[18].AsFloat);
Edit19.Text :=formatfloat('0.00',Fields[19].AsFloat);
Edit20.Text :=formatfloat('0.00',Fields[20].AsFloat);
Edit21.Text :=formatfloat('0.00',Fields[21].AsFloat);
Edit22.Text :=formatfloat('0.00',Fields[22].AsFloat);
Edit23.Text :=formatfloat('0.00',Fields[23].AsFloat);
Memo1.Lines.Add(trim(Fields[24].asstring));
//end;
end;
end;
procedure TCheckPersonalAccount_frm.FormCreate(Sender: TObject);
var
i:integer;
begin
inherited;
SetWindowLong(Flatedit30.Handle, GWL_STYLE, GetWindowLong(FlatEdit30.Handle, GWL_STYLE) or ES_NUMBER);
with DataShare_frm.Query1 do
begin
close;
sql.Clear ;
sql.Add('select cpseno,cpname from sbdb_cparch');
prepare;
open;
Flatcombobox3.Items.Clear ; //记录单位名称
FlatCombobox5.Items.Clear ; //记录单位编号
while not eof do
begin
Flatcombobox3.Items.Add(Fieldbyname('cpname').AsString);
Flatcombobox5.Items.Add(Fieldbyname('cpseno').AsString);
next;
end;
close;
end;
Scaled:=true;
if screen.Width<>screenwidth then
begin
//height:=longint(height)*longint(screen.height) div screenheight;
//width:=longint(width)*longint(screen.width) div screenwidth;
scaleby(screen.Width,screenwidth);
{for i:=0 to componentcount-1 do
with components[i] do
begin
if GetPropInfo(ClassInfo, 'font') <> nil then
font.size := (screen.Width DIV screenWidth) * font.size;
end; }
for i:=0 to self.ControlCount-1 do
begin
controls[i].Width:=longint(controls[i].Width)*longint(screen.width) div screenwidth;
controls[i].Height:=longint(controls[i].Height)*longint(screen.height) div screenheight;
end;
end;
end;
procedure TCheckPersonalAccount_frm.FlatComboBox3Change(Sender: TObject);
var
node:Ttreenode;
begin
inherited;
init;
node:=treeview1.GetNodeAt(0,0);
node.DeleteChildren ;
with DataShare_frm.Query1 do
begin
close;
sql.Clear ;
sql.Add('select psseno,psname,iscode from sbdb_psarch where cpseno=:param');
parambyname('param').AsString :=Flatcombobox5.Items[Flatcombobox3.itemindex];
prepare;
open ;
Flatcombobox1.Text :='';
Flatcombobox1.Items.Clear ; //记录职工姓名
Flatcombobox2.Items.Clear ; //记录职工内码
Flatcombobox4.Items.Clear ; //记录职工身份证号
while not eof do
begin
Flatcombobox4.Items.Add(Fieldbyname('iscode').AsString);
FlatCombobox2.Items.Add(Fieldbyname('psseno').AsString);
Flatcombobox1.Items.Add(Fieldbyname('psname').AsString);
next;
end;
close;
end;
end;
procedure TCheckPersonalAccount_frm.FlatSpeedButton1Click(Sender: TObject);
begin
inherited;
if trim(Flatedit30.text)<>'' then
begin
if Flatcombobox4.Items.IndexOf(Flatedit30.Text)<0 then
begin
application.MessageBox('没有该职工的相关记录,请检查输入是否有误!','恩普软件',mb_iconinformation+mb_ok);
exit;
end;
Flatcombobox1.ItemIndex:=Flatcombobox4.Items.IndexOf(Flatedit30.Text);
Flatcombobox1.Text :=Flatcombobox1.Items[Flatcombobox4.Items.IndexOf(Flatedit30.Text)];
Flatcombobox1change(nil);
end else
application.messagebox('请正确输入职工的身分证号!','恩普软件',mb_iconinformation+mb_ok);
Flatedit30.Text :='';
end;
procedure TCheckPersonalAccount_frm.FlatComboBox1Change(Sender: TObject);
var
s:string;
node:Ttreenode;
begin
inherited;
init;
node:=treeview1.GetNodeAt(0,0);
node.DeleteChildren ;
with DataShare_frm.Query1 do
begin
close;
sql.Clear ;
sql.Add('select distinct yearno from sbda_psagacct where psseno=:param and yearno<2004 order by yearno');
s:=flatcombobox2.Items[flatcombobox1.itemindex];
parambyname('param').AsString :=flatcombobox2.Items[flatcombobox1.itemindex];
prepare;
open;
while not eof do
begin
treeview1.Items.AddChild(node,Fields[0].asstring);
next;
end;
end;
treeview1.FullExpand ;
end;
procedure TCheckPersonalAccount_frm.TreeView1Click(Sender: TObject);
var
node:Ttreenode;
begin
inherited;
node:=treeview1.GetNodeAt(0,0);
if node.Count<1 then
begin
application.MessageBox('请选择职工!','恩普软件',mb_iconerror+mb_ok);
exit;
end;
node:=treeview1.Selected ;
if node.Level=1 then
showdata(Flatcombobox2.Items[flatcombobox1.itemindex],node.Text);
end;
procedure TCheckPersonalAccount_frm.FlatEdit30KeyPress(Sender: TObject;
var Key: Char);
begin
inherited;
if (key=chr(vk_tab)) or (key=chr(vk_return)) then
FlatSpeedButton1.Click ;
end;
end.
⌨️ 快捷键说明
复制代码
Ctrl + C
搜索代码
Ctrl + F
全屏模式
F11
切换主题
Ctrl + Shift + D
显示快捷键
?
增大字号
Ctrl + =
减小字号
Ctrl + -