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

📄 mc_sdmqfdy.pas

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

interface

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

type
  TSDMQFDY = class(TForm)
    GroupBox1: TGroupBox;
    DBLookupComboBox1: TDBLookupComboBox;
    GroupBox2: TGroupBox;
    DBGrid1: TDBGrid;
    GroupBox3: TGroupBox;
    ListBox1: TListBox;
    DataSource1: TDataSource;
    DataSource2: TDataSource;
    Table2: TTable;
    Table2BDEDesigner2: TStringField;
    Table2BDEDesigner5: TIntegerField;
    Table2BDEDesigner6: TStringField;
    Table2BDEDesigner7: TStringField;
    Table2BDEDesigner: TStringField;
    Query1: TQuery;
    Query1BDEDesigner: TStringField;
    Query1BDEDesigner2: TStringField;
    Table1: TTable;
    Table1BDEDesigner: TStringField;
    Table1BDEDesigner2: TStringField;
    Table1BDEDesigner3: TStringField;
    Table1BDEDesigner4: TStringField;
    Table1BDEDesigner5: TStringField;
    Table1BDEDesigner6: TStringField;
    Table1BDEDesigner7: TStringField;
    DataSource3: TDataSource;
    GroupBox4: TGroupBox;
    DBGrid2: TDBGrid;
    PageControl1: TPageControl;
    TabSheet1: TTabSheet;
    TabSheet2: TTabSheet;
    TabSheet3: TTabSheet;
    BitBtn1: TBitBtn;
    DBGrid3: TDBGrid;
    DBGrid4: TDBGrid;
    DBGrid5: TDBGrid;
    BitBtn2: TBitBtn;
    BitBtn3: TBitBtn;
    BitBtn4: TBitBtn;
    Query2: TQuery;
    DataSource4: TDataSource;
    Query3: TQuery;
    DataSource5: TDataSource;
    Query4: TQuery;
    DataSource6: TDataSource;
    QuickRep1: TQuickRep;
    PageHeaderBand1: TQRBand;
    QRLabel1: TQRLabel;
    QRLabel2: TQRLabel;
    Query2BDEDesigner: TStringField;
    Query2BDEDesigner2: TStringField;
    Query2BDEDesigner3: TStringField;
    Query2BDEDesigner4: TFloatField;
    Query2BDEDesigner5: TDateTimeField;
    Query2BDEDesigner6: TDateTimeField;
    Query2BDEDesigner7: TIntegerField;
    Query2BDEDesigner8: TIntegerField;
    Query2BDEDesigner9: TIntegerField;
    Query2BDEDesigner10: TFloatField;
    Query2BDEDesigner11: TFloatField;
    Query2BDEDesigner12: TFloatField;
    DetailBand1: TQRBand;
    QRLabel3: TQRLabel;
    QRLabel4: TQRLabel;
    QRDBText1: TQRDBText;
    QRDBText2: TQRDBText;
    QRLabel5: TQRLabel;
    QRLabel6: TQRLabel;
    QRLabel7: TQRLabel;
    QRDBText3: TQRDBText;
    QRDBText4: TQRDBText;
    QRDBText5: TQRDBText;
    QRLabel8: TQRLabel;
    QRDBText6: TQRDBText;
    QRShape2: TQRShape;
    QRShape3: TQRShape;
    QRShape4: TQRShape;
    QRShape1: TQRShape;
    SummaryBand1: TQRBand;
    QRLabel9: TQRLabel;
    QRSysData1: TQRSysData;
    QRLabel10: TQRLabel;
    QRExpr1: TQRExpr;
    QRLabel11: TQRLabel;
    QRLabel12: TQRLabel;
    QRExpr2: TQRExpr;
    QuickRep2: TQuickRep;
    QRBand1: TQRBand;
    QRLabel13: TQRLabel;
    QRLabel14: TQRLabel;
    QRLabel15: TQRLabel;
    QRSysData2: TQRSysData;
    QRLabel16: TQRLabel;
    QRBand2: TQRBand;
    QRLabel17: TQRLabel;
    QRLabel18: TQRLabel;
    QRDBText7: TQRDBText;
    QRDBText8: TQRDBText;
    QRLabel19: TQRLabel;
    QRLabel20: TQRLabel;
    QRLabel21: TQRLabel;
    QRDBText9: TQRDBText;
    QRDBText10: TQRDBText;
    QRDBText11: TQRDBText;
    QRLabel22: TQRLabel;
    QRDBText12: TQRDBText;
    QRShape5: TQRShape;
    QRShape6: TQRShape;
    QRShape7: TQRShape;
    QRShape8: TQRShape;
    QRBand3: TQRBand;
    QRExpr3: TQRExpr;
    QRLabel23: TQRLabel;
    QRLabel24: TQRLabel;
    QRExpr4: TQRExpr;
    Query3BDEDesigner: TStringField;
    Query3BDEDesigner2: TStringField;
    Query3BDEDesigner3: TStringField;
    Query3BDEDesigner4: TFloatField;
    Query3BDEDesigner5: TDateTimeField;
    Query3BDEDesigner6: TDateTimeField;
    Query3BDEDesigner7: TIntegerField;
    Query3BDEDesigner8: TIntegerField;
    Query3BDEDesigner9: TIntegerField;
    Query3BDEDesigner10: TFloatField;
    Query3BDEDesigner11: TFloatField;
    Query3BDEDesigner12: TFloatField;
    QuickRep3: TQuickRep;
    QRBand4: TQRBand;
    QRLabel25: TQRLabel;
    QRLabel26: TQRLabel;
    QRLabel27: TQRLabel;
    QRSysData3: TQRSysData;
    QRLabel28: TQRLabel;
    QRBand5: TQRBand;
    QRLabel29: TQRLabel;
    QRLabel30: TQRLabel;
    QRDBText13: TQRDBText;
    QRDBText14: TQRDBText;
    QRLabel31: TQRLabel;
    QRLabel32: TQRLabel;
    QRLabel33: TQRLabel;
    QRDBText15: TQRDBText;
    QRDBText16: TQRDBText;
    QRDBText17: TQRDBText;
    QRLabel34: TQRLabel;
    QRDBText18: TQRDBText;
    QRShape9: TQRShape;
    QRShape10: TQRShape;
    QRShape11: TQRShape;
    QRShape12: TQRShape;
    QRBand6: TQRBand;
    QRExpr5: TQRExpr;
    QRLabel35: TQRLabel;
    QRLabel36: TQRLabel;
    QRExpr6: TQRExpr;
    Query4BDEDesigner: TStringField;
    Query4BDEDesigner2: TStringField;
    Query4BDEDesigner3: TStringField;
    Query4BDEDesigner4: TFloatField;
    Query4BDEDesigner5: TDateTimeField;
    Query4BDEDesigner6: TDateTimeField;
    Query4BDEDesigner7: TIntegerField;
    Query4BDEDesigner8: TIntegerField;
    Query4BDEDesigner9: TIntegerField;
    Query4BDEDesigner10: TFloatField;
    Query4BDEDesigner11: TFloatField;
    Query4BDEDesigner12: TFloatField;
    Table1BDEDesigner8: TStringField;
    procedure FormClose(Sender: TObject; var Action: TCloseAction);
    procedure DBGrid2DblClick(Sender: TObject);
    procedure ListBox1DblClick(Sender: TObject);
    procedure BitBtn1Click(Sender: TObject);
    procedure QuickRep1Preview(Sender: TObject);
    procedure BitBtn2Click(Sender: TObject);
    procedure QuickRep2Preview(Sender: TObject);
    procedure BitBtn3Click(Sender: TObject);
    procedure QuickRep3Preview(Sender: TObject);
    procedure BitBtn4Click(Sender: TObject);
  private
    { Private declarations }
  public
    { Public declarations }
  end;

