📄 personalaccount.pas
字号:
//------200405-------
lycycpints:=(lycpprin+lycpints)*interest;
lycypsints:=(lypsprin+lypsints)*interest;
{lycycpints:=(RMD.fieldbyname('lycpprin').AsFloat+RMD.fieldbyname('lycpints').AsFloat)*interest;
lycypsints:=(RMD.fieldbyname('lypsprin').AsFloat+RMD.fieldbyname('lypsints').AsFloat)*interest; }
{lycypsints:=(lypsprin+lypsints)*interest;//+cypsints+lypsints ;
lycycpints:=(lycpprin+lycpints)*interest;//+cycpints+lycpints ; }
with DataShare_frm.Query5 do
begin
close;
ParamByName('param1').AsString:=formatfloat('0.0000',interest);
ParamByName('param2').AsString :=formatfloat('0.00',lycycpints);
ParamByName('param3').AsString :=formatfloat('0.00',lycypsints);
paramByname('param4').AsInteger:=RMD.Fields[3].AsInteger ;
parambyname('param5').AsString :=RMD.Fields[2].AsString ;
parambyname('param6').AsString :=formatfloat('0.00',lypsprin);
parambyname('param7').AsString :=formatfloat('0.00',lycpprin);
parambyname('param8').AsString :=formatfloat('0.00',lypsints);
parambyname('param9').AsString :=formatfloat('0.00',lycpints);
//-------------20040806-----------------
//RMD.Next ;
//-------------20040806-----------------
prepare;
execsql;
end;
end;
RMD.Next ; // next; close;
while not RMD.Eof do
begin
DataShare_frm.Common_Query.Close ;
DataShare_frm.Common_Query.ParamByName('param1').AsFloat :=RMD.Fields[4].AsFloat ;
DataShare_frm.Common_Query.ParamByName('param2').AsInteger :=RMD.Fields[5].AsInteger ;
DataShare_frm.Common_Query.ParamByName('param3').AsInteger :=RMD.Fields[2].AsInteger ;
DataShare_frm.Common_Query.ParamByName('param4').AsInteger :=Rmd.Fields[3].AsInteger ;
if RMD.Fields[5].AsInteger>0 then
DataShare_frm.Common_Query.ParamByName('param5').AsString :=formatfloat('0.00',RMD.Fields[4].AsFloat/RMD.Fields[5].AsInteger)
else
DataShare_frm.Common_Query.ParamByName('param5').AsString :='0';
DataShare_frm.Common_Query.Prepare ;
DataShare_frm.Common_Query.ExecSQL ;
DataShare_frm.Query4.close;
DataShare_frm.Query4.ParamByName('param1').AsString :=RMD.Fields[2].AsString ; // /*人员内码*/
DataShare_frm.Query4.ParamByName('param2').AsString :=RMD.Fields[1].AsString ; // /*姓名*/
DataShare_frm.Query4.ParamByName('param3').AsString :=RMD.Fields[0].AsString ; // /*社会保障号*/
DataShare_frm.Query4.ParamByName('param4').AsString :=RMD.Fields[3].AsString ; // /*年份*/
DataShare_frm.Query4.ParamByName('param5').AsString :=RMD.Fields[5].AsString ; // /*缴费月数 */
if RMD.Fields[5].AsInteger=0 then
DataShare_frm.Query4.ParamByName('param6').AsString :='0'
else
DataShare_frm.Query4.ParamByName('param6').AsString :=formatfloat('0.00',RMD.Fields[4].AsFloat/RMD.Fields[5].AsInteger);// /*月缴费工资*/
DataShare_frm.Query4.ParamByName('param7').AsString :=RMD.Fields[4].AsString ; // /*年缴费工资*/
DataShare_frm.Query4.ParamByName('param8').AsString :='1'; // /*上传标志,1个人帐户数据整理,2固定职工和合同制职工缴费后建帐前数据,3原异地转入人员数据未处理,4原异地转入人员数据已处理*/
DataShare_frm.Query4.ParamByName('param9').AsString :=main_frm.user.OPNAME ;
DataShare_frm.Query4.ParamByName('param10').AsString :=datetimetostr(now);
DataShare_frm.Query4.ParamByName('param11').AsString :='1';//审核标志 1待审报,2已申报 4 申报通过 6不通过
DataShare_frm.Query4.parambyname('param12').asstring :=formatfloat('0.00',RMD.fieldbyname('nextyearjs').asfloat);
DataShare_frm.Query4.Prepare ;
DataShare_frm.Query4.ExecSQL ;
//psagacct_all(RMD.Fields[2].AsInteger,RMD.Fields[3].AsInteger,DataShare_frm.Dbs); //结息
if RMD.Fields[3].AsInteger<2002 then
psagacct_all(RMD.Fields[2].AsInteger,RMD.Fields[3].AsInteger,DataShare_frm.Dbs) //2001年以前结息
else
begin
lypsprin:=0;lypsints:=0;cypsints:=0;lypsints:=0;lycycpints:=0;cypsarac:=0;//个人部分
lycpprin:=0;lycpints:=0;cycpints:=0;lycpints:=0;lycypsints:=0;cyftcpfd:=0;//企业部分
//----------------------20040607----------------
with DataShare_frm.Query8 do
begin
close;
parambyname('param1').AsString :=Flatcombobox6.Items[index];
parambyname('param2').AsInteger :=RMD.Fields[3].AsInteger;
prepare;
open;
if recordcount>0 then interest:=Fields[0].AsFloat else interest:=0;
end;
//interest:=RMD.fieldbyname('siinter').AsFloat;
with DataShare_frm.Query7 do
begin
close;
ParamByName('param1').AsString :=RMD.Fields[2].AsString ;
ParamByName('param2').AsInteger:=RMD.Fields[3].AsInteger-1 ; //上一年数据
Prepare ;
Open ;
if RecordCount>0 then
begin
lypsprin:=Fieldbyname('lypsprin').AsFloat;
cypsints:=Fieldbyname('cypsints').AsFloat;
lypsints:=Fieldbyname('lypsints').AsFloat;
lycpprin:=Fieldbyname('lycpprin').AsFloat;
lycpints:=Fieldbyname('lycpints').AsFloat;
cycpints:=Fieldbyname('cycpints').AsFloat;
cypsarac:=Fieldbyname('cypsarac').AsFloat;
cyftcpfd:=Fieldbyname('cyftcpfd').AsFloat;
lycypsints:=Fieldbyname('lycypsints').AsFloat;
lycycpints:=Fieldbyname('lycycpints').AsFloat;
end;
end;
lypsprin:=lypsprin+cypsarac;
lycpprin:=lycpprin+cyftcpfd;
lypsints:=lypsints+cypsints+lycypsints;
lycpints:=lycpints+cycpints+lycycpints;
//------200405-------
lycycpints:=(lycpprin+lycpints)*interest;
lycypsints:=(lypsprin+lypsints)*interest;
{lycycpints:=(RMD.fieldbyname('lycpprin').AsFloat+RMD.fieldbyname('lycpints').AsFloat)*interest;
lycypsints:=(RMD.fieldbyname('lypsprin').AsFloat+RMD.fieldbyname('lypsints').AsFloat)*interest;}
{lycypsints:=(lypsprin+lypsints)*interest;//+cypsints+lypsints ;
lycycpints:=(lycpprin+lycpints)*interest;//+cycpints+lycpints ; }
with DataShare_frm.Query5 do
begin
close;
ParamByName('param1').AsString:=formatfloat('0.0000',interest);
ParamByName('param2').AsString :=formatfloat('0.00',lycycpints);
ParamByName('param3').AsString :=formatfloat('0.00',lycypsints);
paramByname('param4').AsInteger:=RMD.Fields[3].AsInteger ;
parambyname('param5').AsString :=RMD.Fields[2].AsString ;
parambyname('param6').AsString :=formatfloat('0.00',lypsprin);
parambyname('param7').AsString :=formatfloat('0.00',lycpprin);
parambyname('param8').AsString :=formatfloat('0.00',lypsints);
parambyname('param9').AsString :=formatfloat('0.00',lycpints);
prepare;
execsql;
end;
end;
RMD.Next ; // next;
end;
{DataShare_frm.Query3.Close ; //清除上传表的相应记录
DataShare_frm.Query3.SQL.Clear ;
DataShare_frm.Query3.SQL.Add('delete from sbdz_psagacct where PSSENO=:param' );
DataShare_frm.Query3.ParamByName('param').AsString :=RMD.Fields[2].AsString ;
DataShare_frm.Query3.Prepare ;
DataShare_frm.Query3.ExecSQL ;}
datetimestr:=datetimetostr(now);
DataShare_frm.PersonalAccount_Query.Close ; //写入上传表记录sbdz_psagacct
Datashare_frm.PersonalAccount_Query.SQL.Clear ;
//DataShare_frm.PersonalAccount_Query.SQL.Add('insert into sbdz_psagacct select * from sbda_psagacct where PSSENO=:param' );
DataShare_frm.PersonalAccount_Query.SQL.Add('insert into sbdz_psagacct(');
DataShare_frm.PersonalAccount_Query.SQL.Add('PSSENO,YEARNO,LYCPPRIN,LYPSPRIN,LYCPINTS,LYPSINTS,CYREWG,MONTHS,CYMONTHS,');
DataShare_frm.PersonalAccount_Query.SQL.Add('PAYIDX,LYMONTHS,LYREMONTHS,CYARCPFD,CYRELYCPFD,CYARPSFD,CYRELYPSFD,CYFTCPFD,');
DataShare_frm.PersonalAccount_Query.SQL.Add('CYRELYCPAC,SPLYCPFD,CYCPACMONS,CYPSARAC,CYRELYPSARAC,CYRELYPSAC,CYPSACMONS,');
DataShare_frm.PersonalAccount_Query.SQL.Add('CYCPINTS,CYPSINTS,ACCPINUPINTS,ACCPINUP,ACPSWGINUP,ACPSWGINUPINTS,WGMONUP,');
DataShare_frm.PersonalAccount_Query.SQL.Add('DBCPFD,DBPSFD,CYDATE,PFLAG,DBFD,WGNOTES,FTNOTES,TOTFD,TOTPSFD,LYCYCPINTS,');
DataShare_frm.PersonalAccount_Query.SQL.Add('LYCYPSINTS,NOTES,CYACMONS,PSRATE,CPRATE,SIINTER,OPCODE,OPDATE,PROCFLG)');
DataShare_frm.PersonalAccount_Query.SQL.Add('select PSSENO,YEARNO,LYCPPRIN,LYPSPRIN,LYCPINTS,LYPSINTS,CYREWG,MONTHS,CYMONTHS,');
DataShare_frm.PersonalAccount_Query.SQL.Add('PAYIDX,LYMONTHS,LYREMONTHS,CYARCPFD,CYRELYCPFD,CYARPSFD,CYRELYPSFD,CYFTCPFD,');
DataShare_frm.PersonalAccount_Query.SQL.Add('CYRELYCPAC,SPLYCPFD,CYCPACMONS,CYPSARAC,CYRELYPSARAC,CYRELYPSAC,CYPSACMONS,');
DataShare_frm.PersonalAccount_Query.SQL.Add('CYCPINTS,CYPSINTS,ACCPINUPINTS,ACCPINUP,ACPSWGINUP,ACPSWGINUPINTS,WGMONUP,');
DataShare_frm.PersonalAccount_Query.SQL.Add('DBCPFD,DBPSFD,CYDATE,PFLAG,DBFD,WGNOTES,FTNOTES,TOTFD,TOTPSFD,LYCYCPINTS,');
DataShare_frm.PersonalAccount_Query.SQL.Add('LYCYPSINTS,NOTES,CYACMONS,PSRATE,CPRATE,SIINTER,');
DataShare_frm.PersonalAccount_Query.SQL.Add(Quotedstr(main_frm.user.OPNAME)+','+Quotedstr(datetimetostr(now))+',1'+' from sbda_psagacct where PSSENO=:param' );
//DataShare_frm.PersonalAccount_Query.SQL.Add(Quotedstr(main_frm.user.OPNAME)+','+Quotedstr(datetimestr)+',1'+' from sbda_psagacct where PSSENO=:param' );
DataShare_frm.PersonalAccount_Query.ParamByName('param').AsString :=RMD.Fields[2].AsString ;
DataShare_frm.PersonalAccount_Query.Prepare ;
DataShare_frm.PersonalAccount_Query.ExecSQL ;
DataShare_frm.Dbs.Commit ;
except
DataShare_frm.Dbs.Rollback ;
application.MessageBox('更新缴费记录出现异常!','恩普软件',mb_iconerror+mb_ok);
end;
end;
procedure TPersonalAccount_frm.FlatButton2Click(Sender: TObject);
var
i:double;
j:integer;
begin
AddRecord_frm:=TAddRecord_frm.Create(nil);
if RMD.Active then
begin
RMD.First ;
AddRecord_frm.iscode:=RMD.Fields[0].AsString ;
AddRecord_frm.psname:=RMD.Fields[1].AsString ;
AddRecord_frm.psseno:=RMD.Fields[2].AsString ;
AddRecord_frm.cpseno:=Flatcombobox5.Items[Flatcombobox3.Itemindex];
while not RMD.Eof do
begin
AddRecord_frm.ComboBox1.Items.Add(trim(RMD.Fields[3].asstring));
RMD.Next ;
end;
end else RMD.Active :=true;
if AddRecord_frm.ShowModal=mrok then
begin
AddRecord_frm.RMD.First ;
while not AddRecord_frm.RMD.Eof do
begin
RMD.First ;
Add_Delete:=true;
j:=Del_Record.Items.IndexOf(AddRecord_frm.RMD.fieldbyname('yearno').AsString);
if j>=0 then
Del_Record.Items.Delete(j) ;
Add_record.AppendRecord([AddRecord_frm.RMD.Fields[0].AsString,AddRecord_frm.RMD.Fields[1].AsString,
AddRecord_frm.RMD.Fields[2].AsString,AddRecord_frm.RMD.Fields[3].AsString,
AddRecord_frm.RMD.Fields[4].AsString,AddRecord_frm.RMD.Fields[5].AsString,
AddRecord_frm.RMD.Fields[6].AsString]) ;
while (AddRecord_frm.RMD.FieldByName('yearno').AsInteger>RMD.FieldByName('yearno').AsInteger) and (not RMD.Eof) do
RMD.Next ;
if AddRecord_frm.RMD.FieldByName('cymonths').AsInteger=0 then i:=0
else i:=AddRecord_frm.RMD.FieldByName('cpsum').AsFloat/AddRecord_frm.RMD.FieldByName('cymonths').AsInteger;
RMD.InsertRecord([AddRecord_frm.RMD.FieldByName('iscode').AsString,AddRecord_frm.RMD.FieldByName('psname').AsString,
AddRecord_frm.RMD.FieldByName('psseno').AsString,AddRecord_frm.RMD.FieldByName('yearno').asstring,
AddRecord_frm.RMD.FieldByName('cpsum').AsString, AddRecord_frm.RMD.FieldByName('cymonths').AsString,
formatfloat('0.00',i)]);
AddRecord_frm.RMD.Next ;
end;
end;
AddRecord_frm.Free ;
AddRecord_frm:=nil;
end;
procedure TPersonalAccount_frm.RMD0AfterEdit(DataSet: TDataSet);
begin
if RMD.Fields[5].AsInteger>12 then
begin
application.MessageBox('月份不能大于12,月份更新有误!','恩普软件',mb_iconerror+mb_ok);
RMD.Cancel ;
end;
if RMD.Fields[5].AsInteger<1 then
begin
application.MessageBox('月份不能小于1,月份更新有误!','恩普软件',mb_iconerror+mb_ok);
RMD.Cancel ;
end;
end;
procedure TPersonalAccount_frm.FlatButton1Click(Sender: TObject);
var
b:boolean;
begin
//数据是否改动
self.Cursor :=crhourglass;
b:=whetherchanged;
if b then savedata;
if date_change then Save_sbdb_psarch;
date_change:=false;
init;
showdata;
self.Cursor :=crdefault;
end;
procedure TPersonalAccount_frm.FlatComboBox3Change(Sender: TObject);
var
b:boolean;
begin
b:=whetherchanged;
if (b) or (date_change) then
if application.MessageBox('数据已改动,是否保存?','恩普软件',mb_iconquestion+mb_okcancel)=id_ok then
begin
if b then savedata;
if date_change then Save_sbdb_psarch;
date_change:=false;
end;
init;
with DataShare_frm.PersonalAccount_Query do
begin
close;
sql.Clear ;
sql.Add('select psseno,psname,iscode from sbdb_psarch where cpseno=:param and (status=1 or status=4)');
parambyn
⌨️ 快捷键说明
复制代码
Ctrl + C
搜索代码
Ctrl + F
全屏模式
F11
切换主题
Ctrl + Shift + D
显示快捷键
?
增大字号
Ctrl + =
减小字号
Ctrl + -