unit U_XXFPHXList; interface uses Windows, Messages, SysUtils, Variants, Classes, Graphics, Controls, Forms, Dialogs, cxGraphics, cxCustomData, cxStyles, cxTL, cxMaskEdit, DB, ADODB, cxInplaceContainer, cxDBTL, cxControls, cxTLData, ComCtrls, ToolWin, StdCtrls, cxFilter, cxData, cxDataStorage, cxEdit, cxDBData, DBClient, cxGridCustomTableView, cxGridTableView, cxGridDBTableView, ExtCtrls, cxSplitter, cxGridLevel, cxClasses, cxGridCustomView, cxGrid, cxGridCustomPopupMenu, cxGridPopupMenu, RM_Dataset, RM_System, RM_Common, RM_Class, RM_GridReport, IdBaseComponent, IdComponent, IdTCPConnection, IdTCPClient, IdFTP,ShellAPI,IniFiles, cxCheckBox, cxCalendar, cxButtonEdit, cxTextEdit; type TfrmXXFPHXList = class(TForm) ToolBar1: TToolBar; TBRafresh: TToolButton; TBClose: TToolButton; ADOQueryTemp: TADOQuery; ADOQueryCmd: TADOQuery; Panel1: TPanel; ToolButton2: TToolButton; ToolButton1: TToolButton; RM1: TRMGridReport; RMDB_Main: TRMDBDataSet; Label3: TLabel; FactoryName: TEdit; cxGrid2: TcxGrid; Tv2: TcxGridDBTableView; cxGridLevel1: TcxGridLevel; Label2: TLabel; Label6: TLabel; begdate: TDateTimePicker; Enddate: TDateTimePicker; cxGridPopupMenu2: TcxGridPopupMenu; DS_HZ: TDataSource; CDS_HZ: TClientDataSet; v2Column2: TcxGridDBColumn; v2Column4: TcxGridDBColumn; v2Column3: TcxGridDBColumn; v2Column5: TcxGridDBColumn; v2Ssel: TcxGridDBColumn; Label4: TLabel; ToNo: TEdit; ADOQueryMain: TADOQuery; CheckBox1: TCheckBox; ToolButton3: TToolButton; v2Column6: TcxGridDBColumn; Label1: TLabel; FromNO: TEdit; v2Column1: TcxGridDBColumn; v2Column7: TcxGridDBColumn; v2Column8: TcxGridDBColumn; v2Column9: TcxGridDBColumn; v2Column10: TcxGridDBColumn; v2Column11: TcxGridDBColumn; v2Column12: TcxGridDBColumn; v2Column13: TcxGridDBColumn; v2Column14: TcxGridDBColumn; v2Column15: TcxGridDBColumn; procedure FormDestroy(Sender: TObject); procedure FormClose(Sender: TObject; var Action: TCloseAction); procedure TBCloseClick(Sender: TObject); procedure FormShow(Sender: TObject); procedure TBRafreshClick(Sender: TObject); procedure ToolButton2Click(Sender: TObject); procedure FactoryNameChange(Sender: TObject); procedure ToolButton1Click(Sender: TObject); procedure FormCreate(Sender: TObject); procedure CheckBox1Click(Sender: TObject); procedure ToolButton3Click(Sender: TObject); private { Private declarations } procedure InitGrid(); public { Public declarations } RKFlag,FCYID:String; FFromNo,FTONO:String; end; var frmXXFPHXList: TfrmXXFPHXList; implementation uses U_DataLink,U_Fun10,U_ZDYHelp; {$R *.dfm} procedure TfrmXXFPHXList.InitGrid(); begin try ADOQueryMain.DisableControls; with ADOQueryMain do begin Close; SQL.Clear; Filtered:=False; sql.Add(' select A.*,B.* from YF_Log A inner join YF_Money_CR_Sub B on A.TONO=B.YFSID '); sql.Add(' where A.Type=''XXFP'' '); if trim(FFromNo)<>'' then sql.Add('and A.FromNo='+quotedstr(FFromNo)); if trim(FTONO)<>'' then sql.Add('and A.TONO='+quotedstr(FTONO)); // sql.Add(' where A.Filldate>='''+formatdateTime('yyyy-MM-dd',begdate.DateTime)+''' '); // sql.Add(' and A.Filldate<'''+formatdateTime('yyyy-MM-dd',enddate.DateTime+1)+''' '); Open; end; SCreateCDS20(ADOQueryMain,CDS_HZ); SInitCDSData20(ADOQueryMain,CDS_HZ); finally ADOQueryMain.EnableControls; end; end; procedure TfrmXXFPHXList.FormDestroy(Sender: TObject); begin frmXXFPHXList:=nil; end; procedure TfrmXXFPHXList.FormClose(Sender: TObject; var Action: TCloseAction); begin Action:=caFree; end; procedure TfrmXXFPHXList.TBCloseClick(Sender: TObject); begin WriteCxGrid(self.Caption,Tv2,'财务管理'); Close; end; procedure TfrmXXFPHXList.FormShow(Sender: TObject); begin ReadCxGrid(self.Caption,Tv2,'财务管理'); Enddate.DateTime:=SGetServerDate(ADOQueryTemp); begdate.DateTime:=Enddate.DateTime-7; InitGrid(); end; procedure TfrmXXFPHXList.TBRafreshClick(Sender: TObject); begin InitGrid(); end; procedure TfrmXXFPHXList.ToolButton2Click(Sender: TObject); var fsj:string; begin if ADOQueryMain.Active then begin SDofilter(ADOQueryMain,SGetFilters(Panel1,1,2)); SCreateCDS20(ADOQueryMain,CDS_HZ); SInitCDSData20(ADOQueryMain,CDS_HZ); end; end; procedure TfrmXXFPHXList.FactoryNameChange(Sender: TObject); begin ToolButton2.Click; end; procedure TfrmXXFPHXList.ToolButton1Click(Sender: TObject); begin if ADOQueryMain.IsEmpty then Exit; TcxGridToExcel(self.Caption,cxgrid2); // SelExportData(Tv2,ADOQueryMain,'应付款付款统计列表'); end; procedure TfrmXXFPHXList.FormCreate(Sender: TObject); begin cxGrid2.Align:=AlClient; end; procedure TfrmXXFPHXList.CheckBox1Click(Sender: TObject); begin IF CDS_HZ.IsEmpty then exit; with CDS_HZ do begin DisableControls; first; while not eof do begin edit; fieldbyname('ssel').Value:=checkbox1.Checked; post; next; end; First; EnableControls; end; end; procedure TfrmXXFPHXList.ToolButton3Click(Sender: TObject); begin if CDS_HZ.IsEmpty then exit; if CDS_HZ.Locate('ssel',true,[])=false then begin Application.MessageBox('没有选择数据!','提示',0); Exit; end; ADOQueryCmd.Connection.BeginTrans; try with CDS_HZ do begin DisableControls; first; while not eof do begin IF Fieldbyname('ssel').AsBoolean then begin with ADOQueryCmd do begin Close; SQL.Clear; SQL.Add('exec P_Do_HxXXFP '); SQL.Add('@PZNo= ' +quotedstr(trim(CDS_HZ.fieldbyname('AutoID').AsString))); SQL.Add(',@CZType= ''删除'''); execsql; end; end; next; end; First; EnableControls; end; ADOQueryCmd.Connection.CommitTrans; application.MessageBox('撤销成功!','提示信息'); TBRafresh.Click; except; ADOQueryCmd.Connection.RollbackTrans; CDS_HZ.EnableControls; application.MessageBox('撤销失败!','提示信息',0); end; end; end.