unit U_GreyClothStkSel; 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, cxPC, dxSkinWXI, dxScrollbarAnnotations; type TfrmGreyClothStkSel = 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; cxGrid2: TcxGrid; Tv1: TcxGridDBTableView; v1Column17: TcxGridDBColumn; v1Column14: TcxGridDBColumn; v2Column1: TcxGridDBColumn; v1Column8: TcxGridDBColumn; v1Column4: TcxGridDBColumn; v1Column5: TcxGridDBColumn; cxGrid2Level1: TcxGridLevel; Label3: TLabel; C_CodeName: TEdit; v1Column6: TcxGridDBColumn; v1Column7: TcxGridDBColumn; v1Column11: TcxGridDBColumn; Label5: TLabel; OrderNo: TEdit; Tv1Column1: TcxGridDBColumn; ToolButton2: TToolButton; Tv1Column3: TcxGridDBColumn; Tv1Column4: TcxGridDBColumn; Tv1Column5: TcxGridDBColumn; Tv1Column6: TcxGridDBColumn; Tv1Column7: TcxGridDBColumn; Tv1Column8: TcxGridDBColumn; Label1: TLabel; Label6: TLabel; BegDate: TDateTimePicker; EndDate: TDateTimePicker; cxTabControl1: TcxTabControl; Tv1Column2: TcxGridDBColumn; Label2: TLabel; Label4: TLabel; C_Code: TEdit; CarNo: TEdit; Label7: TLabel; khname: TEdit; Tv1Column9: TcxGridDBColumn; Tv1Column10: 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 FromCoNameChange(Sender: TObject); procedure ToolButton1Click(Sender: TObject); procedure Tv1CellDblClick(Sender: TcxCustomGridTableView; ACellViewInfo: TcxGridTableDataCellViewInfo; AButton: TMouseButton; AShift: TShiftState; var AHandled: Boolean); procedure ToolButton2Click(Sender: TObject); procedure FormCreate(Sender: TObject); procedure cxTabControl1Change(Sender: TObject); private procedure InitGrid(); { Private declarations } public FstkName: string; { Public declarations } end; var frmGreyClothStkSel: TfrmGreyClothStkSel; implementation uses U_DataLink, U_RTFun; {$R *.dfm} procedure TfrmGreyClothStkSel.FormDestroy(Sender: TObject); begin inherited; frmGreyClothStkSel := nil; end; procedure TfrmGreyClothStkSel.cxTabControl1Change(Sender: TObject); begin inherited; InitGrid(); end; procedure TfrmGreyClothStkSel.FormClose(Sender: TObject; var Action: TCloseAction); begin inherited; Action := caFree; end; procedure TfrmGreyClothStkSel.FormCreate(Sender: TObject); begin inherited; EndDate.DateTime := SGetServerDate(ADOQueryTemp); BegDate.DateTime := EndDate.DateTime; end; procedure TfrmGreyClothStkSel.InitGrid(); begin try ADOQueryMain.DisableControls; with ADOQueryMain do begin Filtered := False; Close; sql.Clear; SQL.Add('SELECT *,gongyi3=ISNULL(JGTYPE,'''')+ISNULL(GONGYI2,'''') FROM V_PB_CKHZ A WHERE 1=1'); sql.add(' and convert(char(10),A.CKDATE,120)>=''' + Trim(FormatDateTime('yyyy-MM-dd', BegDate.DateTime)) + ''' '); sql.Add(' and convert(char(10),A.CKDATE,120)<''' + Trim(FormatDateTime('yyyy-MM-dd', enddate.DateTime + 1)) + ''''); SQL.Add('AND TOKHNAME=''优科'''); case cxTabControl1.TabIndex of 0: begin sql.Add(' and not exists (select * from BS_Cloth_IO E WHERE E.LZCKORDNO=A.CKORDNO AND E.LZSUBID=A.SUBID '); SQL.Add('AND ISNULL(A.CarNo,'''')=ISNULL(E.C_JITAI,'''') AND ISNULL(A.zhuangkuang,'''')=ISNULL(E.C_zhuangkuang,'''') AND ISNULL(A.JJZT,'''')=ISNULL(E.C_JIAJI,'''') )'); end; 1: begin sql.Add(' and exists (select * from BS_Cloth_IO E WHERE E.LZCKORDNO=A.CKORDNO AND E.LZSUBID=A.SUBID '); SQL.Add('AND ISNULL(A.CarNo,'''')=ISNULL(E.C_JITAI,'''') AND ISNULL(A.zhuangkuang,'''')=ISNULL(E.C_zhuangkuang,'''') AND ISNULL(A.JJZT,'''')=ISNULL(E.C_JIAJI,'''') ) '); end; end; sql.add('order by ckdate desc'); Open; end; SCreateCDS(ADOQueryMain, CDS_Main); SInitCDSData(ADOQueryMain, CDS_Main); finally ADOQueryMain.EnableControls; end; end; procedure TfrmGreyClothStkSel.TBRafreshClick(Sender: TObject); begin InitGrid(); end; procedure TfrmGreyClothStkSel.ConNoMChange(Sender: TObject); begin if ADOQueryMain.Active then begin SDofilter(ADOQueryMain, SGetFilters(Panel1, 1, 2)); end; end; procedure TfrmGreyClothStkSel.TBCloseClick(Sender: TObject); begin Close; end; procedure TfrmGreyClothStkSel.FormShow(Sender: TObject); begin inherited; ReadCxGrid(trim(self.Caption), Tv1, '机物料仓库'); InitGrid(); end; procedure TfrmGreyClothStkSel.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 TfrmGreyClothStkSel.MPRTCodeNameChange(Sender: TObject); begin TBFind.Click; end; procedure TfrmGreyClothStkSel.N1Click(Sender: TObject); begin SelOKNo(CDS_Main, True); end; procedure TfrmGreyClothStkSel.N2Click(Sender: TObject); begin SelOKNo(CDS_Main, False); end; procedure TfrmGreyClothStkSel.SXBatchNOChange(Sender: TObject); begin TBFind.Click; end; procedure TfrmGreyClothStkSel.FromCoNameChange(Sender: TObject); begin TBFind.Click; end; procedure TfrmGreyClothStkSel.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 TfrmGreyClothStkSel.ToolButton2Click(Sender: TObject); begin WriteCxGrid(trim(self.Caption), Tv1, '机物料仓库'); end; procedure TfrmGreyClothStkSel.Tv1CellDblClick(Sender: TcxCustomGridTableView; ACellViewInfo: TcxGridTableDataCellViewInfo; AButton: TMouseButton; AShift: TShiftState; var AHandled: Boolean); begin ModalResult := 1; end; end.