unit U_PBKJList; 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, cxCheckBox, cxCalendar, cxSplitter, RM_Dataset, RM_System, RM_Common, RM_Class, RM_GridReport, RM_e_Xls, Menus, cxPC, MovePanel, TeEngine, Series, TeeProcs, Chart, DbChart, cxLookAndFeels, cxLookAndFeelPainters, cxNavigator; type TfrmPBKJList = class(TForm) ToolBar1: TToolBar; TBRafresh: TToolButton; TBClose: TToolButton; Tv1: TcxGridDBTableView; cxGrid1Level1: TcxGridLevel; cxGrid1: TcxGrid; cxGridPopupMenu1: TcxGridPopupMenu; ADOQueryCmd: TADOQuery; ADOQueryMain: TADOQuery; ADOQueryTemp: TADOQuery; DataSource1: TDataSource; Order_Main: TClientDataSet; v1Column1: TcxGridDBColumn; v1Column3: TcxGridDBColumn; cxGrid2: TcxGrid; Tv2: TcxGridDBTableView; cxGridDBColumn1: TcxGridDBColumn; cxGridDBColumn2: TcxGridDBColumn; cxGridLevel1: TcxGridLevel; ClientDataSet2: TClientDataSet; cxGridPopupMenu2: TcxGridPopupMenu; DataSource2: TDataSource; Panel1: TPanel; cxGrid3: TcxGrid; Tv3: TcxGridDBTableView; cxGridDBColumn3: TcxGridDBColumn; cxGridDBColumn4: TcxGridDBColumn; cxGridLevel2: TcxGridLevel; MovePanel2: TMovePanel; ClientDataSet3: TClientDataSet; cxGridPopupMenu3: TcxGridPopupMenu; DataSource3: TDataSource; DBChart1: TDBChart; Series1: TLineSeries; Panel2: TPanel; Panel3: TPanel; RadioGroup1: TRadioGroup; procedure FormDestroy(Sender: TObject); procedure FormClose(Sender: TObject; var Action: TCloseAction); procedure TBCloseClick(Sender: TObject); procedure TBRafreshClick(Sender: TObject); procedure FormShow(Sender: TObject); procedure RadioGroup1Click(Sender: TObject); procedure cxTabControl1Change(Sender: TObject); procedure Tv1MouseDown(Sender: TObject; Button: TMouseButton; Shift: TShiftState; X, Y: Integer); procedure Tv2MouseDown(Sender: TObject; Button: TMouseButton; Shift: TShiftState; X, Y: Integer); private procedure InitGrid(); procedure InitForm(); procedure initQST(); { Private declarations } public FFInt:Integer; { Public declarations } end; var frmPBKJList: TfrmPBKJList; implementation uses U_DataLink,U_RTFun; {$R *.dfm} procedure TfrmPBKJList.FormDestroy(Sender: TObject); begin frmPBKJList:=nil; end; procedure TfrmPBKJList.FormClose(Sender: TObject; var Action: TCloseAction); begin Action:=caFree; end; procedure TfrmPBKJList.TBCloseClick(Sender: TObject); begin Close; WriteCxGrid('Tv11',Tv1,'开机报表'); WriteCxGrid('Tv21',Tv2,'开机报表'); WriteCxGrid('Tv31',Tv3,'开机报表'); end; procedure TfrmPBKJList.InitGrid(); begin try ADOQueryMain.DisableControls; with ADOQueryMain do begin Filtered:=False; Close; sql.Clear; sql.Add(' exec P_View_KJQty '); Open; end; SCreateCDSOnly(ADOQueryMain,Order_Main); SInitCDSDataOnly(ADOQueryMain,Order_Main); finally ADOQueryMain.EnableControls; end; end; procedure TfrmPBKJList.InitForm(); begin ReadCxGrid('Tv11',Tv1,'开机报表'); ReadCxGrid('Tv21',Tv2,'开机报表'); ReadCxGrid('Tv31',Tv3,'开机报表'); InitGrid(); end; procedure TfrmPBKJList.TBRafreshClick(Sender: TObject); begin MovePanel2.Visible:=True; MovePanel2.Refresh; InitGrid(); MovePanel2.Visible:=False; initQST(); end; procedure TfrmPBKJList.FormShow(Sender: TObject); begin InitForm(); end; procedure TfrmPBKJList.RadioGroup1Click(Sender: TObject); begin initQST(); end; procedure TfrmPBKJList.initQST(); begin DBChart1.Series[0].Active:=True; DBChart1.Series[0].DataSource:=nil; if RadioGroup1.ItemIndex=0 then begin DBChart1.Series[0].DataSource:=Order_Main; end else if RadioGroup1.ItemIndex=1 then begin DBChart1.Series[0].DataSource:=ClientDataSet2; end else if RadioGroup1.ItemIndex=2 then begin DBChart1.Series[0].DataSource:=ClientDataSet3; end; DBChart1.Series[0].XLabelsSource:='XValue'; DBChart1.Series[0].YValues.ValueSource:='CarQty'; end; procedure TfrmPBKJList.cxTabControl1Change(Sender: TObject); begin TBRafresh.Click; end; procedure TfrmPBKJList.Tv1MouseDown(Sender: TObject; Button: TMouseButton; Shift: TShiftState; X, Y: Integer); begin try ADOQueryTemp.DisableControls; with ADOQueryTemp do begin Filtered:=False; Close; sql.Clear; sql.Add(' exec P_View_KJQtyMonth :FYear'); if Order_Main.IsEmpty=False then begin Parameters.ParamByName('FYear').Value:=Trim(Order_Main.fieldbyname('FYear').AsString); end else begin Parameters.ParamByName('FYear').Value:='1987'; end; Open; end; SCreateCDSOnly(ADOQueryTemp,ClientDataSet2); SInitCDSDataOnly(ADOQueryTemp,ClientDataSet2); finally ADOQueryTemp.EnableControls; end; initQST(); end; procedure TfrmPBKJList.Tv2MouseDown(Sender: TObject; Button: TMouseButton; Shift: TShiftState; X, Y: Integer); begin try ADOQueryTemp.DisableControls; with ADOQueryTemp do begin Filtered:=False; Close; sql.Clear; sql.Add(' exec P_View_KJQtyDay :FYear'); if ClientDataSet2.IsEmpty=False then begin Parameters.ParamByName('FYear').Value:=Trim(ClientDataSet2.fieldbyname('FYear').AsString); end else begin Parameters.ParamByName('FYear').Value:='1987-01'; end; Open; end; SCreateCDSOnly(ADOQueryTemp,ClientDataSet3); SInitCDSDataOnly(ADOQueryTemp,ClientDataSet3); finally ADOQueryTemp.EnableControls; end; initQST(); end; end.