unit U_ClothSCHZListSel; interface uses Windows, Messages, SysUtils, Variants, Classes, Graphics, Controls, Forms, Dialogs, StdCtrls, ExtCtrls, ComCtrls, ToolWin, cxStyles, cxCustomData, cxGraphics, cxFilter, cxData, cxDataStorage, cxEdit, DB, cxDBData, ADODB, cxGridCustomPopupMenu, cxGridPopupMenu, cxGridLevel, cxClasses, cxControls, cxGridCustomView, cxGridCustomTableView, cxGridTableView, cxGridDBTableView, cxGrid, DBClient, cxCalendar, cxButtonEdit, cxSplitter, RM_Common, RM_Class, RM_e_Xls, RM_Dataset, RM_System, RM_GridReport, cxTextEdit, cxCheckBox, cxPC, cxContainer, cxMaskEdit; type TfrmClothSCHZListSel = class(TForm) ToolBar1: TToolBar; TBRafresh: TToolButton; TBFind: TToolButton; TBClose: TToolButton; Panel1: TPanel; BegDate: TDateTimePicker; EndDate: TDateTimePicker; Label1: TLabel; Label2: TLabel; cxGridPopupMenu1: TcxGridPopupMenu; ADOQueryCmd: TADOQuery; ADOQueryMain: TADOQuery; ADOQueryTemp: TADOQuery; DataSource1: TDataSource; Label3: TLabel; ConNo: TEdit; Label5: TLabel; C_CodeName: TEdit; Order_Main: TClientDataSet; CDS_YuanLiao: TClientDataSet; DataSource2: TDataSource; CDS_PBMX: TClientDataSet; DataSourcePBMX: TDataSource; ADOQuery1: TADOQuery; ToolButton2: TToolButton; cxGridPopupMenu2: TcxGridPopupMenu; cxGridPopupMenu3: TcxGridPopupMenu; cxGrid1: TcxGrid; Tv1: TcxGridDBTableView; v1OrderNo: TcxGridDBColumn; v1Column31: TcxGridDBColumn; v1Column5: TcxGridDBColumn; v1Column16: TcxGridDBColumn; v1Column17: TcxGridDBColumn; v1Column19: TcxGridDBColumn; v1Column2: TcxGridDBColumn; v1Column21: TcxGridDBColumn; v1Column20: TcxGridDBColumn; v1Column3: TcxGridDBColumn; v1Column8: TcxGridDBColumn; v1Column9: TcxGridDBColumn; v1PRTMF: TcxGridDBColumn; v1Column32: TcxGridDBColumn; v1PRTKZ: TcxGridDBColumn; v1Column6: TcxGridDBColumn; v1PRTOrderQty: TcxGridDBColumn; v1Column12: TcxGridDBColumn; v1Column14: TcxGridDBColumn; v1Column1: TcxGridDBColumn; v1Column30: TcxGridDBColumn; v1Column18: TcxGridDBColumn; v1Column29: TcxGridDBColumn; v1Column4: TcxGridDBColumn; v1Column33: TcxGridDBColumn; v1Column34: TcxGridDBColumn; cxGrid1Level1: TcxGridLevel; procedure FormClose(Sender: TObject; var Action: TCloseAction); procedure TBCloseClick(Sender: TObject); procedure TBFindClick(Sender: TObject); procedure TBRafreshClick(Sender: TObject); procedure ConNoChange(Sender: TObject); procedure FormShow(Sender: TObject); procedure conPress(Sender: TObject; var Key: Char); procedure FormDestroy(Sender: TObject); procedure ToolButton1Click(Sender: TObject); procedure Tv1MouseDown(Sender: TObject; Button: TMouseButton; Shift: TShiftState; X, Y: Integer); procedure Tv2MouseDown(Sender: TObject; Button: TMouseButton; Shift: TShiftState; X, Y: Integer); procedure ToolButton2Click(Sender: TObject); procedure Tv1CustomDrawCell(Sender: TcxCustomGridTableView; ACanvas: TcxCanvas; AViewInfo: TcxGridTableDataCellViewInfo; var ADone: Boolean); procedure Tv1DblClick(Sender: TObject); private FInt, PFInt: Integer; canshu1: string; procedure InitGrid(); procedure InitForm(); { Private declarations } public RZConNO: string; { Public declarations } end; var frmClothSCHZListSel: TfrmClothSCHZListSel; implementation uses U_DataLink, U_ClothSCInPut, U_RTFun, U_ZDYHelp; {$R *.dfm} procedure TfrmClothSCHZListSel.FormClose(Sender: TObject; var Action: TCloseAction); begin Action := caFree; end; procedure TfrmClothSCHZListSel.TBCloseClick(Sender: TObject); begin Close; WriteCxGrid('坯布生产计划单ZSel', Tv1, '坯布生产管理'); end; procedure TfrmClothSCHZListSel.InitGrid(); begin try ADOQueryMain.DisableControls; with ADOQueryMain do begin Filtered := False; Close; sql.Clear; sql.Add('select A.*,B.*,A.CONNO AS CONNOM '); sql.Add('from Cloth_Main A inner join CLoth_Sub B on A.Mainid=B.MainId where '); //A.YLOK=1 sql.Add(' EndFlag=0 '); if Trim(RZConNO) <> '' then begin sql.Add(' and isnull(A.ConNo,'''')=''' + Trim(RZConNO) + ''''); end else begin sql.Add(' and A.QDTime>=''' + Trim(FormatDateTime('yyyy-MM-dd', BegDate.DateTime)) + ''''); sql.Add(' and A.QDTime<''' + Trim(FormatDateTime('yyyy-MM-dd', EndDate.DateTime + 1)) + ''''); end; sql.Add(' order by QDTime desc '); Open; end; SCreateCDS20(ADOQueryMain, Order_Main); SInitCDSData20(ADOQueryMain, Order_Main); finally ADOQueryMain.EnableControls; end; {if Trim(RZConNO)<>'' then begin InitRZData(); end;} end; procedure TfrmClothSCHZListSel.InitForm(); begin ReadCxGrid('坯布生产计划单ZSel', Tv1, '坯布生产管理'); BegDate.DateTime := SGetServerDate10(ADOQueryTemp) - 45; EndDate.DateTime := SGetServerDate10(ADOQueryTemp); InitGrid(); { if Trim(RZConNO)<>'' then begin ToolButton2.Visible:=False; end; } end; procedure TfrmClothSCHZListSel.TBFindClick(Sender: TObject); begin if ADOQueryMain.Active = False then Exit; SDofilter(ADOQueryMain, SGetFilters(Panel1, 1, 2)); SCreateCDS20(ADOQueryMain, Order_Main); SInitCDSData20(ADOQueryMain, Order_Main); end; procedure TfrmClothSCHZListSel.TBRafreshClick(Sender: TObject); begin InitGrid(); end; procedure TfrmClothSCHZListSel.ConNoChange(Sender: TObject); begin if ADOQueryMain.Active = False then Exit; SDofilter(ADOQueryMain, SGetFilters(Panel1, 1, 2)); SCreateCDS20(ADOQueryMain, Order_Main); SInitCDSData20(ADOQueryMain, Order_Main); end; procedure TfrmClothSCHZListSel.FormShow(Sender: TObject); begin InitForm(); end; procedure TfrmClothSCHZListSel.conPress(Sender: TObject; var Key: Char); begin if Key = #13 then begin if Length(Trim(ConNo.Text)) < 4 then Exit; try ADOQueryMain.DisableControls; with ADOQueryMain do begin Filtered := False; Close; sql.Clear; sql.Add('select * from Cloth_Main A inner join CLoth_Sub B on A.Mainid=B.MainId'); sql.Add(' where A.ConNo like ''' + '%' + Trim(ConNo.Text) + '%' + ''''); sql.Add(' and A.YLOK=1 and EndFlag=0'); Open; end; SCreateCDS20(ADOQueryMain, Order_Main); SInitCDSData20(ADOQueryMain, Order_Main); finally ADOQueryMain.EnableControls; end; end; end; procedure TfrmClothSCHZListSel.FormDestroy(Sender: TObject); begin frmClothSCHZListSel := nil; end; procedure TfrmClothSCHZListSel.ToolButton1Click(Sender: TObject); begin try frmClothSCInPut := TfrmClothSCInPut.Create(Application); with frmClothSCInPut do begin PState := 1; FMainId := Trim(Self.Order_Main.fieldbyname('MainId').AsString); FSubId := Trim(Self.Order_Main.fieldbyname('SubId').AsString); FConNo := Trim(Self.Order_Main.fieldbyname('ConNo').AsString); if ShowModal = 1 then begin end; end; finally frmClothSCInPut.Free; end; end; procedure TfrmClothSCHZListSel.Tv1MouseDown(Sender: TObject; Button: TMouseButton; Shift: TShiftState; X, Y: Integer); begin // InitRZData(); end; procedure TfrmClothSCHZListSel.Tv2MouseDown(Sender: TObject; Button: TMouseButton; Shift: TShiftState; X, Y: Integer); begin with ADOQueryTemp do begin Close; sql.Clear; sql.Add('select MX.* '); sql.Add(',YLQty10=Cast(C_Qty*A.PBQty*0.01*(1+isnull(ZPSH,0)*0.01)*MX.PBQty*0.01*(1+isnull(WLSH,0)*0.01) as decimal(18,1))'); sql.Add(' from Cloth_YCL_PB A'); sql.Add(' inner join Cloth_Sub B on A.SubId=B.SubId'); sql.Add(' inner join Cloth_YCL_PB_MX MX on A.PBID=MX.PBID'); SQL.Add(' where MX.PBID=''' + Trim(CDS_YuanLiao.fieldbyname('PBID').AsString) + ''''); Open; end; SCreateCDS20(ADOQueryTemp, CDS_PBMX); SInitCDSData20(ADOQueryTemp, CDS_PBMX); end; procedure TfrmClothSCHZListSel.ToolButton2Click(Sender: TObject); begin {if (CDS_YuanLiao.Locate('SSel',True,[])=False) and (CDS_PBMX.Locate('SSel',True,[])=False) then begin Application.MessageBox('没有选择数据!','提示',0); Exit; end; } if Order_Main.IsEmpty then Exit; ModalResult := 1; end; procedure TfrmClothSCHZListSel.Tv1CustomDrawCell(Sender: TcxCustomGridTableView; ACanvas: TcxCanvas; AViewInfo: TcxGridTableDataCellViewInfo; var ADone: Boolean); begin { IF AViewInfo.GridRecord.Values[tv1.GetColumnByFieldName('JHDFlag').Index]=True then ACanvas.Brush.Color:=clSkyBlue; } end; procedure TfrmClothSCHZListSel.Tv1DblClick(Sender: TObject); begin if Order_Main.IsEmpty then Exit; ModalResult := 1; end; end.