unit U_KHTop; 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; type TfrmKHTop = 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; v2Column15: TcxGridDBColumn; v2Column7: TcxGridDBColumn; cxGridLevel1: TcxGridLevel; SH1: TPanel; ClientDataSet1: TClientDataSet; DataSource1: TDataSource; DataSource2: TDataSource; ClientDataSet2: TClientDataSet; Panel10: TPanel; Panel1: TPanel; Label1: TLabel; Label5: TLabel; Label6: TLabel; C_Code: TEdit; BegDate: TDateTimePicker; EndDate: TDateTimePicker; v1Column2: TcxGridDBColumn; HZ: TPanel; v1Column3: TcxGridDBColumn; v1Column4: TcxGridDBColumn; v1Column5: TcxGridDBColumn; v1Column6: TcxGridDBColumn; Panel4: TPanel; Panel5: TPanel; cxGrid2: TcxGrid; Tv2: TcxGridDBTableView; cxGridDBColumn1: TcxGridDBColumn; cxGridDBColumn2: TcxGridDBColumn; cxGridDBColumn3: TcxGridDBColumn; cxGridDBColumn4: TcxGridDBColumn; cxGridDBColumn6: TcxGridDBColumn; cxGridDBColumn7: TcxGridDBColumn; cxGridDBColumn8: TcxGridDBColumn; cxGridDBColumn9: TcxGridDBColumn; cxGridLevel2: TcxGridLevel; cxGridPopupMenu1: TcxGridPopupMenu; v1Column7: TcxGridDBColumn; v1Column8: TcxGridDBColumn; v2Column1: TcxGridDBColumn; v2Column2: TcxGridDBColumn; 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 Tv1DblClick(Sender: TObject); procedure Tv2DblClick(Sender: TObject); private { Private declarations } procedure InitGrid(); public end; var frmKHTop: TfrmKHTop; implementation uses U_DataLink, U_RTFun,U_JYFTopMX, U_YWYTopKHMX; {$R *.dfm} procedure TfrmKHTop.InitGrid(); begin Panel10.Visible:=True; Panel10.Refresh; try ADOQueryMain.DisableControls; with ADOQueryMain do begin Filtered := False; Close; SQL.Clear; sql.Add('exec P_Get_KHTop :begdate,:enddate,:BZType'); 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('BZType').Value:='$'; Open; end; SCreateCDS20(ADOQueryMain, ClientDataSet1); SInitCDSData20(ADOQueryMain, ClientDataSet1); with ADOQueryMain do begin Filtered := False; Close; SQL.Clear; sql.Add('exec P_Get_KHTop :begdate,:enddate,:BZType'); 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('BZType').Value:='£¤'; Open; end; SCreateCDS20(ADOQueryMain, ClientDataSet2); SInitCDSData20(ADOQueryMain, ClientDataSet2); finally ADOQueryMain.EnableControls; end; Panel10.Visible:=False; end; procedure TfrmKHTop.FormDestroy(Sender: TObject); begin frmKHTop := nil; end; procedure TfrmKHTop.FormClose(Sender: TObject; var Action: TCloseAction); begin Action := caFree; end; procedure TfrmKHTop.TBCloseClick(Sender: TObject); begin WriteCxGrid('KHTopMJ1', Tv1, 'ÅÅÐаñ'); WriteCxGrid('KHTopRMB1', Tv2, 'ÅÅÐаñ'); Close; end; procedure TfrmKHTop.FormShow(Sender: TObject); begin ReadCxGrid('KHTopMJ1', Tv1, 'ÅÅÐаñ'); ReadCxGrid('KHTopRMB1', Tv2, 'ÅÅÐаñ'); end; procedure TfrmKHTop.TBRafreshClick(Sender: TObject); begin InitGrid(); end; procedure TfrmKHTop.ToolButton2Click(Sender: TObject); begin if ADOQueryMain.Active then begin SDofilter(ADOQueryMain, SGetFilters(Panel1, 1, 2)); SCreateCDS20(ADOQueryMain, ClientDataSet1); SInitCDSData20(ADOQueryMain, ClientDataSet1); end; end; procedure TfrmKHTop.C_CodeNameChange(Sender: TObject); begin ToolButton2.Click; end; procedure TfrmKHTop.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)+'-01-01'); EndDate.Date:=StrToDate(IntToStr(strtoint(FYear)-1)+'-12-31'); end else begin BegDate.Date:=StrToDate(FYear+'-01-01'); EndDate.Date:=StrToDate(IntToStr(strtoint(FYear))+'-12-31'); end; end; procedure TfrmKHTop.Tv1DblClick(Sender: TObject); begin if ClientDataSet1.IsEmpty then Exit; try frmYWYTopKHMX:=TfrmYWYTopKHMX.Create(Application); with frmYWYTopKHMX do begin FBegdate:=Self.BegDate.Date; FEnddate:=Self.EndDate.Date; FKHName:=Trim(Self.ClientDataSet1.fieldbyname('KHNameJC').AsString); FKHNO:=Trim(Self.ClientDataSet1.fieldbyname('FactoryNo').AsString); if ShowModal=1 then begin end; end; finally frmYWYTopKHMX.Free; end; {try frmJYFTopMX:=TfrmJYFTopMX.Create(Application); with frmJYFTopMX do begin FBegdate:=Self.BegDate.Date; FEnddate:=Self.EndDate.Date; FMXName:=Trim(Self.ClientDataSet1.fieldbyname('SPName').AsString); if ShowModal=1 then begin end; end; finally frmJYFTopMX.Free; end; } end; procedure TfrmKHTop.Tv2DblClick(Sender: TObject); begin if ClientDataSet2.IsEmpty then Exit; try frmYWYTopKHMX:=TfrmYWYTopKHMX.Create(Application); with frmYWYTopKHMX do begin FBegdate:=Self.BegDate.Date; FEnddate:=Self.EndDate.Date; FKHName:=Trim(Self.ClientDataSet2.fieldbyname('KHNameJC').AsString); FKHNO:=Trim(Self.ClientDataSet2.fieldbyname('FactoryNo').AsString); if ShowModal=1 then begin end; end; finally frmYWYTopKHMX.Free; end; end; end.