unit U_TatOutputList; interface uses Windows, Messages, SysUtils, Variants, Classes, Graphics, Controls, Forms, Dialogs, cxStyles, cxCustomData, cxGraphics, cxFilter, cxData, cxDataStorage, cxEdit, DB, cxDBData, cxGridCustomTableView, cxGridTableView, cxGridBandedTableView, cxGridDBBandedTableView, cxGridLevel, cxClasses, cxControls, cxGridCustomView, cxGridDBTableView, cxGrid, StdCtrls, ComCtrls, ExtCtrls, ToolWin, cxGridCustomPopupMenu, cxGridPopupMenu, ADODB, DBClient, cxDropDownEdit, MovePanel, cxButtonEdit, cxCalendar, RM_System, RM_Common, RM_Class, RM_GridReport, cxLookAndFeels, cxLookAndFeelPainters, cxNavigator, dxSkinsCore, dxSkinsDefaultPainters, dxDateRanges, dxBarBuiltInMenu, U_BaseList, cxCheckBox, Vcl.Menus; type TfrmTatOutputList = class(TfrmBaseList) ToolBar1: TToolBar; TBRafresh: TToolButton; TBFind: TToolButton; TBExport: TToolButton; TBPrint: TToolButton; TBClose: TToolButton; Panel1: TPanel; ADOQueryCmd: TADOQuery; ADOQueryMain: TADOQuery; ADOQueryTemp: TADOQuery; DataSource1: TDataSource; cxGridPopupMenu1: TcxGridPopupMenu; Label3: TLabel; pcid: TEdit; Label1: TLabel; Label2: TLabel; BegDate: TDateTimePicker; EndDate: TDateTimePicker; CDS_Main: TClientDataSet; Tv1: TcxGridDBTableView; cxGrid2Level1: TcxGridLevel; cxGrid2: TcxGrid; MovePanel2: TMovePanel; RMGridReport1: TRMGridReport; customerNoName: TEdit; Label13: TLabel; ywy: TEdit; Label17: TLabel; Tv1Column5: TcxGridDBColumn; Tv1Column6: TcxGridDBColumn; Tv1Column8: TcxGridDBColumn; Tv1Column10: TcxGridDBColumn; Tv1Column11: TcxGridDBColumn; Tv1Column12: TcxGridDBColumn; lbHx: TEdit; Label7: TLabel; TBdel: TToolButton; Tv1Column15: TcxGridDBColumn; begtime: TDateTimePicker; endTime: TDateTimePicker; ToolButton1: TToolButton; Tv1Column14: TcxGridDBColumn; Tv1Column1: TcxGridDBColumn; Tv1Column2: TcxGridDBColumn; Tv1Column3: TcxGridDBColumn; Tv1Column4: TcxGridDBColumn; Tv1Column7: TcxGridDBColumn; Tv1Column9: TcxGridDBColumn; Tv1Column13: TcxGridDBColumn; Tv1Column16: TcxGridDBColumn; Label4: TLabel; GlideName: TEdit; Tv1Column17: TcxGridDBColumn; ToolButton2: TToolButton; PopupMenu1: TPopupMenu; N1: TMenuItem; N2: TMenuItem; procedure FormDestroy(Sender: TObject); procedure FormClose(Sender: TObject; var Action: TCloseAction); procedure FormCreate(Sender: TObject); procedure TBRafreshClick(Sender: TObject); procedure ConNoMChange(Sender: TObject); procedure TBCloseClick(Sender: TObject); procedure FormShow(Sender: TObject); procedure TBExportClick(Sender: TObject); procedure TBFindClick(Sender: TObject); procedure pcidChange(Sender: TObject); procedure PRTColorChange(Sender: TObject); procedure TBdelClick(Sender: TObject); procedure ToolButton1Click(Sender: TObject); procedure ToolButton2Click(Sender: TObject); procedure N1Click(Sender: TObject); procedure N2Click(Sender: TObject); private FLeft, FTop: Integer; procedure InitGrid(); { Private declarations } public fsyrName, canshu1: string; { Public declarations } end; var frmTatOutputList: TfrmTatOutputList; implementation uses U_DataLink, U_RTFun, U_ZDYHelp, U_OutPutHelp; {$R *.dfm} procedure TfrmTatOutputList.FormDestroy(Sender: TObject); begin inherited; frmTatOutputList := nil; end; procedure TfrmTatOutputList.FormClose(Sender: TObject; var Action: TCloseAction); begin inherited; Action := caFree; end; procedure TfrmTatOutputList.FormCreate(Sender: TObject); begin inherited; EndDate.DateTime := SGetServerDateTime(ADOQueryTemp); BegDate.DateTime := EndDate.DateTime - 30; fsyrName := trim(DdataBase); canshu1 := trim(DParameters1); end; procedure TfrmTatOutputList.InitGrid(); var Msql, mbegdate, menddate: string; begin Msql := ''; if SGetFilters(Panel1, 1, 2) <> '' then Msql := Msql + ' and ' + SGetFilters(Panel1, 1, 2); mbegdate := FormatDateTime('yyyy-MM-dd', begdate.Date) + ' ' + FormatDateTime('HH:nn', begTime.Time); menddate := FormatDateTime('yyyy-MM-dd', enddate.Date) + ' ' + FormatDateTime('HH:nn', endTime.Time); try ADOQueryMain.DisableControls; with ADOQueryMain do begin Close; sql.Clear; Filtered := False; sql.Add('select A.* '); sql.Add(',B.WB_Spec,B.WB_YarnQty,B.WB_YarnName,B.WB_ClothName '); sql.Add(',JGSJ=DATEDIFF(MI, A.FillTime, A.EndTime) '); sql.Add(' from Tat_Plan_OutPut A left join Tat_WB_Card B on A.Pcid=B.WBCID '); sql.add('where A.GOTime>=''' + trim(mbegdate) + ''' '); sql.Add('and A.GOTime<''' + trim(menddate) + ''' '); sql.Add(Msql); sql.Add('order by GOTime,pcid'); // showmessage(sql.Text); Open; end; SCreateCDS(ADOQueryMain, CDS_Main); SInitCDSData(ADOQueryMain, CDS_Main); finally ADOQueryMain.EnableControls; end; TBFind.Click; end; procedure TfrmTatOutputList.N1Click(Sender: TObject); begin SelOKNo(CDS_Main, true); end; procedure TfrmTatOutputList.N2Click(Sender: TObject); begin SelOKNo(CDS_Main, False); end; procedure TfrmTatOutputList.TBRafreshClick(Sender: TObject); begin MovePanel2.Visible := True; MovePanel2.Refresh; InitGrid(); MovePanel2.Visible := False; end; procedure TfrmTatOutputList.ToolButton1Click(Sender: TObject); begin WriteCxGrid(self.Caption + tv1.Name, Tv1, '成品仓库'); end; procedure TfrmTatOutputList.ToolButton2Click(Sender: TObject); var MGOIDS: string; begin if CDS_Main.IsEmpty then exit; if not CDS_Main.Locate('SSel', True, []) then begin application.MessageBox('请选择数据', '提示'); Exit; end; with CDS_Main do begin DisableControls; while CDS_Main.Locate('SSel', True, []) do begin MGOIDS := MGOIDS + Trim(CDS_Main.fieldbyname('GOID').AsString) + ','; CDS_Main.Delete; end; EnableControls; end; try frmOutPutHelp := TfrmOutPutHelp.Create(Application); with frmOutPutHelp do begin FGOIDS := MGOIDS; if ShowModal = 1 then begin InitGrid(); end; end; finally frmOutPutHelp.Free; end; end; procedure TfrmTatOutputList.ConNoMChange(Sender: TObject); begin if ADOQueryMain.Active then begin SDofilter(ADOQueryMain, SGetFilters(Panel1, 1, 2)); end; end; procedure TfrmTatOutputList.TBCloseClick(Sender: TObject); begin Close; end; procedure TfrmTatOutputList.FormShow(Sender: TObject); begin inherited; ReadCxGrid(self.Caption + tv1.Name, Tv1, '成品仓库'); canshu1 := self.fParameters1; initgrid(); end; procedure TfrmTatOutputList.TBExportClick(Sender: TObject); begin if ADOQueryMain.IsEmpty then exit; // SelExportData(tv1,ADOQueryMain,self.Caption); TcxGridToExcel(self.Caption, cxGrid2); end; procedure TfrmTatOutputList.TBFindClick(Sender: TObject); begin if ADOQueryMain.Active then begin SDofilter(ADOQueryMain, SGetFilters(Panel1, 1, 2)); SCreateCDS(ADOQueryMain, CDS_Main); SInitCDSData(ADOQueryMain, CDS_Main); end; end; procedure TfrmTatOutputList.pcidChange(Sender: TObject); begin TBFind.Click; end; procedure TfrmTatOutputList.PRTColorChange(Sender: TObject); begin TBFind.Click; end; procedure TfrmTatOutputList.TBdelClick(Sender: TObject); begin if CDS_Main.IsEmpty then Exit; if Application.MessageBox('确定要删除数据吗?', '提示', 32 + 4) <> IDYES then Exit; try with ADOQueryCmd do begin Close; sql.Clear; sql.Add('delete Tat_Plan_OutPut where GOID=''' + Trim(CDS_Main.fieldbyname('GOID').AsString) + ''''); ExecSQL; end; ////////////////// 更新进度 ////////////////// with ADOQueryCmd do begin Close; sql.Clear; sql.Add('insert into Nap_Need_Up(UType,UDataId) values(''机台刷卡'',' + quotedstr(Trim(CDS_Main.fieldbyname('GOID').AsString)) + ') '); execsql; end; ////////////////// 更新进度 ////////////////// CDS_Main.Delete; except application.MessageBox('删除失败!', '提示信息', 0); end; end; end.