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

📄 mc_cshbzfy.pas

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

interface

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

type
  TCSHBZFY = class(TForm)
    GroupBox1: TGroupBox;
    DBLookupComboBox1: TDBLookupComboBox;
    DataSource1: TDataSource;
    Query1: TQuery;
    Query1BDEDesigner: TStringField;
    Query1BDEDesigner2: TStringField;
    GroupBox2: TGroupBox;
    DBGrid1: TDBGrid;
    DataSource2: TDataSource;
    Table1: TTable;
    Table1BDEDesigner: TStringField;
    Table1BDEDesigner2: TStringField;
    Table1BDEDesigner7: TStringField;
    GroupBox3: TGroupBox;
    DBGrid2: TDBGrid;
    Table2: TTable;
    DataSource3: TDataSource;
    Table2BDEDesigner: TStringField;
    Table2BDEDesigner2: TStringField;
    Table2BDEDesigner3: TStringField;
    Table2BDEDesigner4: TStringField;
    Table2BDEDesigner6: TStringField;
    Table2BDEDesigner18: TStringField;
    GroupBox4: TGroupBox;
    DBGrid3: TDBGrid;
    GroupBox5: TGroupBox;
    Table3: TTable;
    DataSource4: TDataSource;
    Table3BDEDesigner: TStringField;
    Table3BDEDesigner2: TStringField;
    Table3BDEDesigner3: TStringField;
    Table3BDEDesigner4: TFloatField;
    Table3BDEDesigner5: TDateTimeField;
    Table3BDEDesigner6: TDateTimeField;
    Table3BDEDesigner7: TIntegerField;
    Table3BDEDesigner8: TIntegerField;
    Table3BDEDesigner9: TIntegerField;
    Table3BDEDesigner10: TFloatField;
    Table3BDEDesigner11: TFloatField;
    Table3BDEDesigner12: TFloatField;
    DBGrid4: TDBGrid;
    GroupBox6: TGroupBox;
    DBGrid5: TDBGrid;
    Table4: TTable;
    Table5: TTable;
    DataSource5: TDataSource;
    DataSource6: TDataSource;
    Table4BDEDesigner: TStringField;
    Table4BDEDesigner2: TStringField;
    Table4BDEDesigner3: TStringField;
    Table4BDEDesigner4: TFloatField;
    Table4BDEDesigner5: TDateTimeField;
    Table4BDEDesigner6: TDateTimeField;
    Table4BDEDesigner7: TIntegerField;
    Table4BDEDesigner8: TIntegerField;
    Table4BDEDesigner9: TIntegerField;
    Table4BDEDesigner10: TFloatField;
    Table4BDEDesigner11: TFloatField;
    Table4BDEDesigner12: TFloatField;
    Table5BDEDesigner: TStringField;
    Table5BDEDesigner2: TStringField;
    Table5BDEDesigner3: TStringField;
    Table5BDEDesigner4: TFloatField;
    Table5BDEDesigner5: TDateTimeField;
    Table5BDEDesigner6: TDateTimeField;
    Table5BDEDesigner7: TIntegerField;
    Table5BDEDesigner8: TIntegerField;
    Table5BDEDesigner9: TIntegerField;
    Table5BDEDesigner10: TFloatField;
    Table5BDEDesigner11: TFloatField;
    Table5BDEDesigner12: TFloatField;
    Query2: TQuery;
    GroupBox7: TGroupBox;
    DBGrid6: TDBGrid;
    DataSource7: TDataSource;
    BitBtn1: TBitBtn;
    BitBtn2: TBitBtn;
    BitBtn3: TBitBtn;
    BitBtn6: TBitBtn;
    Query3: TQuery;
    BitBtn4: TBitBtn;
    procedure FormClose(Sender: TObject; var Action: TCloseAction);
    procedure BitBtn6Click(Sender: TObject);
    procedure BitBtn3Click(Sender: TObject);
    procedure BitBtn1Click(Sender: TObject);
    procedure BitBtn2Click(Sender: TObject);
    procedure FormShow(Sender: TObject);
    procedure BitBtn4Click(Sender: TObject);
  private
    { Private declarations }
  public
    { Public declarations }
  end;

