unit U_DyeClothStkSel; 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, cxLookAndFeels, cxLookAndFeelPainters, dxSkinsCore, dxSkinsDefaultPainters, cxNavigator, dxDateRanges, dxBarBuiltInMenu, U_BaseHelp, System.ImageList, Vcl.ImgList, dxScrollbarAnnotations; type TfrmDyeClothStkSel = class(TfrmBaseHelp) ToolBar1: TToolBar; TBRafresh: TToolButton; TBFind: TToolButton; TBClose: TToolButton; Panel1: TPanel; ADOQueryCmd: TADOQuery; ADOQueryMain: TADOQuery; ADOQueryTemp: TADOQuery; DataSource1: TDataSource; cxGridPopupMenu1: TcxGridPopupMenu; CDS_Main: TClientDataSet; CDS_HZ: TClientDataSet; PopupMenu1: TPopupMenu; N1: TMenuItem; N2: TMenuItem; ToolButton1: TToolButton; Label3: TLabel; C_name: TEdit; Label5: TLabel; OrderNo: TEdit; ToolButton2: TToolButton; cxGrid2: TcxGrid; Tv1: TcxGridDBTableView; Tv1Column2: TcxGridDBColumn; Tv1OrderNo: TcxGridDBColumn; Tv1Column4: TcxGridDBColumn; v2Column1: TcxGridDBColumn; v2Column6: TcxGridDBColumn; v1Column15: TcxGridDBColumn; v1Column13: TcxGridDBColumn; cxGrid2Level1: TcxGridLevel; Tv1Grade: 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 ToolButton1Click(Sender: TObject); procedure Tv1CellDblClick(Sender: TcxCustomGridTableView; ACellViewInfo: TcxGridTableDataCellViewInfo; AButton: TMouseButton; AShift: TShiftState; var AHandled: Boolean); procedure ToolButton2Click(Sender: TObject); procedure Tv1DblClick(Sender: TObject); procedure OrderNoKeyPress(Sender: TObject; var Key: Char); procedure C_nameKeyPress(Sender: TObject; var Key: Char); private procedure InitGrid(); { Private declarations } public FstkName: string; { Public declarations } end; var frmDyeClothStkSel: TfrmDyeClothStkSel; implementation uses U_DataLink, U_RTFun; {$R *.dfm} procedure TfrmDyeClothStkSel.FormDestroy(Sender: TObject); begin inherited; frmDyeClothStkSel := nil; end; procedure TfrmDyeClothStkSel.C_nameKeyPress(Sender: TObject; var Key: Char); begin if Key = #13 then begin TBFind.Click; end; end; procedure TfrmDyeClothStkSel.FormClose(Sender: TObject; var Action: TCloseAction); begin inherited; Action := caFree; end; procedure TfrmDyeClothStkSel.InitGrid(); begin try ADOQueryMain.DisableControls; with ADOQueryMain do begin Filtered := False; Close; sql.Clear; sql.Add(' select A.* '); sql.Add(' from Dye_Cloth_Stock A '); SQL.Add(' where A.StkExists=1 '); Open; end; SCreateCDS(ADOQueryMain, CDS_Main); SInitCDSData(ADOQueryMain, CDS_Main); finally ADOQueryMain.EnableControls; end; end; procedure TfrmDyeClothStkSel.TBRafreshClick(Sender: TObject); begin InitGrid(); end; procedure TfrmDyeClothStkSel.ConNoMChange(Sender: TObject); begin if ADOQueryMain.Active then begin SDofilter(ADOQueryMain, SGetFilters(Panel1, 1, 2)); end; end; procedure TfrmDyeClothStkSel.TBCloseClick(Sender: TObject); begin Close; end; procedure TfrmDyeClothStkSel.FormShow(Sender: TObject); begin inherited; ReadCxGrid(trim(self.Caption), Tv1, '库存列表选择'); InitGrid(); end; procedure TfrmDyeClothStkSel.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 TfrmDyeClothStkSel.MPRTCodeNameChange(Sender: TObject); begin TBFind.Click; end; procedure TfrmDyeClothStkSel.N1Click(Sender: TObject); begin SelOKNo(CDS_Main, True); end; procedure TfrmDyeClothStkSel.N2Click(Sender: TObject); begin SelOKNo(CDS_Main, False); end; procedure TfrmDyeClothStkSel.OrderNoKeyPress(Sender: TObject; var Key: Char); begin if Key = #13 then begin TBFind.Click; end; end; procedure TfrmDyeClothStkSel.SXBatchNOChange(Sender: TObject); begin TBFind.Click; end; procedure TfrmDyeClothStkSel.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 TfrmDyeClothStkSel.ToolButton2Click(Sender: TObject); begin WriteCxGrid(trim(self.Caption), Tv1, '库存列表选择'); end; procedure TfrmDyeClothStkSel.Tv1CellDblClick(Sender: TcxCustomGridTableView; ACellViewInfo: TcxGridTableDataCellViewInfo; AButton: TMouseButton; AShift: TShiftState; var AHandled: Boolean); begin ModalResult := 1; end; procedure TfrmDyeClothStkSel.Tv1DblClick(Sender: TObject); begin CDS_Main.Edit; CDS_Main.FieldByName('ssel').Value := True; CDS_Main.Post; ModalResult := 1; end; end.