⭐ 欢迎来到虫虫下载站! | 📦 资源下载 📁 资源专辑 ℹ️ 关于我们
⭐ 虫虫下载站

📄 mc_dcbysj.pas

📁 1、系统环境要求:所有程序均在Windows98/XP操作系统下测试运行。 2、建议用户在系统上安装DELPHI7.0企业版。 3、如果数据库为SQL Server数据库
💻 PAS
字号:
unit MC_DCBYSJ;

interface

uses
  Windows, Messages, SysUtils, Classes, Graphics, Controls, Forms, Dialogs,
  StdCtrls, Buttons, Db, DBTables;

type
  TDCBYSJ = class(TForm)
    BitBtn1: TBitBtn;
    BitBtn2: TBitBtn;
    BitBtn3: TBitBtn;
    BitBtn4: TBitBtn;
    BitBtn5: TBitBtn;
    Query1: TQuery;
    procedure FormClose(Sender: TObject; var Action: TCloseAction);
    procedure BitBtn1Click(Sender: TObject);
    procedure BitBtn2Click(Sender: TObject);
    procedure BitBtn3Click(Sender: TObject);
    procedure BitBtn4Click(Sender: TObject);
    procedure BitBtn5Click(Sender: TObject);
    procedure FormShow(Sender: TObject);
  private
    { Private declarations }
  public
    { Public declarations }
  end;

var
  DCBYSJ: TDCBYSJ;

implementation

uses MC_MainForm;

{$R *.DFM}
procedure TDCBYSJ.FormShow(Sender: TObject); //启动时判断操作员的操作权限
begin
  if MainForm.Query1.Locate('使用选项','导出本月收费数据',[loCaseInsensitive]) then
  begin
    if MainForm.Query1.FieldByName('读写').AsString='读' then
    begin
      BitBtn1.Enabled:=False;
      BitBtn2.Enabled:=False;
      BitBtn3.Enabled:=False;
      BitBtn4.Enabled:=False;
      BitBtn5.Enabled:=False;
    end;
  end;
end;
procedure TDCBYSJ.BitBtn1Click(Sender: TObject);   //初始化下月水表信息
begin
  if MessageDLG('是否导出本月水费信息?',mtCustom,[mbYes,mbNO],0)=mrYes then
  begin
  with Query1 do
  begin
    Close;
    SQL.Clear;
    SQL.Add('Insert 历史水费(水表编号,户主姓名,收费标准,收费金额,计费起始日期,计费终止日期,上月读数,使用数,应收金额,实收金额,剩余金额,本月余额)');
    SQL.Add('Select 水表编号,户主姓名,收费标准,收费金额,计费起始日期,计费终止日期,上月读数,使用数,应收金额,实收金额,剩余金额,本月余额 From 水费');
    ExecSQL;   //将本月水费导出到历史水费表中
    Close;
    SQL.Clear;
    SQL.Add('Update 水费 Set 计费起始日期=计费终止日期,上月读数=本月读数,使用数=:B,应收金额=:A,实收金额=:B,剩余金额=剩余金额+本月余额,本月余额=:A');
    ParamByname('B').AsInteger:=0;
    ParamByname('A').AsFloat:=0;
    ExecSQL;  //初始化下月水表信息
  end;
  ShowMessage('操作完毕!!');
  end;
end;

procedure TDCBYSJ.BitBtn2Click(Sender: TObject);   //初始化下月电费信息
begin
  if MessageDLG('是否导出本月电费信息?',mtCustom,[mbYes,mbNO],0)=mrYes then
  begin
    with Query1 do
    begin
      Close;
      SQL.Clear;
      SQL.Add('Insert 历史电费(电表编号,户主姓名,收费标准,收费金额,计费起始日期,计费终止日期,上月读数,使用数,应收金额,实收金额,剩余金额,本月余额)');
      SQL.Add('Select 电表编号,户主姓名,收费标准,收费金额,计费起始日期,计费终止日期,上月读数,使用数,应收金额,实收金额,剩余金额,本月余额 From 电费');
      ExecSQL;     //将本月电费导出到历史电费表中
      Close;
      SQL.Clear;
      SQL.Add('Update 电费 Set 计费起始日期=计费终止日期,上月读数=本月读数,使用数=:B,应收金额=:A,实收金额=:B,剩余金额=剩余金额+本月余额,本月余额=:A');
      ParamByname('B').AsInteger:=0;
      ParamByname('A').AsFloat:=0;
      ExecSQL;     //初始化下月电费信息
    end;
    ShowMessage('操作完毕!!');
  end;
end;