var
  CSHBZFY: TCSHBZFY;

implementation

uses MC_FYBZSD;

{$R *.DFM}

procedure TCSHBZFY.FormClose(Sender: TObject; var Action: TCloseAction);
begin
     CSHBZFY.Release;
     CSHBZFY:=Nil;
end;

procedure TCSHBZFY.BitBtn6Click(Sender: TObject);
begin
     Close;
end;

procedure TCSHBZFY.BitBtn3Click(Sender: TObject);
begin
     if Table3.RecordCount<>0 then
     if MessageDLg('是否更新['+Table3.FieldByName('户主姓名').AsString
                   +']家的收费标准?'
                   ,mtCustom,[mbYes,mbNo],0)=mrYes then
        begin
             Query3.CLose;
             Query3.SQL.Clear;
             Query3.SQL.Add('Update 水费 set 收费标准=:A,收费金额=:B');
             Query3.SQL.Add('where 水表编号=:C');
             Query3.ParamByName('A').AsString:=Query2.Fieldbyname('费用类型').AsString;
             Query3.ParamByName('B').AsFloat:=Query2.Fieldbyname('水费').AsFloat;
             Query3.paramByName('C').AsString:=Table3.FieldByName('水表编号').AsSTring;
             Query3.ExecSQL;
             //---------------------------------------------------------
             Query3.CLose;
             Query3.SQL.Clear;
             Query3.SQL.Add('Update 电费 set 收费标准=:A,收费金额=:B');
             Query3.SQL.Add('where 电表编号=:C');
             Query3.ParamByName('A').AsString:=Query2.Fieldbyname('费用类型').AsString;
             Query3.ParamByName('B').AsFloat:=Query2.Fieldbyname('电费').AsFloat;
             Query3.paramByName('C').AsString:=Table4.FieldByName('电表编号').AsSTring;
             Query3.ExecSQL;
             //---------------------------------------------------------
             Query3.CLose;
             Query3.SQL.Clear;
             Query3.SQL.Add('Update 煤气费 set 收费标准=:A,收费金额=:B');
             Query3.SQL.Add('where 煤气表编号=:C');
             Query3.ParamByName('A').AsString:=Query2.Fieldbyname('费用类型').AsString;
             Query3.ParamByName('B').AsFloat:=Query2.Fieldbyname('煤气费').AsFloat;
             Query3.paramByName('C').AsString:=Table5.FieldByName('煤气表编号').AsSTring;
             Query3.ExecSQL;
             //---------------------------------------------------------
             Table3.Refresh;
             Table4.Refresh;
             Table5.Refresh;
             ShowMessage('更新成功.');
        end;
end;

procedure TCSHBZFY.BitBtn1Click(Sender: TObject);
begin
     if Table2.RecordCount<>0 then
     if MessageDLG('是否更新['+Table1.FieldByName('大楼名称')
                  .AsString+']大楼里所有业户的费用标准'
                  ,mtCustom,[mbYes,mbNo],0)=mrYes then
        begin
             //------------------------------------------------------
             Query3.Close;
             Query3.SQL.Clear;
             Query3.SQL.Add('Update 水费 set 收费标准=:A,收费金额=:B');
             Query3.SQL.Add('where 水表编号 in (select 房间编号 from 房屋信息表 where 区名=:C and 大楼名=:D)');
             Query3.ParamByName('A').AsString:=Query2.FieldByName('费用类型').AsString;
             Query3.ParamByName('B').AsFloat:=Query2.FieldByName('水费').AsFloat;
             Query3.ParamByName('C').AsString:=Query1.FieldByName('小区名').AsString;
             Query3.ParamByName('D').AsString:=Table1.FieldByName('大楼名称').AsString;
             Query3.ExecSQL;
             //------------------------------------------------------
             Query3.Close;
             Query3.SQL.Clear;
             Query3.SQL.Add('Update 电费 set 收费标准=:A,收费金额=:B');
             Query3.SQL.Add('where 电表编号 in (select 房间编号 from 房屋信息表 where 区名=:C and 大楼名=:D)');
             Query3.ParamByName('A').AsString:=Query2.FieldByName('费用类型').AsString;
             Query3.ParamByName('B').AsFloat:=Query2.FieldByName('电费').AsFloat;
             Query3.ParamByName('C').AsString:=Query1.FieldByName('小区名').AsString;
             Query3.ParamByName('D').AsString:=Table1.FieldByName('大楼名称').AsString;
             Query3.ExecSQL;
             //------------------------------------------------------
             Query3.Close;
             Query3.SQL.Clear;
             Query3.SQL.Add('Update 煤气费 set 收费标准=:A,收费金额=:B');
             Query3.SQL.Add('where 煤气表编号 in (select 房间编号 from 房屋信息表 where 区名=:C and 大楼名=:D)');
             Query3.ParamByName('A').AsString:=Query2.FieldByName('费用类型').AsString;
             Query3.ParamByName('B').AsFloat:=Query2.FieldByName('煤气费').AsFloat;
             Query3.ParamByName('C').AsString:=Query1.FieldByName('小区名').AsString;
             Query3.ParamByName('D').AsString:=Table1.FieldByName('大楼名称').AsString;
             Query3.ExecSQL;
             //------------------------------------------------------
             ShowMessage('更新完毕');
             Table3.Refresh;
             Table4.Refresh;
             Table5.Refresh;
        end;
