unit U_JWLKCList_MoneyHZ; 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, cxCalendar, cxButtonEdit, cxDropDownEdit, DBClient, Menus, cxSplitter, cxTextEdit, RM_Common, RM_Class, RM_GridReport, RM_System, RM_Dataset, RM_e_Xls, dxPSGlbl, dxPSUtl, dxPSEngn, dxPrnPg, dxBkgnd, dxWrap, dxPrnDev, dxPSCompsProvider, dxPSFillPatterns, dxPSEdgePatterns, dxPSCore, dxPScxCommon, dxPScxGridLnk, cxGridBandedTableView, cxGridDBBandedTableView, 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; type TfrmJWLKCList_MoneyHZ = class(TForm) ToolBar1: TToolBar; TBRafresh: TToolButton; TBFind: TToolButton; TBClose: TToolButton; cxGridPopupMenu1: TcxGridPopupMenu; ADOQueryCmd: TADOQuery; ADOQueryMain: TADOQuery; ADOQueryTemp: TADOQuery; DataSource1: TDataSource; Panel1: TPanel; Label1: TLabel; Label3: TLabel; EndDate: TDateTimePicker; LYDept: TEdit; cxGrid1: TcxGrid; CDS_Main: TClientDataSet; RMDB_Main: TRMDBDataSet; RM1: TRMGridReport; RMXLSExport1: TRMXLSExport; Label8: TLabel; cxGrid1Level1: TcxGridLevel; TV1: TcxGridDBBandedTableView; V1YCLSpec: TcxGridDBBandedColumn; V1LYDept: TcxGridDBBandedColumn; cxStyleRepository1: TcxStyleRepository; cxStyle1: TcxStyle; V1SQJCMoney: TcxGridDBBandedColumn; V1BQRKMoney: TcxGridDBBandedColumn; V1SQRKMoney: TcxGridDBBandedColumn; V1SQCKMoney: TcxGridDBBandedColumn; V1BQCKMoney: TcxGridDBBandedColumn; V1BQJCMoney: TcxGridDBBandedColumn; YCLSpec: TComboBox; DataSource2: TDataSource; JWL_Sub: TClientDataSet; TJWL: TToolButton; JWL_Money: TClientDataSet; RMDBMain: TRMDBDataSet; RM2: TRMGridReport; V1BNRKMoney: TcxGridDBBandedColumn; V1BNCKMoney: TcxGridDBBandedColumn; ToolButton1: TToolButton; procedure FormClose(Sender: TObject; var Action: TCloseAction); procedure FormCreate(Sender: TObject); procedure TBCloseClick(Sender: TObject); procedure TBFindClick(Sender: TObject); procedure TBExportClick(Sender: TObject); procedure TBRafreshClick(Sender: TObject); procedure LYDeptChange(Sender: TObject); procedure FormShow(Sender: TObject); procedure FormDestroy(Sender: TObject); procedure RadioGroup1Click(Sender: TObject); procedure CheckBox1Click(Sender: TObject); procedure TJWLClick(Sender: TObject); procedure ToolButton1Click(Sender: TObject); procedure TV1DblClick(Sender: TObject); private canshu1, canshu2, canshu3: string; procedure InitGrid(); procedure InitForm(); { Private declarations } public { Public declarations } end; var frmJWLKCList_MoneyHZ: TfrmJWLKCList_MoneyHZ; implementation uses U_DataLink, U_RTFun, U_ModuleNote, U_JWLKCList_MoneyMX; {$R *.dfm} procedure TfrmJWLKCList_MoneyHZ.FormClose(Sender: TObject; var Action: TCloseAction); begin Action := caFree; end; procedure TfrmJWLKCList_MoneyHZ.FormCreate(Sender: TObject); begin cxgrid1.Align := alClient; canshu1 := Trim(DParameters1); canshu2 := Trim(DParameters2); canshu3 := Trim(DParameters3); end; procedure TfrmJWLKCList_MoneyHZ.TBCloseClick(Sender: TObject); begin Close; WriteCxBandedGrid('库存汇总', Tv1, '原材料仓库'); end; procedure TfrmJWLKCList_MoneyHZ.InitGrid(); begin try ADOQueryMain.DisableControls; with ADOQueryMain do begin Filtered := False; Close; sql.Clear; sql.Add('exec P_JWL_MoneyKC '); SQL.Add('@Enddate=''' + trim(FormatDateTime('yyyy-MM', EndDate.Date)) + ''' '); Open; end; SCreateCDS20(ADOQueryMain, CDS_Main); SInitCDSData20(ADOQueryMain, CDS_Main); TBFind.Click; finally ; ADOQueryMain.EnableControls; end; end; procedure TfrmJWLKCList_MoneyHZ.InitForm(); begin ReadCxBandedGrid('库存汇总', Tv1, '原材料仓库'); EndDate.DateTime := SGetServerDateMEnd(ADOQueryTemp); with ADOQueryTemp do begin close; SQL.Clear; sql.Add('select distinct YCLSpec from CK_YCLONE_CR '); open; end; with ADOQueryTemp do begin first; while not eof do begin YCLSpec.Items.Add(ADOQueryTemp.fieldbyname('YCLSpec').AsString); next; end; end; InitGrid(); end; procedure TfrmJWLKCList_MoneyHZ.TBFindClick(Sender: TObject); begin if ADOQueryMain.IsEmpty then Exit; SDofilter(ADOQueryMain, SGetFilters(Panel1, 1, 2)); SCreateCDS20(ADOQueryMain, CDS_Main); SInitCDSData20(ADOQueryMain, CDS_Main); end; procedure TfrmJWLKCList_MoneyHZ.TBExportClick(Sender: TObject); begin if CDS_Main.IsEmpty then Exit; TcxGridToExcel('库存列表', cxGrid1); end; procedure TfrmJWLKCList_MoneyHZ.TBRafreshClick(Sender: TObject); begin ToolBar1.SetFocus; InitGrid(); end; procedure TfrmJWLKCList_MoneyHZ.LYDeptChange(Sender: TObject); begin if ADOQueryMain.Active = False then Exit; SDofilter(ADOQueryMain, SGetFilters(Panel1, 1, 2)); SCreateCDS20(ADOQueryMain, CDS_Main); SInitCDSData20(ADOQueryMain, CDS_Main); end; procedure TfrmJWLKCList_MoneyHZ.FormShow(Sender: TObject); begin InitForm(); end; procedure TfrmJWLKCList_MoneyHZ.FormDestroy(Sender: TObject); begin frmJWLKCList_MoneyHZ := nil; end; procedure TfrmJWLKCList_MoneyHZ.RadioGroup1Click(Sender: TObject); begin TBRafresh.Click; end; procedure TfrmJWLKCList_MoneyHZ.CheckBox1Click(Sender: TObject); begin TBRafresh.Click; end; procedure TfrmJWLKCList_MoneyHZ.TJWLClick(Sender: TObject); var fPrintFile, FConNoM, RPTName: string; begin if CDS_Main.IsEmpty then Exit; fPrintFile := ExtractFilePath(Application.ExeName) + 'Report\机物料费用汇总表.rmf'; with ADOQueryCmd do begin close; SQL.Clear; sql.Add('exec P_JWL_MoneyKC '); SQL.Add('@Enddate=''' + trim(FormatDateTime('yyyy-MM', EndDate.Date)) + ''' '); Open; end; SCreateCDS20(ADOQueryCmd, JWL_Money); SInitCDSData20(ADOQueryCmd, JWL_Money); if FileExists(fPrintFile) then begin //RMVariables['begdate']:=BegDate.DateTime; RMVariables['enddate'] := enddate.DateTime; RM2.LoadFromFile(fPrintFile); RM2.ShowReport; end else begin Application.MessageBox(PChar('没有找' + ExtractFilePath(Application.ExeName) + RPTName), '提示', 0); end; end; procedure TfrmJWLKCList_MoneyHZ.ToolButton1Click(Sender: TObject); begin frmJWLKCList_MoneyMX := TfrmJWLKCList_MoneyMX.Create(self); with frmJWLKCList_MoneyMX do begin FYCLSpec:= Self.CDS_Main.fieldbyname('YCLSpec').AsString; EndDate.Date := self.EndDate.Date; if ShowModal = 1 then begin end; free; end; end; procedure TfrmJWLKCList_MoneyHZ.TV1DblClick(Sender: TObject); begin ToolButton1.Click; end; end.