unit U_DJBCKKCHZList; 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, cxCheckBox, RM_Common, RM_Class, RM_e_Xls, RM_Dataset, RM_System, RM_GridReport, Menus, cxCalendar, cxButtonEdit, cxTextEdit, cxCurrencyEdit, cxLookAndFeels, cxLookAndFeelPainters, cxNavigator, U_BaseList, dxSkinsCore, dxSkinsDefaultPainters, dxDateRanges, dxBarBuiltInMenu; type TfrmDJBCKKCHZList = class(TfrmBaseList) ToolBar1: TToolBar; TBRafresh: TToolButton; TBFind: TToolButton; TBClose: TToolButton; Panel1: TPanel; ADOQueryCmd: TADOQuery; ADOQueryMain: TADOQuery; ADOQueryTemp: TADOQuery; DataSource1: TDataSource; cxGridPopupMenu1: TcxGridPopupMenu; CDS_Main: TClientDataSet; RM1: TRMGridReport; RMDBMain: TRMDBDataSet; RMXLSExport1: TRMXLSExport; RMDBHZ: TRMDBDataSet; CDS_HZ: TClientDataSet; CDS_PRT: TClientDataSet; PopupMenu1: TPopupMenu; N1: TMenuItem; N2: TMenuItem; ToolButton1: TToolButton; cxGrid2: TcxGrid; Tv1: TcxGridDBTableView; v1Column13: TcxGridDBColumn; v2Column1: TcxGridDBColumn; v1Column9: TcxGridDBColumn; v2Column6: TcxGridDBColumn; v1Column3: TcxGridDBColumn; cxGrid2Level1: TcxGridLevel; Label3: TLabel; Label4: TLabel; Label8: TLabel; Label7: TLabel; SPName: TEdit; FactoryName: TEdit; SPSpec: TEdit; OrderNo: TEdit; v1Column19: TcxGridDBColumn; ToolButton2: TToolButton; v1Column20: TcxGridDBColumn; v1Column21: TcxGridDBColumn; Label18: TLabel; CustomerNoName: TEdit; Label1: TLabel; CYEName: TEdit; Label2: TLabel; spcode: TEdit; Tv1Column1: TcxGridDBColumn; Tv1Column2: TcxGridDBColumn; procedure FormDestroy(Sender: TObject); procedure FormClose(Sender: TObject; var Action: TCloseAction); procedure TBRafreshClick(Sender: TObject); procedure ConNoMChange(Sender: TObject); procedure TBCloseClick(Sender: TObject); procedure FormShow(Sender: TObject); procedure TBFindClick(Sender: TObject); procedure MPRTCodeNameChange(Sender: TObject); procedure N1Click(Sender: TObject); procedure N2Click(Sender: TObject); procedure SXBatchNOChange(Sender: TObject); procedure FactoryNameChange(Sender: TObject); procedure ToolButton1Click(Sender: TObject); procedure Tv1CellDblClick(Sender: TcxCustomGridTableView; ACellViewInfo: TcxGridTableDataCellViewInfo; AButton: TMouseButton; AShift: TShiftState; var AHandled: Boolean); procedure ToolButton2Click(Sender: TObject); private procedure InitGrid(); { Private declarations } public { Public declarations } end; var frmDJBCKKCHZList: TfrmDJBCKKCHZList; implementation uses U_DataLink, U_RTFun, U_SXCKInPut; {$R *.dfm} procedure TfrmDJBCKKCHZList.FormDestroy(Sender: TObject); begin inherited; frmDJBCKKCHZList := nil; end; procedure TfrmDJBCKKCHZList.FormClose(Sender: TObject; var Action: TCloseAction); begin inherited; Action := caFree; end; procedure TfrmDJBCKKCHZList.InitGrid(); begin try ADOQueryMain.DisableControls; with ADOQueryMain do begin Filtered := False; Close; sql.Clear; sql.Add(' select OrderNo=(select OrderNo from JYOrder_Main JM where JM.MainId=A.OrdMainIdRK )'); sql.Add(',ZdyNameZ=(select top 1 cohrname from company X where X.coName=A.FactoryName and X.coType=''GYS'' )'); sql.Add(',CYEName=(select CYEName from CP_YDang X where X.CYNo=A.SPCode )'); sql.Add(',CustomerNoName,SPCode,SPName,FactoryName ,KuWei,Note,sum(MXKCPiQty) MXKCPiQty,sum(MXKCQty) MXKCQty,QtyUnit'); sql.Add(',GJ=SUM(case when QtyUnit=''Kg'' then MXKCQty else 0 end)'); sql.Add(',MS=SUM(case when QtyUnit=''M'' then MXKCQty else (case when QtyUnit=''Y'' then MXKCQty*0.9144 else 0 end) end)'); sql.Add('from CK_SXPB_CR A where isnull(CKName,'''')=''待检布'' and A.CRFlag=''入库'' and MXKCQty>0 '); sql.Add('group by OrdMainIdRK,CustomerNoName,SPCode,SPName,FactoryName,QtyUnit ,KuWei,Note'); // ShowMessage(SQL.Text); Open; end; SCreateCDS(ADOQueryMain, CDS_Main); SInitCDSData(ADOQueryMain, CDS_Main); finally ADOQueryMain.EnableControls; end; end; procedure TfrmDJBCKKCHZList.TBRafreshClick(Sender: TObject); begin InitGrid(); end; procedure TfrmDJBCKKCHZList.ConNoMChange(Sender: TObject); begin if ADOQueryMain.Active then begin SDofilter(ADOQueryMain, SGetFilters(Panel1, 1, 2)); end; end; procedure TfrmDJBCKKCHZList.TBCloseClick(Sender: TObject); begin WriteCxGrid('待检布库存列表', Tv1, '待检布仓库'); Close; end; procedure TfrmDJBCKKCHZList.FormShow(Sender: TObject); begin inherited; ReadCxGrid('待检布库存列表', Tv1, '待检布仓库'); //InitGrid(); end; procedure TfrmDJBCKKCHZList.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 TfrmDJBCKKCHZList.MPRTCodeNameChange(Sender: TObject); begin TBFind.Click; end; procedure TfrmDJBCKKCHZList.N1Click(Sender: TObject); begin SelOKNo(CDS_Main, True); end; procedure TfrmDJBCKKCHZList.N2Click(Sender: TObject); begin SelOKNo(CDS_Main, False); end; procedure TfrmDJBCKKCHZList.SXBatchNOChange(Sender: TObject); begin TBFind.Click; end; procedure TfrmDJBCKKCHZList.FactoryNameChange(Sender: TObject); begin TBFind.Click; end; procedure TfrmDJBCKKCHZList.ToolButton1Click(Sender: TObject); begin ModalResult := 1; end; procedure TfrmDJBCKKCHZList.Tv1CellDblClick(Sender: TcxCustomGridTableView; ACellViewInfo: TcxGridTableDataCellViewInfo; AButton: TMouseButton; AShift: TShiftState; var AHandled: Boolean); begin ModalResult := 1; end; procedure TfrmDJBCKKCHZList.ToolButton2Click(Sender: TObject); begin if CDS_Main.IsEmpty then Exit; TcxGridToExcel('待检布库存', cxGrid2); end; end.