unit U_JBCHZ_MX; 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, dxSkinsCore, dxSkinBlack, dxSkinBlue, dxSkinBlueprint, dxSkinCaramel, dxSkinCoffee, dxSkinDarkRoom, dxSkinDarkSide, dxSkinDevExpressDarkStyle, dxSkinDevExpressStyle, dxSkinFoggy, dxSkinGlassOceans, dxSkinHighContrast, dxSkiniMaginary, dxSkinLilian, dxSkinLiquidSky, dxSkinLondonLiquidSky, dxSkinMcSkin, dxSkinMetropolis, dxSkinMetropolisDark, dxSkinMoneyTwins, dxSkinOffice2007Black, dxSkinOffice2007Blue, dxSkinOffice2007Green, dxSkinOffice2007Pink, dxSkinOffice2007Silver, dxSkinOffice2010Black, dxSkinOffice2010Blue, dxSkinOffice2010Silver, dxSkinOffice2013DarkGray, dxSkinOffice2013LightGray, dxSkinOffice2013White, dxSkinPumpkin, dxSkinSeven, dxSkinSevenClassic, dxSkinSharp, dxSkinSharpPlus, dxSkinSilver, dxSkinSpringTime, dxSkinStardust, dxSkinSummer2008, dxSkinTheAsphaltWorld, dxSkinsDefaultPainters, dxSkinValentine, dxSkinVS2010, dxSkinWhiteprint, dxSkinXmas2008Blue, dxSkinscxPCPainter, cxNavigator, dxBarBuiltInMenu; type TfrmJJBCHZ_MX = 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; BegDate: TDateTimePicker; CDS_Main: TClientDataSet; RM1: TRMGridReport; RMDBMain: TRMDBDataSet; RMXLSExport1: TRMXLSExport; RMDBHZ: TRMDBDataSet; CDS_HZ: TClientDataSet; CDS_PRT: TClientDataSet; PopupMenu1: TPopupMenu; N1: TMenuItem; N2: TMenuItem; Label12: TLabel; Label3: TLabel; SJName: TEdit; Label5: TLabel; CheHao: TEdit; cxGrid2: TcxGrid; Tv1: TcxGridDBTableView; v1SJName: TcxGridDBColumn; v1CheHao: TcxGridDBColumn; v1CLSpec: TcxGridDBColumn; v1CPFLQty: TcxGridDBColumn; cxGrid2Level1: TcxGridLevel; CLSpec: TEdit; Panel2: TPanel; v1SPQty: TcxGridDBColumn; cxTabControl1: TcxTabControl; Tv1Column1: TcxGridDBColumn; Tv1Column2: TcxGridDBColumn; Tv1Column3: 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 GCNameChange(Sender: TObject); procedure cxTabControl1Change(Sender: TObject); procedure BegDateChange(Sender: TObject); private canshu1, canshu2, canshu3: string; procedure InitGrid(); procedure setstatus(); { Private declarations } public { Public declarations } end; var frmJJBCHZ_MX: TfrmJJBCHZ_MX; implementation uses U_DataLink, U_RTFun, U_SXCKInPut, U_JGSXCKInPut, U_CLShuiPiao_Sub, U_BCHZ_Year_MX; {$R *.dfm} procedure TfrmJJBCHZ_MX.setstatus(); begin end; procedure TfrmJJBCHZ_MX.FormDestroy(Sender: TObject); begin frmJJBCHZ_MX := nil; end; procedure TfrmJJBCHZ_MX.FormClose(Sender: TObject; var Action: TCloseAction); begin Action := caFree; end; procedure TfrmJJBCHZ_MX.FormCreate(Sender: TObject); begin //cxGrid1.Align:=alClient; BegDate.DateTime := SGetServerDate(ADOQueryCmd); canshu1 := Trim(DParameters1); canshu2 := Trim(DParameters2); canshu3 := Trim(DParameters3); end; procedure TfrmJJBCHZ_MX.InitGrid(); begin Panel2.Visible := True; Panel2.Refresh; try ADOQueryMain.DisableControls; with ADOQueryMain do begin Filtered := False; Close; sql.Clear; sql.Add(' select A.CheHao,A.CLSpec,A.SJName,CRTime,YCLPrice'); sql.Add(',YCLSpec,YCLName,CRQty'); sql.Add(' from CK_YCLONE_CR A'); sql.add(' where Year(A.CRTime)=''' + Trim(FormatDateTime('yyyy', BegDate.Date)) + ''''); if cxTabControl1.TabIndex = 0 then sql.Add(' and Month(A.CRTime)=3'); if cxTabControl1.TabIndex = 1 then sql.Add(' and Month(A.CRTime)=4'); if cxTabControl1.TabIndex = 2 then sql.Add(' and Month(A.CRTime)=5'); if cxTabControl1.TabIndex = 3 then sql.Add(' and Month(A.CRTime)=6'); if cxTabControl1.TabIndex = 4 then sql.Add(' and Month(A.CRTime)=7'); if cxTabControl1.TabIndex = 5 then sql.Add(' and Month(A.CRTime)=8'); if cxTabControl1.TabIndex = 6 then sql.Add(' and Month(A.CRTime)=9'); if cxTabControl1.TabIndex = 7 then sql.Add(' and Month(A.CRTime)=10'); if cxTabControl1.TabIndex = 8 then sql.Add(' and Month(A.CRTime)=11'); if cxTabControl1.TabIndex = 9 then sql.Add(' and Month(A.CRTime)=12'); SQL.Add(' and isnull(A.CLName,'''')=''泵车'''); // sql.Add(' group by A.CheHao,A.CLSpec,A.SJName,Year(A.CRTime),Month(A.CRTime)'); // ShowMessage(SQL.text); Open; end; SCreateCDS20(ADOQueryMain, CDS_Main); SInitCDSData20(ADOQueryMain, CDS_Main); finally ADOQueryMain.EnableControls; end; Panel2.Visible := false; end; procedure TfrmJJBCHZ_MX.TBRafreshClick(Sender: TObject); begin BegDate.SetFocus; InitGrid(); end; procedure TfrmJJBCHZ_MX.ConNoMChange(Sender: TObject); begin if ADOQueryMain.Active then begin SDofilter(ADOQueryMain, SGetFilters(Panel1, 1, 2)); end; end; procedure TfrmJJBCHZ_MX.TBCloseClick(Sender: TObject); begin WriteCxGrid('数据列表FM', Tv1, '数据'); Close; end; procedure TfrmJJBCHZ_MX.FormShow(Sender: TObject); begin ReadCxGrid('数据列表FM', Tv1, '数据'); //setstatus(); //InitGrid(); end; procedure TfrmJJBCHZ_MX.TBExportClick(Sender: TObject); begin if ADOQueryMain.IsEmpty then exit; TcxGridToExcel('泵车各类数据年份汇总', cxGrid2); end; procedure TfrmJJBCHZ_MX.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 TfrmJJBCHZ_MX.N1Click(Sender: TObject); begin SelOKNo(CDS_Main, True); end; procedure TfrmJJBCHZ_MX.N2Click(Sender: TObject); begin SelOKNo(CDS_Main, False); end; procedure TfrmJJBCHZ_MX.SPIDChange(Sender: TObject); begin TBFind.Click; end; procedure TfrmJJBCHZ_MX.SPSpecChange(Sender: TObject); begin TBFind.Click; end; procedure TfrmJJBCHZ_MX.GCNameChange(Sender: TObject); begin TBFind.Click; end; procedure TfrmJJBCHZ_MX.cxTabControl1Change(Sender: TObject); begin //setstatus(); InitGrid(); end; procedure TfrmJJBCHZ_MX.BegDateChange(Sender: TObject); begin TBRafresh.Click; end; end.