unit U_ShaKCSelList; 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; type TfrmShaKCSelList = 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; 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; v1Column6: TcxGridDBColumn; v1Column2: TcxGridDBColumn; v1Column4: TcxGridDBColumn; v1Column15: TcxGridDBColumn; v1Column13: TcxGridDBColumn; v1Column14: TcxGridDBColumn; v2Column1: TcxGridDBColumn; v1Column8: TcxGridDBColumn; v1Column7: TcxGridDBColumn; v1Column11: TcxGridDBColumn; v1Column9: TcxGridDBColumn; v2Column6: TcxGridDBColumn; v1Column3: TcxGridDBColumn; v1Column5: TcxGridDBColumn; v1Column12: TcxGridDBColumn; cxGrid2Level1: TcxGridLevel; Label3: TLabel; Label4: TLabel; Label5: TLabel; Label8: TLabel; Label12: TLabel; Label6: TLabel; Label7: TLabel; Label9: TLabel; SPName: TEdit; FactoryName: TEdit; SPID: TEdit; SPSpec: TEdit; CRType: TComboBox; SPCF: TEdit; OrderNo: TEdit; SSType: TComboBox; Label1: TLabel; ToFactoryName: TEdit; v1Column16: TcxGridDBColumn; v1Column17: TcxGridDBColumn; v1Column18: TcxGridDBColumn; Label14: TLabel; SPCode: TEdit; v1Column1: TcxGridDBColumn; v1Column10: TcxGridDBColumn; Label11: TLabel; CGConNo: TEdit; Label2: TLabel; BatchNo: TEdit; v1Column19: TcxGridDBColumn; Label10: TLabel; SPColor: TEdit; 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); private procedure InitGrid(); { Private declarations } public { Public declarations } end; var frmShaKCSelList: TfrmShaKCSelList; implementation uses U_DataLink,U_RTFun,U_SXCKInPut; {$R *.dfm} procedure TfrmShaKCSelList.FormDestroy(Sender: TObject); begin frmShaKCSelList:=nil; end; procedure TfrmShaKCSelList.FormClose(Sender: TObject; var Action: TCloseAction); begin Action:=caFree; end; procedure TfrmShaKCSelList.InitGrid(); begin try ADOQueryMain.DisableControls; with ADOQueryMain do begin Filtered:=False; Close; sql.Clear; sql.Add(' select A.* '); sql.Add(' ,OrderNo=(select OrderNo from JYOrder_Main JM where JM.MainId=A.OrdMainIdRK )'); sql.Add(',CGconNo=(select conNo from ContractSX_Main JM where JM.MainId=A.CGMainID)'); sql.Add(' from CK_SXPB_CR A where isnull(CKName,'''')=''纱线'' '); SQL.Add(' and A.CRFlag=''入库'' and MXKCQty>0'); Open; //ShowMessage(SQL.Text); end; SCreateCDS(ADOQueryMain,CDS_Main); SInitCDSData(ADOQueryMain,CDS_Main); finally ADOQueryMain.EnableControls; end; end; procedure TfrmShaKCSelList.TBRafreshClick(Sender: TObject); begin InitGrid(); end; procedure TfrmShaKCSelList.ConNoMChange(Sender: TObject); begin if ADOQueryMain.Active then begin SDofilter(ADOQueryMain,SGetFilters(Panel1,1,2)); end; end; procedure TfrmShaKCSelList.TBCloseClick(Sender: TObject); begin WriteCxGrid('纱线库存选择列表1',Tv1,'纱线仓库'); Close; end; procedure TfrmShaKCSelList.FormShow(Sender: TObject); begin ReadCxGrid('纱线库存选择列表1',Tv1,'纱线仓库'); //InitGrid(); end; procedure TfrmShaKCSelList.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 TfrmShaKCSelList.MPRTCodeNameChange(Sender: TObject); begin TBFind.Click; end; procedure TfrmShaKCSelList.N1Click(Sender: TObject); begin SelOKNo(CDS_Main,True); end; procedure TfrmShaKCSelList.N2Click(Sender: TObject); begin SelOKNo(CDS_Main,False); end; procedure TfrmShaKCSelList.SXBatchNOChange(Sender: TObject); begin TBFind.Click; end; procedure TfrmShaKCSelList.FactoryNameChange(Sender: TObject); begin TBFind.Click; end; procedure TfrmShaKCSelList.ToolButton1Click(Sender: TObject); begin if CDS_Main.IsEmpty then Exit; if CDS_Main.Locate('SSel',True,[])=False then begin Application.MessageBox('没有选择数据!','提示',0); Exit; end; ModalResult:=1; end; procedure TfrmShaKCSelList.Tv1CellDblClick(Sender: TcxCustomGridTableView; ACellViewInfo: TcxGridTableDataCellViewInfo; AButton: TMouseButton; AShift: TShiftState; var AHandled: Boolean); begin ModalResult:=1; end; end.