📄 backupdata.~pas
字号:
ls_sql:='CREATE TABLE pytbmt (tbname char(9) NOT NULL,tbst char(1) NOT NULL,tbcttime date NOT NULL,ctyear integer NOT NULL,';
ls_sql:=ls_sql+'ctmonth integer NOT NULL,pycpid numeric(8,0) NOT NULL)';
close;
sql.Clear;
sql.Add(ls_sql);
ExecSql;
end;
with query2 do
begin
close;
sql.Clear;
sql.Add('select * from pytbmt');
prepare;
open;
while not eof do
begin
ls_sql:='insert into pytbmt(tbname,tbst,tbcttime,ctyear,ctmonth,pycpid) ';
ls_sql:=ls_sql+' values('+chr(39)+fieldbyname('tbname').AsString+chr(39)+','+chr(39)+fieldbyname('tbst').AsString+chr(39)+','+ifthen(fieldbyname('tbcttime').AsString='','null','ctod('+chr(39)+FormatDateTime('mm/dd/yyyy',fieldbyname('tbcttime').AsDateTime)+chr(39)+')');
ls_sql:=ls_sql+','+fieldbyname('ctyear').AsString+','+fieldbyname('ctmonth').AsString+','+fieldbyname('pycpid').AsString+')';
query1.Close;
query1.SQL.Clear;
query1.SQL.Add(ls_sql);
query1.ExecSQL;
with datashare_form.Query1 do
begin
ls_sql:='select a.pycode pycode,a.pyname pyname,a.pytype pytype,a.pymtd pymtd from pystp a,pycpsel b,pytbmt c where c.pycpid=b.pycpid and b.pycode=a.pycode and c.tbname='+chr(39)+query2.fieldbyname('tbname').AsString+chr(39)+' order by a.pycode';
close;
sql.Clear;
sql.Add(ls_sql);
prepare;
open;
ls_sql:='create table '+query2.fieldbyname('tbname').AsString+' (manid integer not null,workno char(8),psname char(10) not null';
ls_field:='manid,workno,psname';
while not eof do
begin
ls_sql:=ls_sql+','+fieldbyname('pycode').AsString+' numeric(7,2) not null';
ls_field:=ls_field+','+fieldbyname('pycode').AsString;
next;
end;
ls_sql:=ls_sql+',pycpid integer not null,organid integer not null)';
ls_field:=ls_field+',pycpid,organid';
end;
query1.Close;
query1.SQL.Clear;
query1.SQL.Add(ls_sql);
query1.ExecSQL;
ls_file:=ls_file+query2.fieldbyname('tbname').AsString+'.dbf'+chr(13)+chr(10);
with datashare_form.Query2 do
begin
ls_sql:='select * from '+query2.fieldbyname('tbname').AsString;
close;
sql.Clear;
sql.Add(ls_sql);
prepare;
open;
while not eof do
begin
ls_sql:='insert into '+query2.fieldbyname('tbname').AsString+' ('+ls_field+') values(';
ls_sql:=ls_sql+fields[0].AsString+','+chr(39)+fields[1].AsString+chr(39)+','+chr(39)+fields[2].AsString+chr(39);
for j:=3 to FieldCount-3 do
begin
ls_sql:=ls_sql+','+fields[j].AsString;
end;
ls_sql:=ls_sql+','+fields[FieldCount-2].AsString+','+fields[FieldCount-1].AsString+')';
query1.Close;
query1.SQL.Clear;
query1.SQL.Add(ls_sql);
query1.ExecSQL;
next;
end;
end;
next;
end;
end;
M_info.Lines.Delete(i);
m_info.Lines.Add('正在备份工资表维护表...已备份!');
ProgressBar1.Position:=PB_pos;
FlatGauge1.Progress:=PB_pos;
end;
procedure Tbackupdata_form.UsersBackup();
var
ls_sql:string;
i:integer;
begin
i:=M_info.Lines.Add('正在备份用户基本信息表...');
with query1 do
begin
ls_sql:='CREATE TABLE users(opname char(10) NOT NULL,operid integer NOT NULL,oppass char(8) NOT NULL,opmang char(1) NOT NULL,opstat char(1) NOT NULL)';
close;
sql.Clear;
sql.Add(ls_sql);
ExecSql;
end;
with query2 do
begin
close;
sql.Clear;
sql.Add('select * from users');
prepare;
open;
while not eof do
begin
ls_sql:='insert into users(opname,operid,oppass,opmang,opstat) ';
ls_sql:=ls_sql+' values('+chr(39)+fieldbyname('opname').AsString+chr(39)+','+fieldbyname('operid').AsString+','+chr(39)+fieldbyname('oppass').AsString+chr(39);
ls_sql:=ls_sql+','+chr(39)+fieldbyname('opmang').AsString+chr(39)+','+chr(39)+fieldbyname('opstat').AsString+chr(39)+')';
query1.Close;
query1.SQL.Clear;
query1.SQL.Add(ls_sql);
query1.ExecSQL;
next;
end;
end;
M_info.Lines.Delete(i);
m_info.Lines.Add('正在备份用户基本信息表...已备份!');
ProgressBar1.Position:=PB_pos;
FlatGauge1.Progress:=PB_pos;
end;
procedure Tbackupdata_form.UserrightBackup();
var
ls_sql:string;
i:integer;
begin
i:=M_info.Lines.Add('正在备份用户权限信息表...');
with query1 do
begin
ls_sql:='CREATE TABLE userright (operid integer NOT NULL,itemno integer NOT NULL,rightid integer NOT NULL)';
close;
sql.Clear;
sql.Add(ls_sql);
ExecSql;
end;
with query2 do
begin
close;
sql.Clear;
sql.Add('select * from userright');
prepare;
open;
while not eof do
begin
ls_sql:='insert into userright(operid,itemno,rightid) ';
ls_sql:=ls_sql+' values('+fieldbyname('operid').AsString+','+fieldbyname('itemno').AsString+','+fieldbyname('rightid').AsString+')';
query1.Close;
query1.SQL.Clear;
query1.SQL.Add(ls_sql);
query1.ExecSQL;
next;
end;
end;
M_info.Lines.Delete(i);
m_info.Lines.Add('正在备份用户权限信息表...已备份!');
ProgressBar1.Position:=PB_pos;
FlatGauge1.Progress:=PB_pos;
end;
procedure Tbackupdata_form.UnitrightBackup();
var
ls_sql:string;
i:integer;
begin
i:=M_info.Lines.Add('正在备份机构权限信息表...');
with query1 do
begin
ls_sql:='CREATE TABLE unitright (operid integer NOT NULL,organid integer NOT NULL)';
close;
sql.Clear;
sql.Add(ls_sql);
ExecSql;
end;
with query2 do
begin
close;
sql.Clear;
sql.Add('select * from unitright');
prepare;
open;
while not eof do
begin
ls_sql:='insert into unitright(operid,organid) ';
ls_sql:=ls_sql+' values('+fieldbyname('operid').AsString+','+fieldbyname('organid').AsString+')';
query1.Close;
query1.SQL.Clear;
query1.SQL.Add(ls_sql);
query1.ExecSQL;
next;
end;
end;
M_info.Lines.Delete(i);
m_info.Lines.Add('正在备份机构权限信息表...已备份!');
ProgressBar1.Position:=PB_pos;
FlatGauge1.Progress:=PB_pos;
end;
}
procedure Tbackupdata_frm.FB_fileselectClick(Sender: TObject);
begin
inherited;
SaveDialog1.FileName:='社保直通车数据备份'+FormatDateTime('yyyymmdd',Date)+'.Zip';
SaveDialog1.Filter:= '压缩文件(*.zip)|*.zip|所有文件(*.*)|*.*';
if SaveDialog1.Execute then
begin
if fileexists(SaveDialog1.FileName) then
begin
if Application.MessageBox('文件已经存在,是否要覆盖?','文件确认',MB_YESNO+MB_DEFBUTTON2+MB_IconQuestion+MB_SystemModal)=IDYES then
begin
deletefile(SaveDialog1.FileName);
FE_filename.Text:=SaveDialog1.FileName;
end else
exit;
end else //导出数据
FE_filename.Text:=SaveDialog1.FileName;
end;
end;
procedure Tbackupdata_frm.FB_closeClick(Sender: TObject);
begin
inherited;
close;
end;
procedure Tbackupdata_frm.FB_backupClick(Sender: TObject);
var
{ls_file,password:string;
xResult : LongInt;
registerTemp:TRegistry;
ls_value,d:string;}
sqlstr,d:widestring;
loop:integer;
begin
inherited;
P_backup.Visible :=true;
if trim(FE_filename.Text)='' then
begin
application.MessageBox('请输入备份文件名!','恩普软件',MB_OK+MB_IconInformation+MB_SystemModal);
FE_filename.SetFocus;
exit;
end;
if fileexists(trim(FE_filename.Text)) then
begin
if Application.MessageBox('文件已经存在,是否要覆盖?','文件确认',MB_YESNO+MB_DEFBUTTON2+MB_IconQuestion+MB_SystemModal)=IDYES then
begin
deletefile(trim(FE_filename.Text));
end else
exit;
end;
try
cursor:=crhourglass;
d:=extractfilepath(application.ExeName) ;
if not directoryexists(d+'exportfile\') then createdir(d+'exportfile');
deleteall(d+'exportfile\');
sqlstr:='select * from sbda_psagacct';
FlatGauge1.Progress :=5;
export_data(DataShare_frm.Query1,sqlstr,'sbda_psagacct','');
sqlstr:='select * from sbda_psrtacct';
FlatGauge1.Progress :=10;
export_data(DataShare_frm.Query1,sqlstr,'sbda_psrtacct','');
sqlstr:='select * from sbdb_cparch';
FlatGauge1.Progress :=15;
export_data(DataShare_frm.Query1,sqlstr,'sbdb_cparch','');
sqlstr:='select * from SBDB_PSARCH';
FlatGauge1.Progress :=20;
export_data(DataShare_frm.Query1,sqlstr,'SBDB_PSARCH','');
sqlstr:='select * from sbdb_rtarch';
FlatGauge1.Progress :=25;
export_data(DataShare_frm.Query1,sqlstr,'sbdb_rtarch','');
sqlstr:='select * from sbdb_rtwage';
FlatGauge1.Progress :=30;
export_data(DataShare_frm.Query1,sqlstr,'sbdb_rtwage','');
sqlstr:='select * from SBDC_CPATTR';
FlatGauge1.Progress :=35;
export_data(DataShare_frm.Query1,sqlstr,'SBDC_CPATTR','');
sqlstr:='select * from SBDC_DEPT';
FlatGauge1.Progress :=40;
export_data(DataShare_frm.Query1,sqlstr,'SBDC_DEPT','');
sqlstr:='select * from SBDC_ECMODE';
export_data(DataShare_frm.Query1,sqlstr,'SBDC_ECMODE','');
{sqlstr:='select * from SBDC_DEPT';
export_data(DataShare_frm.Query1,sqlstr,'SBDC_ECMODE',''); }
sqlstr:='select * from sbdc_pyitem';
export_data(DataShare_frm.Query1,sqlstr,'sbdc_pyitem','');
{sqlstr:='select * from SBDC_SUBJ';
export_data(DataShare_frm.Query1,sqlstr,'SBDC_SUBJ','');}
sqlstr:='select * from SBDC_SUBJ';
export_data(DataShare_frm.Query1,sqlstr,'SBDC_SUBJ','');
{sqlstr:='select * from SBDC_TRADE';
export_data(DataShare_frm.Query1,sqlstr,'SBDC_TRADE','');}
sqlstr:='select * from SBDC_TRADE';
export_data(DataShare_frm.Query1,sqlstr,'SBDC_TRADE','');
sqlstr:='select * from SBDS_INANCONS';
export_data(DataShare_frm.Query1,sqlstr,'SBDS_INANCONS','');
sqlstr:='select * from SBDS_INCONS';
export_data(DataShare_frm.Query1,sqlstr,'SBDS_INCONS','');
⌨️ 快捷键说明
复制代码
Ctrl + C
搜索代码
Ctrl + F
全屏模式
F11
切换主题
Ctrl + Shift + D
显示快捷键
?
增大字号
Ctrl + =
减小字号
Ctrl + -