unit U_DJTop; interface uses Windows, Messages, SysUtils, Variants, Classes, Graphics, Controls, Forms, Dialogs, cxGraphics, cxCustomData, cxStyles, cxTL, cxMaskEdit, DB, ADODB, cxInplaceContainer, cxDBTL, cxControls, cxTLData, ComCtrls, ToolWin, StdCtrls, cxFilter, cxData, cxDataStorage, cxEdit, cxDBData, DBClient, cxGridCustomTableView, cxGridTableView, cxGridDBTableView, ExtCtrls, cxSplitter, cxGridLevel, cxClasses, cxGridCustomView, cxGrid, cxGridCustomPopupMenu, cxGridPopupMenu, RM_Dataset, RM_System, RM_Common, RM_Class, RM_GridReport, IdBaseComponent, IdComponent, IdTCPConnection, IdTCPClient, IdFTP, ShellAPI, IniFiles, cxCheckBox, cxCalendar, cxButtonEdit, cxTextEdit, cxDBLookupComboBox, cxContainer, cxDropDownEdit, cxPC, Menus, TeEngine, Series, TeeProcs, Chart, DbChart, GanttCh, cxLookAndFeels, cxLookAndFeelPainters, cxNavigator; type TfrmDJTop = class(TForm) ToolBar1: TToolBar; TBRafresh: TToolButton; TBClose: TToolButton; ADOQueryTemp: TADOQuery; ADOQueryCmd: TADOQuery; ToolButton2: TToolButton; ADOQueryMain: TADOQuery; cxGridPopupMenu2: TcxGridPopupMenu; Panel2: TPanel; Panel3: TPanel; cxGrid1: TcxGrid; Tv1: TcxGridDBTableView; v2Column12: TcxGridDBColumn; v2Column7: TcxGridDBColumn; cxGridLevel1: TcxGridLevel; SH1: TPanel; ClientDataSet1: TClientDataSet; DataSource1: TDataSource; v1Column1: TcxGridDBColumn; DataSource3: TDataSource; ClientDataSet3: TClientDataSet; Panel1: TPanel; Label1: TLabel; Label5: TLabel; Label6: TLabel; C_Code: TEdit; BegDate: TDateTimePicker; EndDate: TDateTimePicker; Panel10: TPanel; ToolButton1: TToolButton; ComboBox1: TComboBox; v1Column4: TcxGridDBColumn; v1Column5: TcxGridDBColumn; v1Column2: TcxGridDBColumn; Panel4: TPanel; cxGrid2: TcxGrid; Tv2: TcxGridDBTableView; cxGridDBColumn1: TcxGridDBColumn; cxGridDBColumn2: TcxGridDBColumn; cxGridDBColumn3: TcxGridDBColumn; cxGridDBColumn4: TcxGridDBColumn; cxGridDBColumn5: TcxGridDBColumn; cxGridDBColumn6: TcxGridDBColumn; cxGridLevel2: TcxGridLevel; Panel5: TPanel; procedure FormDestroy(Sender: TObject); procedure FormClose(Sender: TObject; var Action: TCloseAction); procedure TBCloseClick(Sender: TObject); procedure FormShow(Sender: TObject); procedure TBRafreshClick(Sender: TObject); procedure ToolButton2Click(Sender: TObject); procedure C_CodeNameChange(Sender: TObject); procedure FormCreate(Sender: TObject); procedure ToolButton1Click(Sender: TObject); procedure Tv1DblClick(Sender: TObject); procedure Tv2DblClick(Sender: TObject); private { Private declarations } procedure InitGrid(); public end; var frmDJTop: TfrmDJTop; implementation uses U_DataLink, U_RTFun,U_DJCPTopMX,U_ZJCPTopMX; {$R *.dfm} procedure TfrmDJTop.InitGrid(); begin Panel10.Visible:=True; Panel10.Refresh; try ADOQueryMain.DisableControls; with ADOQueryMain do begin Filtered := False; Close; SQL.Clear; sql.Add('exec P_BI_DJAll :begdate,:enddate,:Type'); Parameters.ParamByName('begdate').Value:=Trim(FormatDateTime('yyyy-MM-dd',BegDate.Date)); Parameters.ParamByName('enddate').Value:=Trim(FormatDateTime('yyyy-MM-dd',enddate.Date+1)); Parameters.ParamByName('Type').Value:='打卷'; Open; end; SCreateCDS20(ADOQueryMain, ClientDataSet1); SInitCDSData20(ADOQueryMain, ClientDataSet1); with ADOQueryMain do begin Filtered := False; Close; SQL.Clear; sql.Add('exec P_BI_DJAll :begdate,:enddate,:Type'); Parameters.ParamByName('begdate').Value:=Trim(FormatDateTime('yyyy-MM-dd',BegDate.Date)); Parameters.ParamByName('enddate').Value:=Trim(FormatDateTime('yyyy-MM-dd',enddate.Date+1)); Parameters.ParamByName('Type').Value:='桌检'; Open; end; SCreateCDS20(ADOQueryMain, ClientDataSet3); SInitCDSData20(ADOQueryMain, ClientDataSet3); finally ADOQueryMain.EnableControls; end; Panel10.Visible:=False; end; procedure TfrmDJTop.FormDestroy(Sender: TObject); begin frmDJTop := nil; end; procedure TfrmDJTop.FormClose(Sender: TObject; var Action: TCloseAction); begin Action := caFree; end; procedure TfrmDJTop.TBCloseClick(Sender: TObject); begin //WriteCxGrid('收货', Tv1, '前十大产品排行榜'); Close; end; procedure TfrmDJTop.FormShow(Sender: TObject); begin //ReadCxGrid('收货', Tv1, '前十大产品排行榜'); end; procedure TfrmDJTop.TBRafreshClick(Sender: TObject); begin InitGrid(); end; procedure TfrmDJTop.ToolButton2Click(Sender: TObject); begin if ADOQueryMain.Active then begin SDofilter(ADOQueryMain, SGetFilters(Panel1, 1, 2)); SCreateCDS20(ADOQueryMain, ClientDataSet1); SInitCDSData20(ADOQueryMain, ClientDataSet1); end; end; procedure TfrmDJTop.C_CodeNameChange(Sender: TObject); begin ToolButton2.Click; end; procedure TfrmDJTop.FormCreate(Sender: TObject); var FYear:string; FMonth:string; FDate:TDate; begin FDate:=SGetServerDate10(ADOQueryTemp); FYear:=FormatDateTime('yyyy',FDate); FMonth:=FormatDateTime('MM',FDate); if StrToInt(FMonth)<2 then begin BegDate.Date:=StrToDate(IntToStr(strtoint(FYear)-1)+'-02-01'); EndDate.Date:=StrToDate(FYear+'-01-31'); end else begin BegDate.Date:=StrToDate(FYear+'-02-01'); EndDate.Date:=StrToDate(IntToStr(strtoint(FYear)+1)+'-01-31'); end; end; procedure TfrmDJTop.ToolButton1Click(Sender: TObject); begin if ComboBox1.Text='' then Exit; if ComboBox1.ItemIndex=0 then begin TcxGridToExcel(ComboBox1.Text,cxGrid1); end else if ComboBox1.ItemIndex=1 then begin TcxGridToExcel(ComboBox1.Text,cxGrid2); end; end; procedure TfrmDJTop.Tv1DblClick(Sender: TObject); begin if ClientDataSet1.IsEmpty then Exit; try frmDJCPTopMX:=TfrmDJCPTopMX.Create(Application); with frmDJCPTopMX do begin FBegdate:=Self.BegDate.Date; FEnddate:=Self.EndDate.Date; FKHName:=Trim(Self.ClientDataSet1.fieldbyname('KHName').AsString); if ShowModal=1 then begin end; end; finally frmDJCPTopMX.Free; end; end; procedure TfrmDJTop.Tv2DblClick(Sender: TObject); begin if ClientDataSet3.IsEmpty then Exit; try frmZJCPTopMX:=TfrmZJCPTopMX.Create(Application); with frmZJCPTopMX do begin FBegdate:=Self.BegDate.Date; FEnddate:=Self.EndDate.Date; FKHName:=Trim(Self.ClientDataSet3.fieldbyname('KHName').AsString); if ShowModal=1 then begin end; end; finally frmZJCPTopMX.Free; end; end; end.