unit U_CPCKOutList_CX; 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, RM_BarCode; type TfrmCPCKOutList_CX = class(TForm) ToolBar1: TToolBar; TBRafresh: TToolButton; TBFind: TToolButton; TBClose: TToolButton; Panel1: TPanel; ADOQueryCmd: TADOQuery; ADOQueryMain: TADOQuery; ADOQueryTemp: TADOQuery; DataSource1: TDataSource; cxGridPopupMenu1: TcxGridPopupMenu; CDS_Main: TClientDataSet; RMDBMain: TRMDBDataSet; RMXLSExport1: TRMXLSExport; RMDBHZ: TRMDBDataSet; CDS_HZ: TClientDataSet; CDS_PRT: TClientDataSet; PopupMenu1: TPopupMenu; N1: TMenuItem; N2: TMenuItem; cxGrid2: TcxGrid; Tv1: TcxGridDBTableView; v1Column2: TcxGridDBColumn; v1Column4: TcxGridDBColumn; v1Column13: TcxGridDBColumn; v1Column14: TcxGridDBColumn; v2Column1: TcxGridDBColumn; v1Column8: TcxGridDBColumn; v1Column1: TcxGridDBColumn; v1Column10: TcxGridDBColumn; v1Column16: TcxGridDBColumn; v1Column9: TcxGridDBColumn; v2Column6: TcxGridDBColumn; v1Column3: TcxGridDBColumn; v1Column11: TcxGridDBColumn; v1Column5: TcxGridDBColumn; v1Column18: TcxGridDBColumn; v1Column19: TcxGridDBColumn; v1Column17: TcxGridDBColumn; v1Column12: TcxGridDBColumn; cxGrid2Level1: TcxGridLevel; Label3: TLabel; Label4: TLabel; Label5: TLabel; Label8: TLabel; Label12: TLabel; Label7: TLabel; SPName: TEdit; FactoryName: TEdit; SPID: TEdit; SPSpec: TEdit; CRType: TComboBox; QCorderNo: TEdit; Label10: TLabel; CKorderNo: TEdit; Label11: TLabel; FromFactoryName: TEdit; Label13: TLabel; ToFactoryName: TEdit; Label9: TLabel; Label14: TLabel; RCGangNo: TEdit; ConNo: TEdit; v1Column15: TcxGridDBColumn; ADOQueryPrint: TADOQuery; Label15: TLabel; PRTColor: TEdit; Label16: TLabel; PRTColorNo: TEdit; Label17: TLabel; PRTHX: TEdit; RM1: TRMGridReport; RMBarCodeObject1: TRMBarCodeObject; v1ConNo: TcxGridDBColumn; v1KuanNO: TcxGridDBColumn; CDS_Print: TClientDataSet; RM2: TRMGridReport; v1PRTColorEng: TcxGridDBColumn; v1BPType: TcxGridDBColumn; v1filler: TcxGridDBColumn; v1filltime: TcxGridDBColumn; 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 TBFindClick(Sender: TObject); procedure SPNameChange(Sender: TObject); procedure SPIDChange(Sender: TObject); procedure SPIDKeyPress(Sender: TObject; var Key: Char); procedure N1Click(Sender: TObject); procedure N2Click(Sender: TObject); procedure Tv1MouseDown(Sender: TObject; Button: TMouseButton; Shift: TShiftState; X, Y: Integer); procedure PRTColorChange(Sender: TObject); procedure PRTColorNoChange(Sender: TObject); procedure PRTHXChange(Sender: TObject); private canshu1,canshu2,canShu3:string; procedure InitGrid(); { Private declarations } public FConNO:string; Formid:string; { Public declarations } end; var frmCPCKOutList_CX: TfrmCPCKOutList_CX; implementation uses U_DataLink,U_RTFun; {$R *.dfm} procedure TfrmCPCKOutList_CX.FormDestroy(Sender: TObject); begin frmCPCKOutList_CX:=nil; end; procedure TfrmCPCKOutList_CX.FormClose(Sender: TObject; var Action: TCloseAction); begin Action:=caFree; end; procedure TfrmCPCKOutList_CX.FormCreate(Sender: TObject); begin //cxGrid1.Align:=alClient; canshu1:=Trim(DParameters1); canshu2:=Trim(DParameters2); canShu3:=trim(DParameters3); end; procedure TfrmCPCKOutList_CX.InitGrid(); begin try ADOQueryMain.DisableControls; with ADOQueryMain do begin Filtered:=False; Close; sql.Clear; sql.Add(' select isnull(B.PRTColorEng,B.PRTColor) PRTColorEng,B.PRTColor,B.PRTHX,E.ConNO,A.*'); sql.Add(' from CK_SXPB_CR A'); sql.Add(' left join JYOrder_Sub B on A.ORDSubIdCK=B.SubId'); sql.add(' left join JYOrder_Main E on E.Mainid=B.Mainid'); sql.add(' where CRFlag=''出库'' '); SQL.Add(' and isnull(CKName,'''')=''成品'' '); if FormID='1' then begin sql.Add(' and exists (select B.OrderNo from JYOrder_Main B where A.OrdMainidRK=B.Mainid and B.OrderNo='''+trim(FConNO)+''') '); end else begin sql.Add(' and exists (select B.ConNO from JYOrder_Main B where A.OrdMainidRK=B.Mainid and B.Conno='''+trim(FConNO)+''') '); end; SQL.Add(' order by A.IFPrint,A.CRTime desc'); Open; end; SCreateCDS20(ADOQueryMain,CDS_Main); SInitCDSData20(ADOQueryMain,CDS_Main); finally ADOQueryMain.EnableControls; end; end; procedure TfrmCPCKOutList_CX.TBRafreshClick(Sender: TObject); begin InitGrid(); end; procedure TfrmCPCKOutList_CX.ConNoMChange(Sender: TObject); begin if ADOQueryMain.Active then begin SDofilter(ADOQueryMain,SGetFilters(Panel1,1,2)); end; end; procedure TfrmCPCKOutList_CX.TBCloseClick(Sender: TObject); begin WriteCxGrid('成品出库列表1',Tv1,'外加工仓库'); Close; end; procedure TfrmCPCKOutList_CX.FormShow(Sender: TObject); begin ReadCxGrid('成品出库列表1',Tv1,'外加工仓库'); InitGrid(); end; procedure TfrmCPCKOutList_CX.TBFindClick(Sender: TObject); begin if ADOQueryMain.Active then begin SDofilter(ADOQueryMain,SGetFilters(Panel1,1,2)); SCreateCDS20(ADOQueryMain,CDS_Main); SInitCDSData20(ADOQueryMain,CDS_Main); end; end; procedure TfrmCPCKOutList_CX.SPNameChange(Sender: TObject); begin TBFind.Click; end; procedure TfrmCPCKOutList_CX.SPIDChange(Sender: TObject); begin if Length(Trim(SPID.Text))<4 then begin if Trim(SPID.Text)<>'' then Exit; end; TBFind.Click; end; procedure TfrmCPCKOutList_CX.SPIDKeyPress(Sender: TObject; var Key: Char); begin if Key=#13 then begin {if Length(Trim(SPID.Text))<4 then Exit; try ADOQueryMain.DisableControls; with ADOQueryMain do begin Filtered:=False; Close; sql.Clear; sql.Add(' select A.* '); sql.Add(' from CK_SXPB_CR A'); sql.add(' where SPID like :SXID'); Parameters.ParamByName('SXID').Value:='%'+Trim(SXID.Text)+'%'; Open; //ShowMessage(SQL.Text); end; SCreateCDS20(ADOQueryMain,CDS_Main); SInitCDSData20(ADOQueryMain,CDS_Main); finally ADOQueryMain.EnableControls; end; } end; end; procedure TfrmCPCKOutList_CX.N1Click(Sender: TObject); begin if CDS_Main.IsEmpty then Exit; CDS_Main.DisableControls; with CDS_Main do begin First; while not eof do begin if Trim(CDS_Main.fieldbyname('CRType').AsString)='检验出库' then begin Edit; FieldByName('SSel').Value:=True; Post; end; Next; end; end; CDS_Main.EnableControls; end; procedure TfrmCPCKOutList_CX.N2Click(Sender: TObject); begin SelOKNo(CDS_Main,False); end; procedure TfrmCPCKOutList_CX.Tv1MouseDown(Sender: TObject; Button: TMouseButton; Shift: TShiftState; X, Y: Integer); begin if CDS_Main.IsEmpty then Exit; if Trim(CDS_Main.fieldbyname('CRType').AsString)<>'检验出库' then begin Tv1.OptionsSelection.CellSelect:=False; end else begin Tv1.OptionsSelection.CellSelect:=True; end; end; procedure TfrmCPCKOutList_CX.PRTColorChange(Sender: TObject); begin TBFind.Click; end; procedure TfrmCPCKOutList_CX.PRTColorNoChange(Sender: TObject); begin TBFind.Click; end; procedure TfrmCPCKOutList_CX.PRTHXChange(Sender: TObject); begin TBFind.Click; end; end.