end;

procedure TCSHBZFY.BitBtn2Click(Sender: TObject);
begin
     if Query1.RecordCount<>0 then
     if MessageDLG('是否更新['+Query1.FieldByName('小区名')
                  .AsString+']小区里所有业户的费用标准'
                  ,mtCustom,[mbYes,mbNo],0)=mrYes then
        begin
             //------------------------------------------------------
             Query3.Close;
             Query3.SQL.Clear;
             Query3.SQL.Add('Update 水费 set 收费标准=:A,收费金额=:B');
             Query3.SQL.Add('where 水表编号 in (select 房间编号 from 房屋信息表 where 区名=:C )');
             Query3.ParamByName('A').AsString:=Query2.FieldByName('费用类型').AsString;
             Query3.ParamByName('B').AsFloat:=Query2.FieldByName('水费').AsFloat;
             Query3.ParamByName('C').AsString:=Query1.FieldByName('小区名').AsString;
             Query3.ExecSQL;
             //------------------------------------------------------
             Query3.Close;
             Query3.SQL.Clear;
             Query3.SQL.Add('Update 电费 set 收费标准=:A,收费金额=:B');
             Query3.SQL.Add('where 电表编号 in (select 房间编号 from 房屋信息表 where 区名=:C)');
             Query3.ParamByName('A').AsString:=Query2.FieldByName('费用类型').AsString;
             Query3.ParamByName('B').AsFloat:=Query2.FieldByName('电费').AsFloat;
             Query3.ParamByName('C').AsString:=Query1.FieldByName('小区名').AsString;
             Query3.ExecSQL;
             //------------------------------------------------------
             Query3.Close;
             Query3.SQL.Clear;
             Query3.SQL.Add('Update 煤气费 set 收费标准=:A,收费金额=:B');
             Query3.SQL.Add('where 煤气表编号 in (select 房间编号 from 房屋信息表 where 区名=:C)');
             Query3.ParamByName('A').AsString:=Query2.FieldByName('费用类型').AsString;
             Query3.ParamByName('B').AsFloat:=Query2.FieldByName('煤气费').AsFloat;
             Query3.ParamByName('C').AsString:=Query1.FieldByName('小区名').AsString;
             Query3.ExecSQL;
             //------------------------------------------------------
             ShowMessage('更新完毕');
             Table3.Refresh;
             Table4.Refresh;
             Table5.Refresh;
        end;
end;

procedure TCSHBZFY.FormShow(Sender: TObject);
begin
     DBLookupComboBox1.KeyValue:=Query1.FieldByName('小区名').AsString;
end;

procedure TCSHBZFY.BitBtn4Click(Sender: TObject);
begin
     if not Assigned(FYBZSD) then
        begin
        FYBZSD:=TFYBZSD.Create(Self);
        FYBZSD.ShowModal;
        Query2.close;
        Query2.Open;
        end;
end;

end.

⌨️ 快捷键说明

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