unit U_DyePCList; 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, dxScrollbarAnnotations; type TfrmDyePCList = 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; Label5: TLabel; orderNo: TEdit; MovePanel2: TMovePanel; Label10: TLabel; RMGridReport1: TRMGridReport; Label16: TLabel; customerNoName: TEdit; Label13: TLabel; ywy: TEdit; Label17: TLabel; C_Color: TEdit; Label4: TLabel; C_ColorNo: TEdit; Label6: TLabel; lbHx: TEdit; Label7: TLabel; GlideName: TComboBox; StaffName: TEdit; Label9: TLabel; begtime: TDateTimePicker; endTime: TDateTimePicker; ToolButton1: TToolButton; dbGrid1: TcxGrid; tv1: TcxGridDBTableView; tv1CraftIdx: TcxGridDBColumn; tv1mcName: TcxGridDBColumn; tv1runStatus: TcxGridDBColumn; tv1lastMinNum: TcxGridDBColumn; tv1curDoInfo: TcxGridDBColumn; tv1curInTime: TcxGridDBColumn; tv1runTime: TcxGridDBColumn; tv1Column1: TcxGridDBColumn; tv1wait1: TcxGridDBColumn; tv1wait2: TcxGridDBColumn; tv1wait3: TcxGridDBColumn; tv1wait4: TcxGridDBColumn; tv1wait5: TcxGridDBColumn; tv1wait6: TcxGridDBColumn; tv1finish1: TcxGridDBColumn; tv1finish2: TcxGridDBColumn; tv1finish3: TcxGridDBColumn; tv1GC_BatchNo: TcxGridDBColumn; tv1finish4: TcxGridDBColumn; tv1finish5: TcxGridDBColumn; tv1finish6: TcxGridDBColumn; tv1CurGlideName: TcxGridDBColumn; tv1Note: TcxGridDBColumn; dbGrid1Level1: TcxGridLevel; 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); private FLeft, FTop: Integer; procedure InitGrid(); { Private declarations } public fsyrName, canshu1: string; { Public declarations } end; var frmDyePCList: TfrmDyePCList; implementation uses U_DataLink, U_RTFun, U_ZDYHelp; {$R *.dfm} procedure TfrmDyePCList.FormDestroy(Sender: TObject); begin inherited; frmDyePCList := nil; end; procedure TfrmDyePCList.FormClose(Sender: TObject; var Action: TCloseAction); begin inherited; Action := caFree; end; procedure TfrmDyePCList.FormCreate(Sender: TObject); begin inherited; EndDate.DateTime := SGetServerDateTime(ADOQueryTemp); BegDate.DateTime := EndDate.DateTime; fsyrName := trim(DdataBase); canshu1 := trim(DParameters1); SInitComBoxBySql(ADOQueryTemp, GlideName, false, 'select PSName as Name from Dye_Process'); end; procedure TfrmDyePCList.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 GOID,A.GlideName,Qty,rollnum,groupName,B.*,a.filler as filler2,a.filltime as filltime2,gotime,QtyUnit,StaffName from Dye_Plan_Glide_OutPut A '); sql.Add('select * from V_Dye_Plan_Glide_OutPut A'); sql.Add('inner join Dye_Plan_Card B on A.PCID=B.PCID '); sql.add('where A.GOTime>=''' + trim(mbegdate) + ''' '); sql.Add('and A.GOTime<''' + trim(menddate) + ''' '); sql.Add(Msql); // showmessage(sql.Text); Open; end; SCreateCDS(ADOQueryMain, CDS_Main); SInitCDSData(ADOQueryMain, CDS_Main); finally ADOQueryMain.EnableControls; end; TBFind.Click; end; procedure TfrmDyePCList.TBRafreshClick(Sender: TObject); begin MovePanel2.Visible := True; MovePanel2.Refresh; InitGrid(); MovePanel2.Visible := False; end; procedure TfrmDyePCList.ToolButton1Click(Sender: TObject); begin WriteCxGrid(self.Caption + tv1.Name, Tv1, '成品仓库'); end; procedure TfrmDyePCList.ConNoMChange(Sender: TObject); begin if ADOQueryMain.Active then begin SDofilter(ADOQueryMain, SGetFilters(Panel1, 1, 2)); end; end; procedure TfrmDyePCList.TBCloseClick(Sender: TObject); begin Close; end; procedure TfrmDyePCList.FormShow(Sender: TObject); begin inherited; ReadCxGrid(self.Caption + tv1.Name, Tv1, '成品仓库'); canshu1 := self.fParameters1; initgrid(); end; procedure TfrmDyePCList.TBExportClick(Sender: TObject); begin if ADOQueryMain.IsEmpty then exit; // SelExportData(tv1,ADOQueryMain,self.Caption); TcxGridToExcel(self.Caption, DBGrid1); end; procedure TfrmDyePCList.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 TfrmDyePCList.pcidChange(Sender: TObject); begin TBFind.Click; end; procedure TfrmDyePCList.PRTColorChange(Sender: TObject); begin TBFind.Click; end; procedure TfrmDyePCList.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('insert into Dye_Need_Up(UType,UDataId) values(''机台刷卡'',' + quotedstr(Trim(CDS_Main.fieldbyname('GOID').AsString)) + ') '); sql.Add('delete Dye_Plan_Glide_OutPut where GOID=''' + Trim(CDS_Main.fieldbyname('GOID').AsString) + ''''); ExecSQL; end; ////////////////// 更新进度 ////////////////// with ADOQueryCmd do begin Close; sql.Clear; sql.Add('exec P_Dye_Card_upCL @PCID=' + QuotedStr(CDS_Main.fieldbyname('pcid').AsString)); execsql; end; ////////////////// 更新进度 ////////////////// CDS_Main.Delete; except application.MessageBox('删除失败!', '提示信息', 0); end; end; end.