unit U_YarnStkList; 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, cxNavigator, dxDateRanges, dxBarBuiltInMenu, U_BaseList, dxScrollbarAnnotations, cxContainer, dxSkinsCore, dxSkinsDefaultPainters, cxProgressBar, cxMaskEdit; type TfrmYarnStkList = 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; CDS_HZ: TClientDataSet; PopupMenu1: TPopupMenu; ToolButton1: TToolButton; ToolButton2: TToolButton; cxGrid1: TcxGrid; TV1: TcxGridDBTableView; cxGridDBColumn1: TcxGridDBColumn; Tv1BYIOID: TcxGridDBColumn; Tv1ioTime: TcxGridDBColumn; Tv1IOType: TcxGridDBColumn; Tv1FromCoName: TcxGridDBColumn; Tv1Y_Name: TcxGridDBColumn; Tv1Y_Composition: TcxGridDBColumn; Tv1Y_Color: TcxGridDBColumn; Tv1BatchNo: TcxGridDBColumn; Tv1StkPiece: TcxGridDBColumn; Tv1stkqty: TcxGridDBColumn; Tv1QtyUnit: TcxGridDBColumn; Tv1Note: TcxGridDBColumn; cxGrid1Level1: TcxGridLevel; TV1Y_Code: TcxGridDBColumn; TV1FF: TcxGridDBColumn; ToolButton3: TToolButton; TV1FromPurNo: TcxGridDBColumn; TV1FromConNo: TcxGridDBColumn; TV1SXCBH: TcxGridDBColumn; TV1SXCPM: TcxGridDBColumn; TV1Denier: TcxGridDBColumn; TV1ZS: TcxGridDBColumn; TV1dbWeight: TcxGridDBColumn; TV1dbNumber: TcxGridDBColumn; TV1singleWeight: TcxGridDBColumn; TV1ISCJ: TcxGridDBColumn; TV1FJFlag: TcxGridDBColumn; TV1Filler: TcxGridDBColumn; TV1FillTime: TcxGridDBColumn; TV1Editer: TcxGridDBColumn; TV1EditTime: TcxGridDBColumn; Label3: TLabel; Label4: TLabel; Label8: TLabel; Label12: TLabel; Label10: TLabel; Label6: TLabel; Label5: TLabel; Label1: TLabel; Label2: TLabel; Label7: TLabel; Y_Name: TcxTextEdit; FromCoName: TcxTextEdit; Y_Composition: TcxTextEdit; BatchNo: TcxTextEdit; BYIOID: TcxTextEdit; Y_Color: TcxTextEdit; IOType: TcxComboBox; Y_Code: TcxTextEdit; FromPurNo: TcxTextEdit; FromConNo: TcxTextEdit; 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 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 FormCreate(Sender: TObject); procedure ToolButton2Click(Sender: TObject); procedure FromCoNamePropertiesChange(Sender: TObject); procedure ToolButton3Click(Sender: TObject); procedure BYIOIDKeyPress(Sender: TObject; var Key: Char); procedure IOTypePropertiesChange(Sender: TObject); private canshu1, FStkName, canshu3: string; procedure InitGrid(); { Private declarations } public { Public declarations } end; var frmYarnStkList: TfrmYarnStkList; implementation uses U_DataLink, U_RTFun; {$R *.dfm} procedure TfrmYarnStkList.FormDestroy(Sender: TObject); begin inherited; frmYarnStkList := nil; end; procedure TfrmYarnStkList.FormClose(Sender: TObject; var Action: TCloseAction); begin inherited; Action := caFree; end; procedure TfrmYarnStkList.FormCreate(Sender: TObject); begin inherited; canshu1 := Trim(self.fParameters1); FStkName := Trim(self.fParameters2); canshu3 := Trim(self.fParameters3); end; procedure TfrmYarnStkList.InitGrid(); begin try ADOQueryMain.DisableControls; with ADOQueryMain do begin Filtered := False; Close; sql.Clear; sql.Add(' select A.* '); sql.Add(',Case when ISnull(CJDate,'''') <> '''' '); sql.Add('then Cast(1 as bit) else Cast(0 as bit) end as ISCJ'); sql.Add(',Case when isnull((select count(*) from FJ_File where WBID=A.BYIOID and TFType=''纱线'' ),0)>0 '); sql.Add('then Cast(1 as bit) else Cast(0 as bit) end as FJFlag'); sql.Add(' from BS_Yarn_IO A '); SQL.Add(' where A.IOFlag=''入库'' and isnull(StkQty,0)>0 '); sql.Add(' and isnull(stkName,'''')=''' + Trim(FstkName) + ''''); Open; end; SDofilter(ADOQueryMain, SGetFilters(Panel1, 1, 2)); SCreateCDS(ADOQueryMain, CDS_Main); SInitCDSData(ADOQueryMain, CDS_Main); finally ADOQueryMain.EnableControls; end; end; procedure TfrmYarnStkList.IOTypePropertiesChange(Sender: TObject); begin InitGrid(); end; procedure TfrmYarnStkList.TBRafreshClick(Sender: TObject); begin InitGrid(); end; procedure TfrmYarnStkList.BYIOIDKeyPress(Sender: TObject; var Key: Char); begin if Key = #13 then begin InitGrid(); end; end; procedure TfrmYarnStkList.ConNoMChange(Sender: TObject); begin if ADOQueryMain.Active then begin SDofilter(ADOQueryMain, SGetFilters(Panel1, 1, 2)); end; end; procedure TfrmYarnStkList.TBCloseClick(Sender: TObject); begin Close; end; procedure TfrmYarnStkList.FormShow(Sender: TObject); begin inherited; ReadCxGrid(trim(Self.Caption), Tv1, '染色坯布仓库'); InitGrid(); end; procedure TfrmYarnStkList.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 TfrmYarnStkList.MPRTCodeNameChange(Sender: TObject); begin TBFind.Click; end; procedure TfrmYarnStkList.SXBatchNOChange(Sender: TObject); begin TBFind.Click; end; procedure TfrmYarnStkList.FromCoNameChange(Sender: TObject); begin TBFind.Click; end; procedure TfrmYarnStkList.FromCoNamePropertiesChange(Sender: TObject); begin TBFind.Click; end; procedure TfrmYarnStkList.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 TfrmYarnStkList.ToolButton2Click(Sender: TObject); begin WriteCxGrid(trim(Self.Caption), Tv1, '染色坯布仓库'); end; procedure TfrmYarnStkList.ToolButton3Click(Sender: TObject); begin if ADOQueryMain.IsEmpty then exit; TcxGridToExcel(FstkName + '库存列表', cxGrid1); end; procedure TfrmYarnStkList.Tv1CellDblClick(Sender: TcxCustomGridTableView; ACellViewInfo: TcxGridTableDataCellViewInfo; AButton: TMouseButton; AShift: TShiftState; var AHandled: Boolean); begin ModalResult := 1; end; end.