unit U_JGSXKNewList_CLGLCX; 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, cxPC, cxLookAndFeels, cxLookAndFeelPainters, cxNavigator; type TfrmJGSXNewList_CLGLCX = class(TForm) ToolBar1: TToolBar; TBRafresh: TToolButton; TBFind: TToolButton; TBExport: TToolButton; TBClose: TToolButton; Panel1: TPanel; ADOQueryCmd: TADOQuery; ADOQueryMain: TADOQuery; ADOQueryTemp: TADOQuery; DataSource1: TDataSource; cxGridPopupMenu1: TcxGridPopupMenu; Label1: TLabel; Label2: TLabel; BegDate: TDateTimePicker; EndDate: TDateTimePicker; CDS_Main: TClientDataSet; RM1: TRMGridReport; RMDBMain: TRMDBDataSet; RMXLSExport1: TRMXLSExport; RMDBHZ: TRMDBDataSet; CDS_HZ: TClientDataSet; CDS_PRT: TClientDataSet; PopupMenu1: TPopupMenu; N1: TMenuItem; N2: TMenuItem; Label4: TLabel; OrderNo: TEdit; Label6: TLabel; CustomerNoName: TEdit; Label3: TLabel; BNo: TEdit; cxGrid2: TcxGrid; Tv1: TcxGridDBTableView; v1CRTime: TcxGridDBColumn; V1orderNo: TcxGridDBColumn; v1CustomerNoName: TcxGridDBColumn; v1YLName: TcxGridDBColumn; v1GLQty: TcxGridDBColumn; v1CLQty: TcxGridDBColumn; cxGrid2Level1: TcxGridLevel; v1ZLCQty: TcxGridDBColumn; Label5: TLabel; TeXing: TEdit; v1TeXing: TcxGridDBColumn; v1SGBuWei: TcxGridDBColumn; v1GCName: TcxGridDBColumn; Label7: TLabel; GCName: TEdit; Label8: TLabel; SGBuWei: TEdit; v1YJFLQty: TcxGridDBColumn; v1CPFLQty: TcxGridDBColumn; v1SGFangshi: TcxGridDBColumn; Label9: TLabel; SGFangshi: TEdit; v1CRType: TcxGridDBColumn; RadioGroup1: TRadioGroup; v1BTFLQty: TcxGridDBColumn; procedure FormDestroy(Sender: TObject); procedure FormClose(Sender: TObject; var Action: TCloseAction); procedure FormCreate(Sender: TObject); procedure TBRafreshClick(Sender: TObject); procedure ConNoMChange(Sender: TObject); procedure TBCloseClick(Sender: TObject); procedure FormShow(Sender: TObject); procedure TBExportClick(Sender: TObject); procedure TBFindClick(Sender: TObject); procedure N1Click(Sender: TObject); procedure N2Click(Sender: TObject); procedure SPIDChange(Sender: TObject); procedure SPSpecChange(Sender: TObject); procedure OrderNoChange(Sender: TObject); procedure RadioGroup1Click(Sender: TObject); private canshu1,canshu2,canshu3:string; procedure InitGrid(); procedure setstatus(); { Private declarations } public { Public declarations } end; var frmJGSXNewList_CLGLCX: TfrmJGSXNewList_CLGLCX; implementation uses U_DataLink,U_RTFun,U_Fun,U_SXCKInPut, U_JGSXCKInPut, U_JGSXCKInPut_CPCK; {$R *.dfm} procedure TfrmJGSXNewList_CLGLCX.setstatus(); begin end; procedure TfrmJGSXNewList_CLGLCX.FormDestroy(Sender: TObject); begin frmJGSXNewList_CLGLCX:=nil; end; procedure TfrmJGSXNewList_CLGLCX.FormClose(Sender: TObject; var Action: TCloseAction); begin Action:=caFree; end; procedure TfrmJGSXNewList_CLGLCX.FormCreate(Sender: TObject); begin //cxGrid1.Align:=alClient; EndDate.DateTime:=SGetServerDate10(ADOQueryTemp); BegDate.DateTime:=EndDate.DateTime; canshu1:=Trim(DParameters1); canshu2:=Trim(DParameters2); canshu3:=Trim(DParameters3); end; procedure TfrmJGSXNewList_CLGLCX.InitGrid(); var i:Integer; begin try ADOQueryMain.DisableControls; with ADOQueryMain do begin Filtered:=False; Close; sql.Clear; sql.Add(' select '); if RadioGroup1.ItemIndex=2 then sql.Add(' convert(varchar(10),A.CRTime,120) CRTime'); if RadioGroup1.ItemIndex=1 then sql.Add(' convert(varchar(7),A.CRTime,120) CRTime'); if RadioGroup1.ItemIndex=0 then sql.Add(' convert(varchar(4),A.CRTime,120) CRTime'); sql.Add(',A.OrderNo,A.CustomerNoName,A.BNo,A.TeXing,A.GCName,A.SGFangshi,A.CRType'); sql.Add(',SGBuWei=(select Top 1 B.SGBuWei from JYOrder_Main B where B.OrderNo=A.OrderNO)'); sql.Add(',Sum(YJFLQty) YJFLQty,Sum(CPFLQty) CPFLQty,Sum(GLQty) GLQty,Sum(CLQty) CLQty,ZLCQty=Sum(GLQty*isnull(CLQty,0)),Sum(BTFLQty) BTFLQty '); sql.Add(' from CK_CP_CR A'); if RadioGroup1.ItemIndex=2 then begin sql.add(' where A.CRTime>='''+Trim(FormatDateTime('yyyy-MM-dd',BegDate.DateTime))+''''); sql.Add(' and A.CRTime<'''+Trim(FormatDateTime('yyyy-MM-dd',enddate.DateTime+1))+''''); sql.add(' group by convert(varchar(10),A.CRTime,120),A.OrderNo,A.CustomerNoName,A.BNo,A.TeXing,A.GCName,A.SGFangshi,A.CRType'); SQL.Add(' order by convert(varchar(10),A.CRTime,120),A.GCName'); end; if RadioGroup1.ItemIndex=1 then begin sql.add(' where convert(varchar(7),A.CRTime,120)>='''+Trim(FormatDateTime('yyyy-MM',BegDate.DateTime))+''''); sql.Add(' and convert(varchar(7),A.CRTime,120)<='''+Trim(FormatDateTime('yyyy-MM',enddate.DateTime))+''''); sql.add(' group by convert(varchar(7),A.CRTime,120),A.OrderNo,A.CustomerNoName,A.BNo,A.TeXing,A.GCName,A.SGFangshi,A.CRType'); SQL.Add(' order by convert(varchar(7),A.CRTime,120),A.GCName'); end; if RadioGroup1.ItemIndex=0 then begin sql.add(' where convert(varchar(4),A.CRTime,120)>='''+Trim(FormatDateTime('yyyy',BegDate.DateTime))+''''); sql.Add(' and convert(varchar(4),A.CRTime,120)<='''+Trim(FormatDateTime('yyyy',enddate.DateTime+1))+''''); sql.add(' group by convert(varchar(4),A.CRTime,120),A.OrderNo,A.CustomerNoName,A.BNo,A.TeXing,A.GCName,A.SGFangshi,A.CRType'); SQL.Add(' order by convert(varchar(4),A.CRTime,120),A.GCName'); end; Open; end; SCreateCDS20(ADOQueryMain,CDS_Main); SInitCDSData20(ADOQueryMain,CDS_Main); for i:=1 to 34-CDS_Main.RecordCount do begin with CDS_Main do begin append; post; end; end; finally; ADOQueryMain.EnableControls; end; end; procedure TfrmJGSXNewList_CLGLCX.TBRafreshClick(Sender: TObject); begin BegDate.SetFocus; InitGrid(); end; procedure TfrmJGSXNewList_CLGLCX.ConNoMChange(Sender: TObject); begin if ADOQueryMain.Active then begin SDofilter(ADOQueryMain,SGetFilters(Panel1,1,2)); end; end; procedure TfrmJGSXNewList_CLGLCX.TBCloseClick(Sender: TObject); begin WriteCxGrid('成品发货汇总SFA',Tv1,'车辆公里仓库'); Close; end; procedure TfrmJGSXNewList_CLGLCX.FormShow(Sender: TObject); begin ReadCxGrid('成品发货汇总SFA',Tv1,'车辆公里仓库'); setstatus(); //InitGrid(); end; procedure TfrmJGSXNewList_CLGLCX.TBExportClick(Sender: TObject); begin if ADOQueryMain.IsEmpty then exit; SelExportData(Tv1,ADOQueryMain,'成品发货汇总'); end; procedure TfrmJGSXNewList_CLGLCX.TBFindClick(Sender: TObject); begin if ADOQueryMain.Active then begin SDofilter(ADOQueryMain,SGetFilters(Panel1,1,2)); SCreateCDS20(ADOQueryMain,CDS_Main); SInitCDSData20(ADOQueryMain,CDS_Main); end; end; procedure TfrmJGSXNewList_CLGLCX.N1Click(Sender: TObject); begin SelOKNo(CDS_Main,True); end; procedure TfrmJGSXNewList_CLGLCX.N2Click(Sender: TObject); begin SelOKNo(CDS_Main,False); end; procedure TfrmJGSXNewList_CLGLCX.SPIDChange(Sender: TObject); begin TBFind.Click; end; procedure TfrmJGSXNewList_CLGLCX.SPSpecChange(Sender: TObject); begin TBFind.Click; end; procedure TfrmJGSXNewList_CLGLCX.OrderNoChange(Sender: TObject); begin TBFind.Click; end; procedure TfrmJGSXNewList_CLGLCX.RadioGroup1Click(Sender: TObject); begin if RadioGroup1.ItemIndex=2 then begin BegDate.Format:='yyyy-MM-dd'; endDate.Format:='yyyy-MM-dd'; end; if RadioGroup1.ItemIndex=1 then begin BegDate.Format:='yyyy-MM'; endDate.Format:='yyyy-MM'; end; if RadioGroup1.ItemIndex=0 then begin BegDate.Format:='yyyy'; endDate.Format:='yyyy'; end; initgrid(); end; end.