unit U_PBJYCLList; interface uses Windows, Messages, SysUtils, Variants, Classes, Graphics, Controls, Forms, Dialogs, StdCtrls, ExtCtrls, ComCtrls, ToolWin, cxStyles, cxCustomData, cxGraphics, cxFilter, cxData, cxDataStorage, cxEdit, DB, cxDBData, ADODB, cxGridCustomPopupMenu, cxGridPopupMenu, cxGridLevel, cxClasses, cxControls, cxGridCustomView, cxGridCustomTableView, cxGridTableView, cxGridDBTableView, cxGrid, DBClient, cxCalendar, cxButtonEdit, cxSplitter, RM_Common, RM_Class, RM_e_Xls, RM_Dataset, RM_System, RM_GridReport, cxTextEdit, cxLookAndFeels, cxLookAndFeelPainters, cxNavigator, dxSkinsCore, dxSkinsDefaultPainters, dxDateRanges, dxBarBuiltInMenu, U_BaseList, cxContainer, dxCore, cxDateUtils, cxMaskEdit, cxDropDownEdit, cxCheckBox, cxPC; type TfrmPBJYCLList = class(TFrmBaseList) ToolBar1: TToolBar; TBRafresh: TToolButton; TBFind: TToolButton; TBClose: TToolButton; Panel1: TPanel; cxGridPopupMenu1: TcxGridPopupMenu; ADOQueryCmd: TADOQuery; ADOQueryMain: TADOQuery; ADOQueryTemp: TADOQuery; DataSource1: TDataSource; Label5: TLabel; C_CodeName: TEdit; TBExport: TToolButton; Order_Main: TClientDataSet; RM1: TRMGridReport; RMXLSExport1: TRMXLSExport; CDS_PRT: TClientDataSet; RMDBPRT: TRMDBDataSet; RMDBPZ: TRMDBDataSet; CDS_PZ: TClientDataSet; CDS_SJ: TClientDataSet; RMDBSJ: TRMDBDataSet; Label10: TLabel; C_Code: TEdit; RMDBDataSet1: TRMDBDataSet; ClientDataSet1: TClientDataSet; CDS_WJG: TClientDataSet; RMDBWJG: TRMDBDataSet; Label6: TLabel; BatchNoHZ: TEdit; cxStyleRepository1: TcxStyleRepository; cxStyle1: TcxStyle; cxStyleRepository2: TcxStyleRepository; cxStyle2: TcxStyle; cxStyle3: TcxStyle; cxStyleRepository3: TcxStyleRepository; cxStyle4: TcxStyle; KHName: TEdit; Label4: TLabel; Label7: TLabel; carno: TEdit; Label9: TLabel; CheckBox1: TCheckBox; BegDate: TcxDateEdit; EndDate: TcxDateEdit; Label1: TLabel; filler: TEdit; cxPageControl1: TcxPageControl; cxTabSheet1: TcxTabSheet; cxTabSheet2: TcxTabSheet; Panel2: TPanel; Label20: TLabel; Panel3: TPanel; Image1: TImage; Button1: TButton; RadioGroup1: TRadioGroup; cxGrid3: TcxGrid; TV2: TcxGridDBTableView; cxGridDBColumn3: TcxGridDBColumn; cxgrdbclmnv1Column14: TcxGridDBColumn; v1Column1: TcxGridDBColumn; cxGridDBColumn4: TcxGridDBColumn; v1Column7: TcxGridDBColumn; v2Column1: TcxGridDBColumn; v1Column15: TcxGridDBColumn; v2Column3: TcxGridDBColumn; v1Column8: TcxGridDBColumn; v1Column9: TcxGridDBColumn; cxGridDBColumn5: TcxGridDBColumn; v1Column4: TcxGridDBColumn; v1Column12: TcxGridDBColumn; v1Column3: TcxGridDBColumn; v2Column5: TcxGridDBColumn; v1Column16: TcxGridDBColumn; v1Column5: TcxGridDBColumn; cxGridDBColumn6: TcxGridDBColumn; cxGrid2Level1: TcxGridLevel; cxGrid1: TcxGrid; Tv1: TcxGridDBTableView; v1Column2: TcxGridDBColumn; v1Column21: TcxGridDBColumn; v1Column6: TcxGridDBColumn; v1PRTOrderQty: TcxGridDBColumn; cxGrid1Level1: TcxGridLevel; CDS_MAIN: TClientDataSet; DataSource2: TDataSource; procedure FormClose(Sender: TObject; var Action: TCloseAction); procedure TBCloseClick(Sender: TObject); procedure TBFindClick(Sender: TObject); procedure TBExportClick(Sender: TObject); procedure TBRafreshClick(Sender: TObject); procedure ConNoChange(Sender: TObject); procedure FormShow(Sender: TObject); procedure FormDestroy(Sender: TObject); procedure Tv1DblClick(Sender: TObject); procedure carnoKeyPress(Sender: TObject; var Key: Char); procedure Tv1CustomDrawCell(Sender: TcxCustomGridTableView; ACanvas: TcxCanvas; AViewInfo: TcxGridTableDataCellViewInfo; var ADone: Boolean); procedure cxPageControl1Change(Sender: TObject); procedure C_CodeKeyPress(Sender: TObject; var Key: Char); private FInt, PFInt: Integer; procedure InitGrid(); procedure InitForm(); function DelData(): Boolean; procedure InitButton(); procedure SetStatus(); { Private declarations } public canshu1, FCheJian: string; { Public declarations } end; var frmPBJYCLList: TfrmPBJYCLList; implementation uses U_DataLink, U_RTFun, U_ZDYHelp, U_ClothCLCXList; //U_ClothSCInPutSC ,U_ClothSCInPut ,U_SCPerson {$R *.dfm} procedure TfrmPBJYCLList.SetStatus(); begin case cxPageControl1.ActivePageIndex of 0: begin ClearOrHideControls(Panel1, '0', True, True); ClearOrHideControls(Panel1, '1', True, False); end; 1: begin ClearOrHideControls(Panel1, '0', false, True); ClearOrHideControls(Panel1, '1', True, True); end; end; end; procedure TfrmPBJYCLList.FormClose(Sender: TObject; var Action: TCloseAction); begin Action := caFree; end; procedure TfrmPBJYCLList.InitButton(); begin end; procedure TfrmPBJYCLList.TBCloseClick(Sender: TObject); begin Close; WriteCxGrid('����ͳ�Ʋ�ѯ', Tv1, '������������'); end; procedure TfrmPBJYCLList.InitGrid(); var WSQL: string; begin WSQL := SGetFilters(Panel1, 1, 2); if Trim(WSQL) <> '' then WSQL := ' and ' + WSQL; try case cxPageControl1.ActivePageIndex of 0: begin with ADOQueryMain do begin Filtered := False; Close; sql.Clear; sql.Add('exec P_Viwe_PBJYLIST @begdate=' + quotedstr(BegDate.Text)); sql.Add(',@enddate=' + quotedstr(endDate.Text)); sql.Add(',@WSql=' + quotedstr(WSQL)); Open; end; SCreateCDS(ADOQueryMain, order_main); SInitCDSData(ADOQueryMain, order_main); end; 1: begin with ADOQueryMain do begin Filtered := False; Close; sql.Clear; SQL.Add('SELECT * FROM V_PB_JYLIST'); sql.Add('where 1=1 ' + (WSQL)); sql.Add(' and FILLTIME>=''' + BegDate.TEXT + ''''); sql.Add(' and FILLTIME<''' + ENDDATE.Text + ''''); Open; end; SCreateCDS(ADOQueryMain, CDS_Main); SInitCDSData(ADOQueryMain, CDS_Main); end; end; finally ADOQueryMain.EnableControls; end; end; procedure TfrmPBJYCLList.InitForm(); begin SETSTATUS(); InitButton(); ReadCxGrid('����ͳ�Ʋ�ѯ', Tv1, '������������'); EndDate.Text := FormatDateTime('yyyy-MM-dd', SGetServerDate(ADOQueryTemp) + 1) + ' 08:00:00'; BegDate.Text := FormatDateTime('yyyy-MM-dd', SGetServerDate(ADOQueryTemp) - 1) + ' 08:00:00'; InitGrid(); end; procedure TfrmPBJYCLList.TBFindClick(Sender: TObject); begin if ADOQueryMain.Active = False then Exit; SDofilter(ADOQueryMain, SGetFilters(Panel1, 1, 2)); SCreateCDS(ADOQueryMain, Order_Main); SInitCDSData(ADOQueryMain, Order_Main); end; function TfrmPBJYCLList.DelData(): Boolean; begin try Result := false; ADOQueryCmd.Connection.BeginTrans; with ADOQueryCmd do begin Close; sql.Clear; sql.Add('delete Cloth_Sub where SubId=''' + Trim(Order_Main.fieldbyname('SubId').AsString) + ''''); ExecSQL; end; with ADOQueryTemp do begin Close; sql.Clear; sql.Add('select * from Cloth_Sub where MainId=''' + Trim(Order_Main.fieldbyname('MainId').AsString) + ''''); Open; end; if ADOQueryTemp.IsEmpty then begin with ADOQueryCmd do begin Close; sql.Clear; sql.Add('delete Cloth_Main where MainId=''' + Trim(Order_Main.fieldbyname('MainId').AsString) + ''''); ExecSQL; end; end; if Trim(Order_Main.fieldbyname('SubId').AsString) = '' then begin with ADOQueryCmd do begin Close; sql.Clear; sql.Add('delete Cloth_Main where MainId=''' + Trim(Order_Main.fieldbyname('MainId').AsString) + ''''); ExecSQL; end; end; with ADOQueryCmd do begin Close; sql.Clear; sql.Add('delete Cloth_PaiZhen where MainId=''' + Trim(Order_Main.fieldbyname('MainId').AsString) + ''''); ExecSQL; end; with ADOQueryCmd do begin Close; sql.Clear; sql.Add('delete Cloth_YCL_PB where MainId=''' + Trim(Order_Main.fieldbyname('MainId').AsString) + ''''); ExecSQL; end; ADOQueryCmd.Connection.CommitTrans; Result := True; except ADOQueryCmd.Connection.RollbackTrans; Result := False; Application.MessageBox('����ɾ���쳣��', '��ʾ', 0); end; end; procedure TfrmPBJYCLList.TBExportClick(Sender: TObject); begin if ADOQueryMain.IsEmpty then exit; case cxPageControl1.ActivePageIndex of 0: begin TcxGridToExcel('������ܱ�', cxGrid1); end; 1: begin TcxGridToExcel('������ϸ��', cxGrid3); end; end; end; procedure TfrmPBJYCLList.TBRafreshClick(Sender: TObject); begin InitGrid(); end; procedure TfrmPBJYCLList.ConNoChange(Sender: TObject); begin if ADOQueryMain.Active = False then Exit; SDofilter(ADOQueryMain, SGetFilters(Panel1, 1, 2)); SCreateCDS(ADOQueryMain, Order_Main); SInitCDSData(ADOQueryMain, Order_Main); end; procedure TfrmPBJYCLList.cxPageControl1Change(Sender: TObject); begin inherited; SetStatus(); InitGrid(); end; procedure TfrmPBJYCLList.C_CodeKeyPress(Sender: TObject; var Key: Char); begin inherited; if Key = #13 then begin InitGrid(); end; end; procedure TfrmPBJYCLList.FormShow(Sender: TObject); begin InitForm(); end; procedure TfrmPBJYCLList.FormDestroy(Sender: TObject); begin frmPBJYCLList := nil; end; procedure TfrmPBJYCLList.Tv1DblClick(Sender: TObject); begin AssignmentControls(Panel1, ORDER_MAIN, '0'); cxPageControl1.ActivePageIndex := 1; // try // frmClothCLCXList := TfrmClothCLCXList.Create(Application); // with frmClothCLCXList do // begin // FMainID := self.Order_Main.fieldbyname('MainID').asstring; // if ShowModal = 1 then // begin // // end; // end; // finally // frmClothCLCXList.Free; // end; end; procedure TfrmPBJYCLList.carnoKeyPress(Sender: TObject; var Key: Char); begin InitGrid(); end; procedure TfrmPBJYCLList.Tv1CustomDrawCell(Sender: TcxCustomGridTableView; ACanvas: TcxCanvas; AViewInfo: TcxGridTableDataCellViewInfo; var ADone: Boolean); var FDDZT: string; begin if AViewInfo.GridRecord.Values[TcxGridDBTableView(Sender).GetColumnByFieldName('DDZT').Index] = null then Exit; FDDZT := AViewInfo.GridRecord.Values[TcxGridDBTableView(Sender).GetColumnByFieldName('DDZT').Index]; // if FDDZT = '�ѿ�ʼ' then // ACanvas.Font.Color :=$FF0000; if FDDZT = '�ѽ���' then ACanvas.Font.Color := $0000FF; end; end.