unit u_sys_print; interface uses Windows, Messages, SysUtils, Classes, Graphics, Controls, Forms, Dialogs, dxExEdtr, ppDB, ppProd, ppClass, ppReport, bsDialogs, bsSkinShellCtrls, ppDsgnDB, ppRelatv, ppDBPipe, DB, ADODB, ppComm, ppEndUsr, BusinessSkinForm, StdCtrls, Mask, bsSkinBoxCtrls, bsdbctrls, bsSkinCtrls, dxTL, dxDBCtrl, dxDBGrid, dxCntner, dxDBTLCl, dxGrClms, DBCtrls, XPMenu, Menus, TXComp, ExtDlgs, ImgList, IdFTP,IdFTPCommon; type Tfrm_sys_print = class(TForm) bsBusinessSkinForm1: TbsBusinessSkinForm; dxDBGrid1: TdxDBGrid; dxDBGrid1Column1: TdxDBGridMaskColumn; bsSkinPanel3: TbsSkinPanel; t_sys_report: TADOQuery; t_sys_report1: TDataSource; db_report: TppDBPipeline; ppDataDictionary1: TppDataDictionary; bsSkinInputDialog1: TbsSkinInputDialog; bsSkinDBEdit1: TbsSkinDBEdit; one_table_1: TppDBPipeline; all_table_3: TppDBPipeline; all_table_1: TppDBPipeline; all_table_2: TppDBPipeline; one_table_2: TppDBPipeline; one_table_3: TppDBPipeline; dxDBGrid1Column2: TdxDBGridCheckColumn; one_table_4: TppDBPipeline; all_table_4: TppDBPipeline; all_table_5: TppDBPipeline; all_table_6: TppDBPipeline; all_table_7: TppDBPipeline; print_head: TppDBPipeline; load_employee: TppDBPipeline; bsSkinPanel1: TbsSkinPanel; Label1: TLabel; DBEdit1: TDBEdit; Label2: TLabel; DBEdit2: TDBEdit; Button5: TButton; PopupMenu1: TPopupMenu; XPMenu1: TXPMenu; N1: TMenuItem; N2: TMenuItem; EXCEL1: TMenuItem; N3: TMenuItem; WORD1: TMenuItem; N4: TMenuItem; PDF1: TMenuItem; N5: TMenuItem; RTF1: TMenuItem; ImageList: TImageList; OpenDialog1: TOpenDialog; rp: TppReport; rd: TppDesigner; t_sys_report_employee: TADOQuery; bsSkinPanel2: TbsSkinPanel; bsSkinButton12: TbsSkinButton; bsSkinPanel4: TbsSkinPanel; bsSkinButton6: TbsSkinButton; bsSkinButton8: TbsSkinButton; bsSkinButton7: TbsSkinButton; bsSkinButton3: TbsSkinButton; bsSkinButton4: TbsSkinButton; bsSkinButton9: TbsSkinButton; bsSkinButton1: TbsSkinButton; bsSkinButton2: TbsSkinButton; bsSkinButton10: TbsSkinButton; bsSkinButton11: TbsSkinButton; bsSkinButton5: TbsSkinButton; t_sys_report_lei: TADOQuery; t_sys_reportfile: TADOQuery; t_sys_reportfile1: TDataSource; ExtraOptions1: TExtraOptions; load_cust: TppDBPipeline; t_sys_cust: TADOQuery; t_sys_cust1: TDataSource; all_table_8: TppDBPipeline; all_table_9: TppDBPipeline; t_sys_reporthead1: TDataSource; t_sys_reporthead: TADOQuery; procedure bsSkinButton8Click(Sender: TObject); procedure bsSkinButton2Click(Sender: TObject); procedure bsSkinButton5Click(Sender: TObject); procedure bsSkinButton3Click(Sender: TObject); procedure bsSkinButton4Click(Sender: TObject); procedure bsSkinButton9Click(Sender: TObject); procedure bsSkinButton1Click(Sender: TObject); procedure bsSkinButton6Click(Sender: TObject); procedure rdCloseQuery(Sender: TObject; var CanClose: Boolean); procedure FormShow(Sender: TObject); procedure Button5Click(Sender: TObject); procedure bsSkinButton7Click(Sender: TObject); procedure N1Click(Sender: TObject); procedure EXCEL1Click(Sender: TObject); procedure WORD1Click(Sender: TObject); procedure PDF1Click(Sender: TObject); procedure RTF1Click(Sender: TObject); procedure bsSkinButton10Click(Sender: TObject); procedure bsSkinButton11Click(Sender: TObject); procedure dxDBGrid1KeyPress(Sender: TObject; var Key: Char); procedure t_sys_reportAfterPost(DataSet: TDataSet); procedure bsSkinButton12Click(Sender: TObject); procedure t_sys_reportAfterOpen(DataSet: TDataSet); procedure t_sys_reportBeforeClose(DataSet: TDataSet); procedure t_sys_reportfileAfterInsert(DataSet: TDataSet); procedure t_sys_reportfileAfterPost(DataSet: TDataSet); private { Private declarations } public { Public declarations } end; var frm_sys_print: Tfrm_sys_print; implementation uses u_main,u_sys_print_view, u_data_share, u_code_send_head, my_sys_function, u_sys_print_down; {$R *.dfm} procedure Tfrm_sys_print.bsSkinButton8Click(Sender: TObject); begin if t_sys_report.isempty then exit; t_sys_reportfile.Close; t_sys_reportfile.SQL.Clear; t_sys_reportfile.SQL.Add('select * from t_sys_report where CH_ID='+inttostr(t_sys_report['CH_ID'])); t_sys_reportfile.Open; if t_sys_reportfile.isempty then begin showmessage('没有打印格式,不能打印输出!'); exit; end; try rp.template.DatabaseSettings.Name:=t_sys_reportfile.fieldbyname('报表名称').AsString; rp.template.LoadFromDatabase; rp.AllowPrintToFile:=false; rp.DeviceType:='Printer'; rp.Print; except showmessage('打印输出失败!'); end; if frm_sys_print.caption='海运出口单证' then begin if not t_sys_report_employee.Locate('CH_ID',t_sys_report.fieldbyname('CH_ID').asinteger,[])then begin t_sys_report_employee.insert; t_sys_report_employee['CH_ID']:=t_sys_report['CH_ID']; t_sys_report_employee['报表属性']:=t_sys_report['报表属性']; t_sys_report_employee['姓名']:=employee; t_sys_report_employee['日期']:=date; t_sys_report_employee.post; end else begin t_sys_report_employee.edit; t_sys_report_employee['日期']:=date; t_sys_report_employee.post; end; end; end; procedure Tfrm_sys_print.bsSkinButton2Click(Sender: TObject); var book1:Tbookmark; str:string; begin try t_sys_report.DisableControls; book1:=t_sys_report.GetBookmark; str:=t_sys_report.fieldbyname('报表名称').asstring; t_sys_report.First; while not t_sys_report.eof do begin if t_sys_report.fieldbyname('报表名称').asstring=str then begin t_sys_report.edit; t_sys_report['是否默认']:=1; t_sys_report.post; end else begin t_sys_report.edit; t_sys_report['是否默认']:=0; t_sys_report.post; end; t_sys_report.next; end; finally t_sys_report.GotoBookmark(book1); t_sys_report.EnableControls; end; end; procedure Tfrm_sys_print.bsSkinButton5Click(Sender: TObject); begin close; end; procedure Tfrm_sys_print.bsSkinButton3Click(Sender: TObject); begin if t_sys_report.IsEmpty then begin t_sys_reportfile.Close; t_sys_reportfile.SQL.Clear; t_sys_reportfile.SQL.Add('select top 0 * from t_sys_report '); t_sys_reportfile.Open; end else begin t_sys_reportfile.Close; t_sys_reportfile.SQL.Clear; t_sys_reportfile.SQL.Add('select * from t_sys_report where CH_ID='+inttostr(t_sys_report['CH_ID'])); t_sys_reportfile.Open; end; if t_sys_reportfile.RecordCount<>0 then rp.template.DatabaseSettings.name :=''; rp.AllowPrintToFile:=true; rd.ShowModal; end; procedure Tfrm_sys_print.bsSkinButton4Click(Sender: TObject); begin if t_sys_report.isempty then exit; t_sys_reportfile.Close; t_sys_reportfile.SQL.Clear; t_sys_reportfile.SQL.Add('select * from t_sys_report where CH_ID='+inttostr(t_sys_report['CH_ID'])); t_sys_reportfile.Open; if t_sys_reportfile.isempty then begin showmessage('没有要设计的格式!'); exit; end; try rp.template.DatabaseSettings.Name:=t_sys_reportfile.fieldbyname('报表名称').AsString; rp.template.LoadFromDatabase; rp.AllowPrintToFile:=true; rd.ShowModal; except showmessage('格式设计失败!'); end; if frm_sys_print.caption='海运出口单证' then begin if not t_sys_report_employee.Locate('CH_ID',t_sys_reportfile.fieldbyname('CH_ID').asinteger,[])then begin t_sys_report_employee.insert; t_sys_report_employee['CH_ID']:=t_sys_reportfile['CH_ID']; t_sys_report_employee['报表属性']:=t_sys_reportfile['报表属性']; t_sys_report_employee['姓名']:=employee; t_sys_report_employee['日期']:=date; t_sys_report_employee.post; end else begin t_sys_report_employee.edit; t_sys_report_employee['日期']:=date; t_sys_report_employee.post; end; end; end; procedure Tfrm_sys_print.bsSkinButton9Click(Sender: TObject); begin if t_sys_report.isempty then begin showmessage('没有要删除的格式!'); exit; end; if application.MessageBox('您确定要删除格式吗?','警告:',MB_OKCANCEL)=IDOK then t_sys_report.delete; end; procedure Tfrm_sys_print.bsSkinButton1Click(Sender: TObject); begin if t_sys_report.isempty then begin showmessage('没有要更改名称的格式!'); exit; end; t_sys_report.edit; t_sys_report['报表名称']:=bsSkinInputDialog1.InputBox('更改名称','新的名称',t_sys_report.fieldbyname('报表名称').asstring); t_sys_report.post; end; procedure Tfrm_sys_print.bsSkinButton6Click(Sender: TObject); begin if t_sys_report.isempty then exit; t_sys_reportfile.Close; t_sys_reportfile.SQL.Clear; t_sys_reportfile.SQL.Add('select * from t_sys_report where CH_ID='+inttostr(t_sys_report['CH_ID'])); t_sys_reportfile.Open; if t_sys_reportfile.isempty then exit; try rp.template.DatabaseSettings.Name:=t_sys_reportfile.fieldbyname('报表名称').AsString; rp.template.LoadFromDatabase; rp.AllowPrintToFile:=false; if not assigned(frm_sys_print_view) then frm_sys_print_view:=tfrm_sys_print_view.Create(self); frm_sys_print_view.ppViewer1.Report:=rp; rp.PrintToDevices; frm_sys_print_view.ShowModal; except showmessage('打印预览失败!'); end; if frm_sys_print.caption='海运出口单证' then begin if not t_sys_report_employee.Locate('CH_ID',t_sys_reportfile.fieldbyname('CH_ID').asinteger,[])then begin t_sys_report_employee.insert; t_sys_report_employee['CH_ID']:=t_sys_reportfile['CH_ID']; t_sys_report_employee['报表属性']:=t_sys_reportfile['报表属性']; t_sys_report_employee['姓名']:=employee; t_sys_report_employee['日期']:=date; t_sys_report_employee.post; end else begin t_sys_report_employee.edit; t_sys_report_employee['日期']:=date; t_sys_report_employee.post; end; end; end; procedure Tfrm_sys_print.rdCloseQuery(Sender: TObject; var CanClose: Boolean); begin if rd.Report.Modified then begin case Application.MessageBox('是否要保存报表?','提示',MB_YESNOCANCEL + MB_ICONINFORMATION) of IDYES: begin rd.Report.Template.SaveToDatabase; CanClose:=True; end; IDNO: CanClose:=True; IDCANCEL: CanClose:=False; end; end; end; procedure Tfrm_sys_print.FormShow(Sender: TObject); begin if not if_open('170') then begin bsSkinButton3.Enabled:=false; bsSkinButton4.Enabled:=false; bsSkinButton9.Enabled:=false; bsSkinButton1.Enabled:=false; bsSkinButton2.Enabled:=false; bsSkinButton10.Enabled:=false; bsSkinButton11.Enabled:=false; end; // frm_data_share.t_sys_report_head.Requery(); // frm_data_share.t_load_employee.Requery(); if not frm_data_share.t_sys_report_head.IsEmpty then begin frm_data_share.t_sys_report_head.edit; frm_data_share.t_sys_report_head['台头TO']:=''; frm_data_share.t_sys_report_head['台头ATTN']:=''; frm_data_share.t_sys_report_head.post; end; if frm_sys_print.caption='海运出口单证' then bsSkinPanel2.Visible:=true; rd.Caption:=frm_sys_print.caption; t_sys_report_lei.close; t_sys_report_lei.Parameters.ParamByName('报表类别').Value:=rd.Caption; t_sys_report_lei.open; // rd.XHD_help:=t_sys_report_lei.fieldbyname('报表说明').asstring; end; procedure Tfrm_sys_print.Button5Click(Sender: TObject); begin try frm_code_send_head:=tfrm_code_send_head.Create (self); code_send_head_num:=2; frm_code_send_head.ShowModal; finally frm_code_send_head.Free; frm_code_send_head:=nil; end; end; procedure Tfrm_sys_print.bsSkinButton7Click(Sender: TObject); var Pnt:Tpoint; begin Pnt:=bsSkinButton7.ClientToScreen(Point(0,bsSkinButton7.Height)); PopupMenu1.Popup(Pnt.x,Pnt.y); if frm_sys_print.caption='海运出口单证' then begin if not t_sys_report_employee.Locate('CH_ID',t_sys_report.fieldbyname('CH_ID').asinteger,[])then begin t_sys_report_employee.insert; t_sys_report_employee['CH_ID']:=t_sys_report['CH_ID']; t_sys_report_employee['报表属性']:=t_sys_report['报表属性']; t_sys_report_employee['姓名']:=employee; t_sys_report_employee['日期']:=date; t_sys_report_employee.post; end else begin t_sys_report_employee.edit; t_sys_report_employee['日期']:=date; t_sys_report_employee.post; end; end; end; procedure Tfrm_sys_print.N1Click(Sender: TObject); begin if t_sys_report.isempty then exit; t_sys_reportfile.Close; t_sys_reportfile.SQL.Clear; t_sys_reportfile.SQL.Add('select * from t_sys_report where CH_ID='+inttostr(t_sys_report['CH_ID'])); t_sys_reportfile.Open; if t_sys_reportfile.isempty then begin showmessage('没有打印格式,不能存为文件!'); exit; end; try rp.template.DatabaseSettings.Name:=t_sys_reportfile.fieldbyname('报表名称').AsString; rp.template.LoadFromDatabase; rp.DeviceType:='GraphicFile'; rp.AllowPrintToFile:=true; rp.Print; except showmessage('存为文件失败!'); end; end; procedure Tfrm_sys_print.EXCEL1Click(Sender: TObject); begin if t_sys_report.isempty then exit; t_sys_reportfile.Close; t_sys_reportfile.SQL.Clear; t_sys_reportfile.SQL.Add('select * from t_sys_report where CH_ID='+inttostr(t_sys_report['CH_ID'])); t_sys_reportfile.Open; if t_sys_reportfile.isempty then begin showmessage('没有打印格式,不能存为文件!'); exit; end; try rp.template.DatabaseSettings.Name:=t_sys_reportfile.fieldbyname('报表名称').AsString; rp.template.LoadFromDatabase; rp.DeviceType:='ExcelFile'; rp.AllowPrintToFile:=true; rp.Print; except showmessage('存为文件失败!'); end; end; procedure Tfrm_sys_print.WORD1Click(Sender: TObject); begin if t_sys_report.isempty then exit; t_sys_reportfile.Close; t_sys_reportfile.SQL.Clear; t_sys_reportfile.SQL.Add('select * from t_sys_report where CH_ID='+inttostr(t_sys_report['CH_ID'])); t_sys_reportfile.Open; if t_sys_reportfile.isempty then begin showmessage('没有打印格式,不能存为文件!'); exit; end; try rp.template.DatabaseSettings.Name:=t_sys_reportfile.fieldbyname('报表名称').AsString; rp.template.LoadFromDatabase; rp.DeviceType:='HTMLFile'; rp.AllowPrintToFile:=true; rp.Print; except showmessage('存为文件失败!'); end; end; procedure Tfrm_sys_print.PDF1Click(Sender: TObject); begin if t_sys_report.isempty then exit; t_sys_reportfile.Close; t_sys_reportfile.SQL.Clear; t_sys_reportfile.SQL.Add('select * from t_sys_report where CH_ID='+inttostr(t_sys_report['CH_ID'])); t_sys_reportfile.Open; if t_sys_reportfile.isempty then begin showmessage('没有打印格式,不能存为文件!'); exit; end; try rp.template.DatabaseSettings.Name:=t_sys_reportfile.fieldbyname('报表名称').AsString; rp.template.LoadFromDatabase; rp.DeviceType:='PDFFile'; rp.AllowPrintToFile:=true; rp.Print; except showmessage('存为文件失败!'); end; end; procedure Tfrm_sys_print.RTF1Click(Sender: TObject); begin if t_sys_report.isempty then exit; t_sys_reportfile.Close; t_sys_reportfile.SQL.Clear; t_sys_reportfile.SQL.Add('select * from t_sys_report where CH_ID='+inttostr(t_sys_report['CH_ID'])); t_sys_reportfile.Open; if t_sys_reportfile.isempty then begin showmessage('没有打印格式,不能存为文件!'); exit; end; try rp.template.DatabaseSettings.Name:=t_sys_reportfile.fieldbyname('报表名称').AsString; rp.template.LoadFromDatabase; rp.DeviceType:='RTFFile'; rp.AllowPrintToFile:=true; rp.Print; except showmessage('存为文件失败!'); end; end; procedure Tfrm_sys_print.bsSkinButton10Click(Sender: TObject); var IdFTP1:TIdFTP; begin // GetNewData('t_sys_report','CH_ID','',t_sys_reportfile); { try IdFTP1:=TIdFTP.Create(application); with idftp1 do begin Username:='dongsheng'; Password:='zouwenkun'; Host:='218.57.11.18'; Connect; end; idftp1.Disconnect; update_jiandu; try if not assigned(frm_sys_print_down) then frm_sys_print_down:=tfrm_sys_print_down.Create (self); frm_sys_print_down.Caption:=frm_sys_print.Caption; frm_sys_print_down.ShowModal; finally frm_sys_print_down.free; frm_sys_print_down:=NIL; end; except showmessage('与下载服务器联机失败!!'); end; idftp1.free; } end; procedure Tfrm_sys_print.bsSkinButton11Click(Sender: TObject); var IdFTP1:TIdFTP; str:widestring; str_file:widestring; begin if not OpenDialog1.Execute then exit; try str:=OpenDialog1.FileName; str_file:=frm_data_share.t_sys_company.fieldbyname('简称').AsString +'@'+employee+'%'+frm_sys_print.caption+'&' +FormatDateTime('yyyy',now) +FormatDateTime('mm',now) +FormatDateTime('dd',now) +FormatDateTime('hh',now) +FormatDateTime('nn',now)+'.'+copy(str,pos('.',str)+1,length(str)-pos('.',str)); IdFTP1:=TIdFTP.Create(application); with idftp1 do begin Username:='dongsheng'; Password:='zouwenkun'; Host:='218.57.11.18'; Connect; end; con_net:=false; idftp1.ChangeDir('/XHD'); idftp1.TransferType:=ftBinary; idftp1.Put(str,str_file); idftp1.Disconnect; update_jiandu; showmessage('申请报表成功!!'); except con_net:=true; showmessage('与服务器连接失败,不能申请报表!!'); end; idftp1.Free; end; procedure Tfrm_sys_print.dxDBGrid1KeyPress(Sender: TObject; var Key: Char); var IdFTP1:TIdFTP; str_rtm,do_file,str_tell:widestring; begin if key<>'~'then exit; if t_sys_report.IsEmpty then exit; do_file:=trim(InputBox('请输入上传新报表名称', '报表名称:', '')); if do_file='' then begin showmessage('请输入上传新报表名称不能为空!!'); exit; end; str_tell:=trim(InputBox('请输入报表说明', '报表说明:', '')); if str_tell='' then begin showmessage('请输入上传新报表说明不能为空!!'); exit; end; //类别^名称#日期~说明&.rtm str_rtm:='$'+frm_sys_print.caption +'^'+do_file +'#'+datetostr(date) +'~'+str_tell +'&.rtm'; if not DirectoryExists(ExtractFilePath(Application.ExeName)+'update') then CreateDir(ExtractFilePath(Application.ExeName)+'update'); try rp.template.DatabaseSettings.Name:=t_sys_report.fieldbyname('报表名称').AsString; rp.template.LoadFromDatabase; rp.AllowPrintToFile:=true; rp.Template.FileName:=ExtractFilePath(Application.ExeName)+'update\'+str_rtm; rp.Template.SaveToFile; except showmessage('生成报表文件失败!!'); exit; end; try IdFTP1:=TIdFTP.Create(application); with idftp1 do begin Username:='dongsheng'; Password:='zouwenkun'; Host:='218.57.11.18'; Connect; end; idftp1.ChangeDir('/XHD/REPORT'); idftp1.TransferType:=ftBinary; idftp1.Put(ExtractFilePath(Application.ExeName)+'update\'+str_rtm,str_rtm); idftp1.Disconnect; except ; end; idftp1.Free; showmessage('上传报表成功!!'); end; procedure Tfrm_sys_print.t_sys_reportAfterPost(DataSet: TDataSet); begin if frm_sys_print.caption='海运出口单证' then begin if not t_sys_report_employee.Locate('CH_ID',t_sys_report.fieldbyname('CH_ID').asinteger,[])then begin t_sys_report_employee.insert; t_sys_report_employee['CH_ID']:=t_sys_report['CH_ID']; t_sys_report_employee['报表属性']:=t_sys_report['报表属性']; t_sys_report_employee['姓名']:=employee; t_sys_report_employee['日期']:=date; t_sys_report_employee.post; end else begin t_sys_report_employee.edit; t_sys_report_employee['日期']:=date; t_sys_report_employee.post; end; end; end; procedure Tfrm_sys_print.bsSkinButton12Click(Sender: TObject); var str:widestring; begin if bsSkinButton12.caption='所有格式'then begin bsSkinButton12.caption:='近期格式'; t_sys_reportfile.close; t_sys_report.close; t_sys_report.sql.clear; t_sys_report.sql.add('select 报表名称,报表属性,是否默认,CH_ID from t_sys_report where 报表属性=:报表属性 order by 报表名称'); t_sys_report.Parameters[0].value:=frm_sys_print.caption; t_sys_report.open; t_sys_reportfile.Open; end else begin if not t_sys_report_employee.IsEmpty then begin t_sys_report_employee.first; while not t_sys_report_employee.eof do begin if t_sys_report_employee.fieldbyname('日期').AsDateTime>=date-30 then begin if str='' then str:=t_sys_report_employee.fieldbyname('CH_ID').asstring else str:=str+','+t_sys_report_employee.fieldbyname('CH_ID').asstring; end; t_sys_report_employee.next; end; str:=' and CH_ID in ('+str+')'; t_sys_reportfile.close; t_sys_report.close; t_sys_report.sql.clear; t_sys_report.sql.add('select 报表名称,报表属性,是否默认,CH_ID from t_sys_report where 报表属性=:报表属性 '+str+' order by 报表名称'); t_sys_report.Parameters[0].value:=frm_sys_print.caption; t_sys_report.open; t_sys_reportfile.Open; end else begin t_sys_reportfile.close; t_sys_report.close; t_sys_report.sql.clear; t_sys_report.sql.add('select 报表名称,报表属性,是否默认,CH_ID from t_sys_report where 报表属性=:报表属性 order by 报表名称'); t_sys_report.Parameters[0].value:=frm_sys_print.caption; t_sys_report.open; t_sys_reportfile.Open; end; bsSkinButton12.caption:='所有格式'; end; end; procedure Tfrm_sys_print.t_sys_reportAfterOpen(DataSet: TDataSet); begin // t_sys_reportfile.Open; end; procedure Tfrm_sys_print.t_sys_reportBeforeClose(DataSet: TDataSet); begin // t_sys_reportfile.Close; end; procedure Tfrm_sys_print.t_sys_reportfileAfterInsert(DataSet: TDataSet); begin t_sys_reportfile['报表属性']:=frm_sys_print.Caption; end; procedure Tfrm_sys_print.t_sys_reportfileAfterPost(DataSet: TDataSet); begin t_sys_report.Refresh; if frm_sys_print.caption='海运出口单证' then begin if not t_sys_report_employee.Locate('CH_ID',t_sys_report.fieldbyname('CH_ID').asinteger,[])then begin t_sys_report_employee.insert; t_sys_report_employee['CH_ID']:=t_sys_report['CH_ID']; t_sys_report_employee['报表属性']:=t_sys_report['报表属性']; t_sys_report_employee['姓名']:=employee; t_sys_report_employee['日期']:=date; t_sys_report_employee.post; end else begin t_sys_report_employee.edit; t_sys_report_employee['日期']:=date; t_sys_report_employee.post; end; end; end; end.