procedure TDCBYSJ.BitBtn3Click(Sender: TObject);    //初始化下月煤气费信息
begin
 if MessageDLG('是否导出本月煤气费信息?',mtCustom,[mbYes,mbNO],0)=mrYes then
 begin
   with Query1 do
   begin
     Close;
     SQL.Clear;
     SQL.Add('Insert 历史煤气费(煤气表编号,户主姓名,收费标准,收费金额,计费起始日期,计费终止日期,上月读数,使用数,应收金额,实收金额,剩余金额,本月余额)');
     SQL.Add('Select 煤气表编号,户主姓名,收费标准,收费金额,计费起始日期,计费终止日期,上月读数,使用数,应收金额,实收金额,剩余金额,本月余额 From 煤气费');
     ExecSQL;    //导出本月煤气信息到历史煤气表中
     Close;
     SQL.Clear;
     SQL.Add('Update 煤气费 Set 计费起始日期=计费终止日期,上月读数=本月读数,使用数=:B,应收金额=:A,实收金额=:B,剩余金额=剩余金额+本月余额,本月余额=:A');
     ParamByname('B').AsInteger:=0;
     ParamByname('A').AsFloat:=0;
     ExecSQL;     //初始化下月煤气费信息
   end;
   ShowMessage('操作完毕!!');
 end;
end;

procedure TDCBYSJ.BitBtn4Click(Sender: TObject);  //初始化下月常用费用
begin
  if MessageDLG('是否导出常用费信息?',mtCustom,[mbYes,mbNO],0)=mrYes then
  begin
  with Query1 do
  begin
    Close;
    SQL.Clear;
    SQL.Add('insert 历史常用费用(收费编号,户主姓名,费用科目,收费金额,计费起始日期,计费终止日期,应收金额,实收金额,剩余金额,减免金额,原因,本次余额,本次补交)');
    SQL.Add('Select 收费编号,户主姓名,费用科目,收费金额,计费起始日期,计费终止日期,应收金额,实收金额,剩余金额,减免金额,原因,本次余额,本次补交 From 常用费用');
    ExecSQL;  //将本月常用信息导出到历史常用费用
    Close;
    SQL.Clear;
    SQL.Add('Update 常用费用 Set 计费起始日期=计费终止日期,实收金额=:A,减免金额=:A,原因=:B,剩余金额=剩余金额+本次余额,本次余额=:A,本次补交=:A');
    ParamByName('A').AsFloat:=0;
    ParamByName('B').AsString:='空';
    ExecSQL;  //初始化下月常用费用
  end;
  ShowMessage('操作完毕');
  end;
end;

procedure TDCBYSJ.BitBtn5Click(Sender: TObject);   //初始化下月其他费用
begin
  if MessageDLG('是否导出其它费信息?',mtCustom,[mbYes,mbNO],0)=mrYes then
  begin
  with Query1 do
  begin
    Close;
    SQL.Clear;
    SQL.Add('Insert 历史其它费用(收费编号,户主姓名,建筑面积,使用面积,公有面积,私有面积');
    SQL.Add(',标准名称,标准金额,费用科目,收费金额,计费起始日期,计费终止日期,应收金额,实收金额,剩余金额');
    SQL.Add(',减免金额,原因,本次余额,本次补交)');
    SQL.Add('Select 收费编号,户主姓名,建筑面积,使用面积,公有面积,私有面积');
    SQL.Add(',标准名称,标准金额,费用科目,收费金额,计费起始日期,计费终止日期,应收金额,实收金额,剩余金额');
    SQL.Add(',减免金额,原因,本次余额,本次补交 From 其它费用表');
    ExecSQL;    //将本月其他信息导出到历史其他费用
    Close;
    SQL.Clear;
    SQL.Add('update 其它费用表 set 计费起始日期=计费终止日期,实收金额=:A,减免金额=:A,原因=:B,剩余金额=剩余金额+本次余额,本次余额=:A,本次补交=:A');
    ParamByName('A').AsFloat:=0;
    ParamByName('B').AsString:='空';
    ExecSQL;     //初始化下月其他费用
  end;
  ShowMessage('操作完毕');
  end;
end;

procedure TDCBYSJ.FormClose(Sender: TObject; var Action: TCloseAction);
begin
  DCBYSJ.release;
  DCBYSJ:=Nil;
end;
end.

⌨️ 快捷键说明

复制代码 Ctrl + C
搜索代码 Ctrl + F
全屏模式 F11
切换主题 Ctrl + Shift + D
显示快捷键 ?
增大字号 Ctrl + =
减小字号 Ctrl + -