var
  SDMQFDY: TSDMQFDY;

implementation

uses MC_SDFSQ, MC_DYYLBrose;

{$R *.DFM}

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

procedure TSDMQFDY.DBGrid2DblClick(Sender: TObject);
var a,b:integer;
begin
     For a:=0 to ListBox1.Items.Count-1 do
     begin
          if ListBox1.Items.Strings[a]=Table1.FieldByName('房间编号').AsString then
             begin
                  b:=0;
                  Break;
             end else b:=1;
     end;
     if b=0 then
        begin
             ShowMessage('此大楼以被选种!!');
        end
     else
        begin
             ListBox1.Items.Add(Table1.FieldByName('房间编号').AsString);
        end;
end;

procedure TSDMQFDY.ListBox1DblClick(Sender: TObject);
begin
     if ListBox1.Items.Count<>0 then
        begin
             ListBox1.Items.Delete(ListBox1.ItemIndex);
        end;
end;

procedure TSDMQFDY.BitBtn1Click(Sender: TObject);
var ZD: String;
    ZDZ: Array of String;
    a:integer;
begin
     if ListBox1.Items.Count=0 then
        begin
             ShowMessage('请选择要浏览的对象.');
        end
     else
        begin
             SetLength(ZDZ,ListBox1.Items.Count);//分配动态变量,记得释放掉
             ZD:='大楼名';
             Query2.Close;
             Query2.SQL.Clear;
             Query2.SQL.Add('Select 水表编号,户主姓名,收费标准,收费金额,计费起始日期,计费终止日期,本月读数,上月读数,使用数,应收金额,实收金额,剩余金额 From 水费 ');
             Query2.SQL.Add('Where 水表编号 in (');
             Query2.SQL.Add('Select 房间编号 From 房屋信息表 ');
             Query2.SQL.Add('Where 房间编号=:A ');
             Query2.ParamByName('A').AsString:=ListBox1.Items.Strings[0];
             For a:=1 to ListBox1.Items.Count-1 do
             begin
                  ZDZ[a]:=ListBox1.Items.Strings[a];
                  Query2.SQL.Add(' or 房间编号='''+ZDZ[a]+'''');
             end;
             Query2.SQL.Add(')');
             Query2.Open;
//-------------------------------------------------------------------------------------------------------------
             Query3.Close;
             Query3.SQL.Clear;
             Query3.SQL.Add('Select 电表编号,户主姓名,收费标准,收费金额,计费起始日期,计费终止日期,本月读数,上月读数,使用数,应收金额,实收金额,剩余金额 From 电费 Where');
             Query3.SQL.Add('电表编号 in (');
             Query3.SQL.Add('Select 房间编号 From 房屋信息表 Where 房间编号=:A');
             Query3.ParamByName('A').AsString:=ListBox1.Items.Strings[0];
             For a:=1 to ListBox1.Items.Count-1 do
             begin
                  ZDZ[a]:=ListBox1.Items.Strings[a];
                  Query3.SQL.Add(' or 房间编号='''+ZDZ[a]+'''');
             end;
             Query3.SQL.Add(')');
             Query3.Open;
//-------------------------------------------------------------------------------------------------------------
             Query4.Close;
             Query4.SQL.Clear;
             Query4.SQL.Add('Select 煤气表编号,户主姓名,收费标准,收费金额,计费起始日期,计费终止日期,本月读数,上月读数,使用数,应收金额,实收金额,剩余金额 From 煤气费 Where');
             Query4.SQL.Add('煤气表编号 in (');
             Query4.SQL.Add('Select 房间编号 From 房屋信息表 Where 房间编号=:A');
             Query4.ParamByName('A').AsString:=ListBox1.Items.Strings[0];
             For a:=1 to ListBox1.Items.Count-1 do
             begin
                  ZDZ[a]:=ListBox1.Items.Strings[a];
                  Query4.SQL.Add(' or 房间编号='''+ZDZ[a]+'''');
             end;
             Query4.SQL.Add(')');
             Query4.Open;
//--------------------------------------------------------------------------------------
                     ZDZ:=Nil;//释放内存空间
                end;
end;

procedure TSDMQFDY.QuickRep1Preview(Sender: TObject);
begin
     DYYLBrose.QRPreview1.QRPrinter:=QuickRep1.QRPrinter;
end;

procedure TSDMQFDY.BitBtn2Click(Sender: TObject);
begin
     if Query2.Active then
     if Query2.RecordCount<>0 then
        begin
             DYYLBrose.Show;
             QuickRep1.Preview;
        end;
end;

procedure TSDMQFDY.QuickRep2Preview(Sender: TObject);
begin
     DYYLBrose.QRPreview1.QRPrinter:=QuickRep2.QRPrinter;
end;

procedure TSDMQFDY.BitBtn3Click(Sender: TObject);
begin
     if Query3.Active then
     if Query3.RecordCount<>0 then
        begin
             DYYLBrose.Show;
             QuickRep2.Preview;
        end;
end;

procedure TSDMQFDY.QuickRep3Preview(Sender: TObject);
begin
     DYYLBrose.QRPreview1.QRPrinter:=QuickRep3.QRPrinter;
end;

procedure TSDMQFDY.BitBtn4Click(Sender: TObject);
begin
     if Query4.Active then
     if Query4.RecordCount<>0 then
        begin
             DYYLBrose.Show;
             QuickRep3.Preview;
        end;
end;

end.

⌨️ 快捷键说明

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