📄 accountmoving.pas
字号:
unzip.ExtractDir :=d+'importfile\';
unzip.FileSpec.Add('*.*');
unzip.Extract ;
deletefile(extractfilepath(application.ExeName)+'importfile\bb.zip');
sqlstr:='prseno,psseno,yearno,lycpprin,lypsprin,lycpints,lypsints,cyrewg,months';
sqlstr:=sqlstr+',cymonths,payidx,lymonths,lyremonths,cyarcpfd,cyrelycpfd,cyarpsfd,cyrelypsfd';
sqlstr:=sqlstr+',cyftcpfd,cyrelycpac,splycpfd,cycpacmons,cypsarac,cyrelypsarac,cyrelypsac,cypsacmons';
sqlstr:=sqlstr+',cycpints,cypsints,accpinup,acpswginup,accpinupints,acpswginupints,wgmonup,dbcpfd';
sqlstr:=sqlstr+',dbpsfd,cydate,pflag,dbfd,wgnotes,ftnotes,totfd,totpsfd,lycycpints,lycypsints';
sqlstr:=sqlstr+',notes,cyacmons,psrate,cprate,siinter';
imp_sbda_psagacct(d+'importfile\sbda_psagacct.txt', 'sbda_psagacct','|',sqlstr,DataShare_frm.Query1,DataShare_frm.Query2);
//-------------------------------转移信息写入本地数据库---------------------------
try
with DataShare_frm.Query5 do
begin
close;
sql.Clear ;
sql.Add('delete from Account_Moving where psseno=:p');
parambyname('p').AsString :=Flatcombobox2.Items[FlatCombobox1.itemindex];
prepare;
execsql;
end;
with DataShare_frm.Query4 do
begin
close;
sql.Clear ;
sql.Add('insert into Account_Moving(psseno,psname,iscode,sjjf,stjf,out_unit,in_unit,deaddate,');
sql.Add('yjfgzjs,out_esiis,out_account_name,out_zip,out_account,out_address,in_esiis,');
sql.add('in_account_name,in_zip,in_account,in_address,account_1,account_2,account_3,');
sql.add('account_4,account_5,account_6,account_7,account_8,account_9,memo,Account_Setup,opcode,opdate,procflg)');
sql.add(' values(:p0,:p1,:p2,:p3,:p4,:p5,:p6,:p7,:p8,:p9,:p10,:p11,:p12,:p13,:p14,:p15,:p16,');
sql.add(':p17,:p18,:p19,:p20,:p21,:p22,:p23,:p24,:p25,:p26,:p27,:p28,:p29,:p30,:p31,:p32)');
for i:=0 to 29 do //RMD.FieldCount-3
parambyname('p'+inttostr(i)).AsString :=RMD.Fields[i].AsString ;
parambyname('p30').AsString :=main_frm.user.OPNAME ;
parambyname('p31').AsString :=datetimetostr(now);
parambyname('p32').AsString :='1';
prepare;
execsql;
end;
except
screen.Cursor:=crdefault;
application.MessageBox('保存转移信息到本地失败!','恩普软件',mb_iconerror+mb_ok);
exit;
end;
screen.Cursor :=crdefault;
end;
procedure TAccountMoving_frm.TreeViewClick(Sender: TObject);
var
node,node1:Tfctreenode;
begin
FlatComboBox1.Items.Clear ;
FlatComboBox2.Items.Clear ;
FlatComboBox3.Items.Clear ;
FlatComboBox1.Text :='';
flatbutton1.Enabled :=false;
flatbutton2.Enabled :=false;
flatbutton5.Enabled :=false;
init;
node:=Treeview.Selected ;
if (node.Level=0) and (node<>nil) and (not node.HasChildren ) and (trim(node.StringData)<>'') then
with DataShare_frm.Query1 do
begin
close;
sql.Clear ;
sql.Add('select cpname,cpseno from sbdb_cparch where cmcpseno='+node.StringData);
prepare;
open;
while not eof do
begin
node1:=treeview.Items.AddChildFirst(node,Fieldbyname('cpname').AsString);
if node1<>nil then node1.StringData:=Fieldbyname('cpseno').AsString ;
next;
end;
treeview.FullCollapse;
end;
if (node.Level=1) and (node<>nil) then
begin
unit_name:=node.Text ;
with DataShare_frm.Query2 do
begin
close;
sql.Clear ;
sql.Add('select psseno,psname,iscode from sbdb_psarch where cpseno=:param');
parambyname('param').AsString :=node.StringData;
prepare;
open;
while not eof do
begin
FlatComboBox1.Items.Add(Fieldbyname('psname').AsString);
FlatComboBox2.Items.Add(Fieldbyname('psseno').AsString);
FlatComboBox3.Items.Add(Fieldbyname('iscode').AsString);
next;
end;
end;
end;
end;
procedure TAccountMoving_frm.FlatComboBox1Change(Sender: TObject);
var
i,j:integer;
str:string;
//s:widestring;
begin
init;
flatbutton1.Enabled :=true;
flatbutton2.Enabled :=true;
flatbutton5.Enabled :=true;
l02.Caption:=Flatcombobox3.Items[flatcombobox1.itemindex];
l05.Caption:=unit_name;
with DataShare_frm.Query3 do
begin
close;
sql.Clear ;
sql.Add('select * from Account_Moving where psseno=:param');
parambyname('param').AsString :=FlatCombobox2.Items[Flatcombobox1.itemindex];
prepare;
open;
//if Recordcount<1 then exit; //20040819,acctount_moving里增加了opseno字段,错位 修改于20040819
if trim(Fields[3].AsString)<>'' then l02.Caption :=Fields[3].AsString ;
l03.Caption :=Fields[4].AsString ;// l04.Caption :=Fields[5].AsString ;
l05.Caption :=Fields[6].AsString ; l06.Caption :=Fields[7].AsString ; l07.Caption :=Fields[8].AsString ;
Edit06.Text :=Fields[7].AsString ;
if trim(Fields[10].AsString)<>'' then l09.Caption :=Fields[10].AsString ;
if trim(Fields[11].AsString)<>'' then l10.Caption :=Fields[11].AsString ;
if trim(Fields[12].AsString)<>'' then l11.Caption :=Fields[12].AsString ;
if trim(Fields[13].AsString)<>'' then l12.Caption :=Fields[13].AsString ;//20041020
if trim(Fields[14].AsString)<>'' then l13.Caption :=Fields[14].AsString ;
l08.Caption :=Fields[9].AsString ; {l09.Caption :=Fields[10].AsString ; l10.Caption :=Fields[11].AsString ;
l11.Caption :=Fields[12].AsString ; l12.Caption :=Fields[12].AsString ;l13.Caption :=Fields[14].AsString ;}
l14.Caption :=Fields[15].AsString ; l15.Caption :=Fields[16].AsString ;l16.Caption :=Fields[17].AsString ;
Edit14.Text :=Fields[15].AsString ; Edit15.Text :=Fields[16].AsString ;Edit16.Text :=Fields[17].AsString ;
l17.Caption :=Fields[18].AsString ; l18.Caption :=Fields[19].AsString ;l19.Caption :=Fields[20].AsString ;
Edit17.Text :=Fields[18].AsString ; Edit18.Text :=Fields[19].AsString ;
l20.Caption :=Fields[21].AsString ; l21.Caption :=Fields[22].AsString ;l22.Caption :=Fields[23].AsString ;
l23.Caption :=Fields[24].AsString ; l24.Caption :=Fields[25].AsString ;l25.Caption :=Fields[26].AsString ;
l25.Caption :=Fields[26].AsString ; l26.Caption :=Fields[28].AsString ;l27.Caption :=Fields[28].AsString ;
l28.Caption :=Fields[29].AsString ;
//l28.Caption :='结息时间:至 '+Fields[28].AsString+' 年 '+Fields[29].AsString+' 月底止. 截止缴费时间是指末次缴费时间';
l05.Caption:=unit_name;
RMD.Close;
RMD.Open ;
for i:=1 to 5 do
begin
{if i=1 then
str:='第'+chr(vk_return)+chr(vk_return)+'一'+chr(vk_return)+chr(vk_return)+'联'+chr(vk_return)+chr(vk_return)+chr(vk_return)+chr(vk_return)+
'转'+chr(vk_return)+chr(vk_return)+'出'+chr(vk_return)+chr(vk_return)+'地'+chr(vk_return)+chr(vk_return)+
'业'+chr(vk_return)+chr(vk_return)+'务'+chr(vk_return)+chr(vk_return)+'留'+chr(vk_return)+chr(vk_return)+'存'
else if i=2 then
str:='第'+chr(vk_return)+chr(vk_return)+'二'+chr(vk_return)+chr(vk_return)+'联'+chr(vk_return)+chr(vk_return)+chr(vk_return)+chr(vk_return)+
'转'+chr(vk_return)+chr(vk_return)+'出'+chr(vk_return)+chr(vk_return)+'地'+chr(vk_return)+chr(vk_return)+
'财'+chr(vk_return)+chr(vk_return)+'务'+chr(vk_return)+chr(vk_return)+'留'+chr(vk_return)+chr(vk_return)+'存'
else if i=3 then
str:='第'+chr(vk_return)+chr(vk_return)+'三'+chr(vk_return)+chr(vk_return)+'联'+chr(vk_return)+chr(vk_return)+chr(vk_return)+chr(vk_return)+
'省'+chr(vk_return)+chr(vk_return)+'社'+chr(vk_return)+chr(vk_return)+'保'+chr(vk_return)+chr(vk_return)+
'中'+chr(vk_return)+chr(vk_return)+'心'+chr(vk_return)+chr(vk_return)+'留'+chr(vk_return)+chr(vk_return)+'存'
else if i=4 then
str:='第'+chr(vk_return)+chr(vk_return)+'四'+chr(vk_return)+chr(vk_return)+'联'+chr(vk_return)+chr(vk_return)+chr(vk_return)+chr(vk_return)+
'转'+chr(vk_return)+chr(vk_return)+'入'+chr(vk_return)+chr(vk_return)+'地'+chr(vk_return)+chr(vk_return)+
'社'+chr(vk_return)+chr(vk_return)+'保'+chr(vk_return)+chr(vk_return)+'机'+chr(vk_return)+chr(vk_return)+
'构'+chr(vk_return)+chr(vk_return)+'留'+chr(vk_return)+chr(vk_return)+'存'
else str:='第'+chr(vk_return)+chr(vk_return)+'五'+chr(vk_return)+chr(vk_return)+'联'+chr(vk_return)+chr(vk_return)+chr(vk_return)+chr(vk_return)+
'转'+chr(vk_return)+chr(vk_return)+'入'+chr(vk_return)+chr(vk_return)+'单'+chr(vk_return)+chr(vk_return)+
'位'+chr(vk_return)+chr(vk_return)+'留'+chr(vk_return)+chr(vk_return)+'存';}
RMD.Append ;
for j:=0 to Fieldcount-7 do
begin
//s:=trim(Fields[j+1].AsString);
//if length(s)>14 then s:=copy(s,1,13)+chr(vk_return)+copy(s,14,length(s));
RMD.Fields[j].AsString :=Fields[j+1].AsString ;
end;
//-----------------RMD的bug,string类多个回车键不能保存-------------------------------
RMD.FieldByName('label').AsString :=QRlabel[i];
end;
end;
end;
procedure TAccountMoving_frm.FlatButton1Click(Sender: TObject);
var
i:integer;
begin
inherited;
if not assigned(QRAccountMoving_frm) then QRAccountMoving_frm:=TQRAccountMoving_frm.Create(nil);
with QRAccountMoving_frm do
begin
if RMD.Active then RMD.First ;
if trim(QRDBText3.Caption)='' then QRDBText3.Caption:=' 年 个月';
if trim(QRDBText4.Caption)='' then QRDBText4.Caption:=' 年 个月';
if trim(QRDBText7.Caption)='' then QRDBText7.Caption:=' 年 个月';
if trim(QRLabel157.Caption)='' then QRLabel157.Caption :=' 年 月 日';
if trim(QRLabel159.Caption)='' then QRLabel159.Caption :=' 年 月 日';
if trim(QRDBText23.Caption)='' then QRDBText23.Caption:='结息时间: 至 年 月底止';
QRLabel87.Caption :=unit_name;
QRLabel92.Caption :=flatedit1.Text ;
QRLabel156.Caption:=flatedit2.Text ;
QRLabel157.Caption:=flatedit3.Text ;
QRLabel161.Caption :=flatedit4.Text ;
QRLabel162.Caption :=flatedit5.Text ;
QRDBText5.Visible :=false;
Quickrep.PreviewModal ;
end;
end;
procedure TAccountMoving_frm.FlatButton5Click(Sender: TObject);
var
yearno:string;
i:integer;
begin
inherited;
{//-------------------主系统中明细SQL,改进可以用以下SQL---------------------------------------
select a.psname psname,a.iscode iscode,floor(d.LYREMONS/12) cyyear,mod(d.LYREMONS,12) cymon,b.rewage rewage,
c.bfacyears bfacyears,to_char(to_date(d.edate),'yyyy-mm') edate,
d.yearno yearno,d.monthno monthno,
d.TOCOMP incpname,d.TOSI inname,d.TOSIBK inbank,d.TOZIP inzip,d.TOSIAC inaccount,
d.TOADDRESS inaddress,d.LYCPPRIN+d.LYCPINTS lycpprin,d.LYPSPRIN+d.LYPSINTS lypsprin,
e.siinter siinter,d.CYREMONS cymonth,d.CYCPRE,d.CYPSRE,
d.CYCPINTS lycycpints,d.CYPSINTS lycypsints,
g.cpname cpname
from sbdb_psarch a,sbdb_psoparch b,sbdb_psasarch c,sbdu_psupcase1 f,sbdb_cparch g,
sbdu_psaccase d,sbds_inancons e
where a.psseno=b.psseno and b.psseno=c.psseno(+) and b.psseno=d.psseno
and g.industry=e.industry and e.yearno=to_number(to_char(d.edate,'yyyy'))
and a.psseno=f.psseno and (f.uptype='05' or f.uptype='06')
and f.odcpseno=g.cpseno and a.psseno=:al_ps
//----------------------------------------------------------}
if not assigned(QRAccountMoving_frm) then QRAccountMoving_frm:=TQRAccountMoving_frm.Create(nil);
with QRAccountMoving_frm do
begin
RMD0.Close ;
RMD0.Open ;
b00.Caption :='';
b01.Caption :='';
b02.Caption :='';
b03.Caption :='';
b04.Caption :='';
b05.Caption :='';
b06.Caption :='';
b07.Caption :='';
b08.Caption :='';
b09.Caption :='';
with DataShare_frm.Query6 do
begin
close;
parambyname('al_ps').AsString :=Flatcombobox2.Items[FlatCombobox1.itemindex];
prepare;
open;
if recordcount>0 then
begin
b00.Caption :=Fields[0].AsString ;
b01.Caption :=Fields[1].AsString ;
if trim(Fields[2].AsString)='1' then
b02.Caption :='男' else b02.Caption :='女';
b03.Caption :=Fields[3].AsString ;
b04.Caption :=Fields[4].AsString ;
b05.Caption :=Fields[5].AsString ;
b06.Caption :=Fields[6].AsString ;
b07.Caption :=RMD.fieldbyname('Account_setup').AsString ;
b08.Caption :=Fields[8].AsString ;
b09.Caption :=Fields[9].AsString ;
end;
end;
with DataShare_frm.Query9 do
begin
close;
parambyname('al_ps').AsString :=Flatcombobox2.Items[FlatCombobox1.itemindex];
prepare;
open;
if Recordcount>0 then
yearno:=Fields[0].AsString
else yearno:='0';
end;
with DataShare_frm.Query7 do
begin
close;
parambyname('al_ps').AsString :=Flatcombobox2.Items[FlatCombobox1.itemindex];
parambyname('yearno').AsString :=yearno;
prepare;
open;
while not eof do
begin
RMD0.AppendRecord([Fields[0].asstring,Fields[1].asstring,Fields[2].asstring,Fields[3].asstring,'0','0','0',
'0','0','0','0','0','0','0','0','0','0','0','0','0','0','0','0','0','0']) ;
next;
end;
end;
with DataShare_frm.Query8 do
begin
close;
parambyname('al_ps').AsString :=Flatcombobox2.Items[FlatCombobox1.itemindex];
prepare;
open;
while not eof do
begin
RMD0.Append;
for i:=0 to Fieldcount-1 do
RMD0.Fields[i].AsString :=Fields[i].AsString ;
next;
end;
end;
QuickRep1.PreviewModal ;
end;
end;
procedure TAccountMoving_frm.FormClose(Sender: TObject;
var Action: TCloseAction);
begin
inherited;
RMD.Close ;
RMD0.Close ;
end;
end.
⌨️ 快捷键说明
复制代码
Ctrl + C
搜索代码
Ctrl + F
全屏模式
F11
切换主题
Ctrl + Shift + D
显示快捷键
?
增大字号
Ctrl + =
减小字号
Ctrl + -