unit U_CLYouKa_Qty; 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; type TfrmCLYouKa_Qty = 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; Label2: TLabel; BegDate: TDateTimePicker; EndDate: TDateTimePicker; CDS_Main: TClientDataSet; RM1: TRMGridReport; RMDBMain: TRMDBDataSet; RMXLSExport1: TRMXLSExport; RMDBHZ: TRMDBDataSet; CDS_HZ: TClientDataSet; CDS_PRT: TClientDataSet; TBDel: TToolButton; PopupMenu1: TPopupMenu; N1: TMenuItem; N2: TMenuItem; TBAdd: TToolButton; TBEdit: TToolButton; Label12: TLabel; Label6: TLabel; CPNo: TEdit; cxTabControl1: TcxTabControl; TTJ: TToolButton; TCXTJ: TToolButton; Label3: TLabel; SJName: TEdit; Label5: TLabel; CLSpec: TEdit; cxGrid2: TcxGrid; Tv1: TcxGridDBTableView; v1CRTime: TcxGridDBColumn; v1SJName: TcxGridDBColumn; v1CLSpec: TcxGridDBColumn; v1CPNo: TcxGridDBColumn; v1CLName: TcxGridDBColumn; v1CheHao: TcxGridDBColumn; v1CZMoney: TcxGridDBColumn; v1Note: TcxGridDBColumn; cxGrid2Level1: TcxGridLevel; CLName: TEdit; Label4: TLabel; CheHao: TEdit; v1MQQty: 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 TBDelClick(Sender: TObject); procedure TBAddClick(Sender: TObject); procedure TBEditClick(Sender: TObject); procedure SPIDChange(Sender: TObject); procedure SPSpecChange(Sender: TObject); procedure GCNameChange(Sender: TObject); procedure cxTabControl1Change(Sender: TObject); procedure TTJClick(Sender: TObject); procedure TCXTJClick(Sender: TObject); private canshu1,canshu2,canshu3:string; procedure InitGrid(); procedure setstatus(); { Private declarations } public { Public declarations } end; var frmCLYouKa_Qty: TfrmCLYouKa_Qty; implementation uses U_DataLink,U_RTFun,U_SXCKInPut, U_JGSXCKInPut, U_CLShuiPiao_Sub,U_CLYouliang_Sub; {$R *.dfm} procedure TfrmCLYouKa_Qty.setstatus(); begin TBAdd.Visible:=False; TBEdit.Visible:=false; TBDel.Visible:=False; TTJ.Visible:=False; TCXTJ.Visible:=False; cxTabControl1.Visible:=false; if Trim(canshu1)<>'高权限' then begin cxTabControl1.Visible:=true; if cxTabControl1.TabIndex=0 then begin TBAdd.Visible:=true; TBEdit.Visible:=true; TBDel.Visible:=true; TTJ.Visible:=true; end; if cxTabControl1.TabIndex=1 then begin TCXTJ.Visible:=true; end; end else begin cxTabControl1.TabIndex:=2; end; end; procedure TfrmCLYouKa_Qty.FormDestroy(Sender: TObject); begin frmCLYouKa_Qty:=nil; end; procedure TfrmCLYouKa_Qty.FormClose(Sender: TObject; var Action: TCloseAction); begin Action:=caFree; end; procedure TfrmCLYouKa_Qty.FormCreate(Sender: TObject); begin //cxGrid1.Align:=alClient; EndDate.DateTime:=SGetServerDate10(ADOQueryTemp); BegDate.DateTime:=EndDate.DateTime-30; canshu1:=Trim(DParameters1); canshu2:=Trim(DParameters2); canshu3:=Trim(DParameters3); end; procedure TfrmCLYouKa_Qty.InitGrid(); begin try ADOQueryMain.DisableControls; with ADOQueryMain do begin Filtered:=False; Close; sql.Clear; sql.Add(' select A.* '); sql.Add(' from CL_YKYL_Main A'); sql.add(' where A.CRTime>='''+Trim(FormatDateTime('yyyy-MM-dd',BegDate.Date))+''''); sql.Add(' and A.CRTime<'''+Trim(FormatDateTime('yyyy-MM-dd',enddate.Date+1))+''''); {if cxTabControl1.TabIndex=0 then begin sql.Add(' and isnull(Chkstatus,'''') in ('''',''审核不通过'')'); end; if cxTabControl1.TabIndex=1 then begin sql.Add(' and isnull(Chkstatus,'''')=''已提交'''); end; if cxTabControl1.TabIndex=2 then begin sql.Add(' and isnull(Chkstatus,'''')=''已审核'''); end;} SQL.Add(' order by A.CRTime desc'); Open; end; SCreateCDS20(ADOQueryMain,CDS_Main); SInitCDSData20(ADOQueryMain,CDS_Main); finally ADOQueryMain.EnableControls; end; end; procedure TfrmCLYouKa_Qty.TBRafreshClick(Sender: TObject); begin BegDate.SetFocus; InitGrid(); end; procedure TfrmCLYouKa_Qty.ConNoMChange(Sender: TObject); begin if ADOQueryMain.Active then begin SDofilter(ADOQueryMain,SGetFilters(Panel1,1,2)); end; end; procedure TfrmCLYouKa_Qty.TBCloseClick(Sender: TObject); begin WriteCxGrid('油卡充值列表FM',Tv1,'油卡充值'); Close; end; procedure TfrmCLYouKa_Qty.FormShow(Sender: TObject); begin ReadCxGrid('油卡充值列表FM',Tv1,'油卡充值'); //setstatus(); //InitGrid(); end; procedure TfrmCLYouKa_Qty.TBExportClick(Sender: TObject); begin if ADOQueryMain.IsEmpty then exit; TcxGridToExcel('油卡油量列表',cxGrid2); end; procedure TfrmCLYouKa_Qty.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 TfrmCLYouKa_Qty.N1Click(Sender: TObject); begin SelOKNo(CDS_Main,True); end; procedure TfrmCLYouKa_Qty.N2Click(Sender: TObject); begin SelOKNo(CDS_Main,False); end; procedure TfrmCLYouKa_Qty.TBDelClick(Sender: TObject); begin if CDS_Main.IsEmpty then Exit; if Trim(CDS_Main.fieldbyname('YKID').AsString)<>'' then begin if Application.MessageBox('确定要删除数据吗?','提示',32+4)<>IDYES then Exit; try ADOQueryCmd.Connection.BeginTrans; with ADOQueryCmd do begin Close; sql.Clear; sql.Add(' delete from CL_YKYL_Main where YKID='''+Trim(CDS_Main.fieldbyname('YKID').AsString)+''''); ExecSQL; end; ADOQueryCmd.Connection.CommitTrans; CDS_Main.Delete; except ADOQueryCmd.Connection.RollbackTrans; Application.MessageBox('删除异常!','提示',0); end; end else begin CDS_Main.Delete; end; end; procedure TfrmCLYouKa_Qty.TBAddClick(Sender: TObject); begin try frmCLYouliang_Sub:=TfrmCLYouliang_Sub.Create(Application); with frmCLYouliang_Sub do begin FBCId:=''; frmCLYouliang_Sub.canshu3:=Trim(Self.canshu3); if ShowModal=1 then begin Self.InitGrid(); end; end; finally frmCLYouliang_Sub.Free; end; end; procedure TfrmCLYouKa_Qty.TBEditClick(Sender: TObject); begin if CDS_Main.IsEmpty then Exit; try frmCLYouliang_Sub:=TfrmCLYouliang_Sub.Create(Application); with frmCLYouliang_Sub do begin ToolButton1.Visible:=false; ToolButton2.Visible:=false; FBCId:=Trim(CDS_Main.fieldbyname('YKID').AsString); if ShowModal=1 then begin Self.InitGrid(); end; end; finally; frmCLYouliang_Sub.Free; end; end; procedure TfrmCLYouKa_Qty.SPIDChange(Sender: TObject); begin TBFind.Click; end; procedure TfrmCLYouKa_Qty.SPSpecChange(Sender: TObject); begin TBFind.Click; end; procedure TfrmCLYouKa_Qty.GCNameChange(Sender: TObject); begin TBFind.Click; end; procedure TfrmCLYouKa_Qty.cxTabControl1Change(Sender: TObject); begin //setstatus(); InitGrid(); end; procedure TfrmCLYouKa_Qty.TTJClick(Sender: TObject); begin if CDS_Main.IsEmpty then exit; with ADOQueryCmd do begin close; sql.Clear; sql.Add('Update CL_YKYL_Main set '); sql.Add('Chker='''+trim(DName)+''',Chkstatus=''已提交'',Chkdate=getdate() '); sql.Add('where YKID='''+trim(CDS_Main.fieldbyname('YKID').AsString)+''''); ExecSQL; end; CDS_Main.Delete; application.MessageBox('操作成功','提示'); end; procedure TfrmCLYouKa_Qty.TCXTJClick(Sender: TObject); begin if CDS_Main.IsEmpty then exit; with ADOQueryCmd do begin close; sql.Clear; sql.Add('Update CL_YKYL_Main set '); sql.Add('Chker='''',Chkstatus='''',Chkdate=NULL '); sql.Add('where YKID='''+trim(CDS_Main.fieldbyname('YKID').AsString)+''''); ExecSQL; end; CDS_Main.Delete; application.MessageBox('操作成功','提示'); end; end.