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

📄 mc_yzxxdj.pas

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

interface

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

type
  TYZXXDJ = class(TForm)
    GroupBox1: TGroupBox;
    GroupBox2: TGroupBox;
    GroupBox3: TGroupBox;
    DBLookupComboBox1: TDBLookupComboBox;
    DBGrid1: TDBGrid;
    DBGrid2: TDBGrid;
    GroupBox4: TGroupBox;
    Query1: TQuery;
    DataSource1: TDataSource;
    Query1BDEDesigner: TStringField;
    Query1BDEDesigner2: TStringField;
    Table1: TTable;
    Table1BDEDesigner: TStringField;
    Table1BDEDesigner2: TStringField;
    DataSource2: TDataSource;
    Table2: TTable;
    DataSource3: TDataSource;
    Table2BDEDesigner: TStringField;
    Table2BDEDesigner2: TStringField;
    Table2BDEDesigner3: TStringField;
    Table1BDEDesigner3: TStringField;
    BitBtn1: TBitBtn;
    DBGrid3: TDBGrid;
    Table3: TTable;
    DataSource4: TDataSource;
    Panel1: TPanel;
    BitBtn2: TBitBtn;
    BitBtn3: TBitBtn;
    BitBtn4: TBitBtn;
    BitBtn5: TBitBtn;
    Table2BDEDesigner4: TStringField;
    CheckBox1: TCheckBox;
    Query2: TQuery;
    Table2BDEDesigner5: TStringField;
    Table2BDEDesigner6: TStringField;
    Table3BDEDesigner: TStringField;
    Table3BDEDesigner2: TStringField;
    Table3BDEDesigner3: TStringField;
    Table3BDEDesigner4: TStringField;
    Table3BDEDesigner5: TStringField;
    Table3BDEDesigner6: TStringField;
    Table3BDEDesigner7: TStringField;
    Table3BDEDesigner8: TStringField;
    Table3BDEDesigner9: TStringField;
    Table3BDEDesigner10: TStringField;
    Table3BDEDesigner11: TDateTimeField;
    Table3BDEDesigner12: TDateTimeField;
    Table3BDEDesigner13: TDateTimeField;
    Table3BDEDesigner14: TDateTimeField;
    Table3BDEDesigner15: TStringField;
    Table3BDEDesigner16: TStringField;
    Table3BDEDesigner17: TStringField;
    Table3BDEDesigner18: TStringField;
    Table3BDEDesigner19: TStringField;
    Table3BDEDesigner20: TStringField;
    Table3BDEDesigner21: TStringField;
    RadioButton1: TRadioButton;
    RadioButton2: TRadioButton;
    RadioButton3: TRadioButton;
    Table2BDEDesigner7: TFloatField;
    Table2BDEDesigner8: TFloatField;
    Table2BDEDesigner9: TFloatField;
    Table2BDEDesigner10: TFloatField;
    Edit1: TEdit;
    SpeedButton1: TSpeedButton;
    Table2BDEDesigner11: TStringField;
    Table2BDEDesigner12: TStringField;
    BitBtn6: TBitBtn;
    procedure FormClose(Sender: TObject; var Action: TCloseAction);
    procedure FormShow(Sender: TObject);
    procedure BitBtn5Click(Sender: TObject);
    procedure DBGrid2DblClick(Sender: TObject);
    procedure BitBtn1Click(Sender: TObject);
    procedure BitBtn2Click(Sender: TObject);
    procedure CheckBox1Click(Sender: TObject);
    procedure BitBtn4Click(Sender: TObject);
    procedure BitBtn3Click(Sender: TObject);
    procedure RadioButton3Click(Sender: TObject);
    procedure SpeedButton1Click(Sender: TObject);
    procedure BitBtn6Click(Sender: TObject);
  private
    { Private declarations }
  public
    { Public declarations }
  end;

var
  YZXXDJ: TYZXXDJ;

implementation

uses MC_FWXXDJ, MC_YZXXLL, MC_MainForm, MC_ZHCKXX;

{$R *.DFM}
//在窗体初始化时判断操作员的权限
procedure TYZXXDJ.FormShow(Sender: TObject);
begin
  DBLookupComboBox1.KeyValue:=Query1.FieldbyName('小区名').AsString;
  if MainForm.Query1.Locate('使用选项','业主信息登记',[loCaseInsensitive]) then
    begin
     if MainForm.query1.FieldByname('读写').AsString='读' then
      begin
       BitBtn2.Enabled:=False;
       BitBtn3.Enabled:=False;
       BitBtn4.Enabled:=False;
      end;
    end;
end;
procedure TYZXXDJ.DBGrid2DblClick(Sender: TObject);  //选择业主信息
begin
  If Table2.RecordCount <> 0 Then   //如果房屋信息不为空
  If Table3.RecordCount <> 0 Then   //如果业主信息不为空
  if not Table3.Locate('购入房编号',Table2.FieldByName('房间编号').AsString,[loCaseInsensitive]) then
  begin
    ShowMessage('没有发现此房业主信息.');
  end;
end;
procedure TYZXXDJ.BitBtn1Click(Sender: TObject);  //查看房屋详细信息
begin
  If Table2.RecordCount <> 0 Then
  If Not Assigned(FWXXDJ) Then
   begin
     FWXXDJ:=TFWXXDJ.Create(Self);
     FWXXDJ.Query1.Locate('房间编号',Table2.FieldByName('房间编号').AsString,[loCaseInsensitive]);
     FWXXDJ.ShowModal;
   End
  Else
   begin
     FWXXDJ.Query1.Locate('房间编号',Table2.FieldByName('房间编号').AsString,[loCaseInsensitive]);
     FWXXDJ.ShowModal;
   end;
end;
procedure TYZXXDJ.BitBtn2Click(Sender: TObject);   //添加新业主
begin
  If Table2.RecordCount = 0 Then  //如果房屋信息
  begin
     ShowMessage('请选择业主登记的房屋信息');
  End
  Else
  if Table2.FieldByName('是否空闲').AsString='居住' then  //如果此房间已有人居住,提示
     ShowMessage('此房已有业主居住')
  Else
  if Table2.FieldByName('是否空闲').AsSTring='出租' then   //如果此房间已出租,提示
     ShowMessage('此房已经出租')
  Else
  if Table2.FieldByName('是否空闲').AsString='空闲' then   //如果房间空闲,调入业主登记窗体
  If Not Assigned(YZXXLL) Then
    begin
      YZXXLL:=TYZXXLL.Create(Self);
      YZXXLL.ComboBox1.ItemIndex:=0;
      YZXXLL.ComboBox2.ItemIndex:=0;
      YZXXLL.Label19.Caption:=DBLookupComboBox1.KeyValue;
      YZXXLL.Label20.Caption:=Table1.FieldByName('大楼名称').AsString;
      YZXXLL.Label21.Caption:=Table2.FieldByName('房间号码').AsString;
      YZXXLL.Label22.Caption:=Table2.FieldByName('房间编号').AsString;
      YZXXLL.Edit1.Text:=Table2.FieldByName('房间编号').AsString;
      YZXXLL.ShowModal;
    end;
end;
procedure TYZXXDJ.CheckBox1Click(Sender: TObject); //选择房屋信息显示方式(空闲和非空闲)
begin
  If CheckBox1.Checked = True Then  Table2.Filtered:=True ELSE  Table2.Filtered:=False;
end;
//选择删除业主信息时,将删除业主信息,同时将人口信息(家庭成员)、费用信息删除,房屋信息的房主信息清除。
procedure TYZXXDJ.BitBtn4Click(Sender: TObject);   //删除业主信息
begin
If Table3.RecordCount <> 0 Then  //判断业主信息是否为空
if MessageDLg('确认删除['+Table3.FieldByName('业主姓名').AsString+']的信息?'
,mtCustom,[mbYes,mbNo],0)=mrYes then
begin
if Table2.Locate('房间编号',Table3.FieldbyName('购入房编号').AsString,[loCaseInsensitive]) then
   begin
    Table2.Edit;
    Table2.FieldByName('房主代号').AsString:='';   //清除房主代号
    Table2.FieldByName('房主姓名').AsString:='';   //清除房主姓名
    Table2.FieldByName('是否空闲').AsString:='空闲';    //设置房屋为空闲房
    Table2.Post;
   End
   else Exit;
   Query2.Close;
   Query2.SQL.Clear;
   Query2.SQL.Add('Delete 人口信息 Where 房间代号=:A');  //删除业主家庭成员信息
   Query2.ParamByName('A').AsSTring:=Table3.FieldByName('购入房编号').AsString;
   Query2.ExecSQL;
   Query2.Close;
   Query2.SQL.Clear;
   Query2.SQL.Add('Delete 水费 Where 水表编号=:A');  //删除水费信息
   Query2.ParamByName('A').AsString:=Table3.FieldbyName('购入房编号').AsString;
   Query2.ExecSQL;
   Query2.Close;
   Query2.SQL.Clear;
   Query2.SQL.Add('Delete 电费 Where 电表编号=:A');   //删除电费信息
   Query2.ParamByName('A').AsString:=Table3.FieldbyName('购入房编号').AsString;
   Query2.ExecSQL;
   Query2.Close;
   Query2.SQL.Clear;
   Query2.SQL.Add('Delete 煤气费 Where 煤气表编号=:A');   //删除煤气费信息
   Query2.ParamByName('A').AsString:=Table3.FieldbyName('购入房编号').AsString;
   Query2.ExecSQL;
   Query2.Close;
   Query2.SQL.Clear;
   Query2.SQL.Add('Delete 采暖费 Where 采暖费编号=:A');       //删除采暖费费信息
   Query2.ParamByName('A').AsString:=Table3.FieldbyName('购入房编号').AsString;
   Query2.ExecSQL;
   Query2.Close;
   Query2.SQL.Clear;
   Query2.SQL.Add('Delete 常用费用 where 收费编号=:A');     //删除常用费信息
   Query2.paramByName('A').AsString:=Table3.FieldbyName('购入房编号').AsString;
   Query2.ExecSQL;
   Query2.CLose;
   Query2.SQL.Clear;
   Query2.SQL.Add('Delete 其它费用表 Where 收费编号=:A');       //删除其它费信息
   Query2.paramByName('A').AsString:=Table3.FieldbyName('购入房编号').AsString;
   Query2.ExecSQL;
   Table3.Delete;
end;
end;
procedure TYZXXDJ.BitBtn3Click(Sender: TObject);    //修改业主信息
begin
  If Table3.RecordCount <> 0 Then
  If Not Assigned(YZXXLL) Then
  begin
    YZXXLL:=TYZXXLL.Create(Self);
    YZXXLL.BitBtn2.Caption:='确定保存[&A]';
    YZXXLL.Edit2.Text:=Table3.FieldByName('业主姓名').AsString;
    YZXXLL.Edit4.Text:=Table3.FieldByName('联系地址').AsString;
    YZXXLL.Edit3.Text:=Table3.FieldByName('手机').AsString;
    YZXXLL.Edit8.Text:=Table3.FieldByName('传呼').AsString;
    YZXXLL.Edit10.Text:=Table3.FieldByName('工作单位').AsString;
    YZXXLL.Edit11.Text:=Table3.FieldByName('单位电话').AsString;
    YZXXLL.Edit5.Text:=Table3.FieldByName('证件名').AsString;
    YZXXLL.Edit9.Text:=Table3.FieldByName('证件号').AsString;
    YZXXLL.Edit6.Text:=Table3.FieldByName('购房合同书编号').AsString;
    YZXXLL.Edit7.Text:=Table3.FieldByName('管理协议书编号').AsString;
    YZXXLL.Label19.Caption:=Table3.FieldByName('小区名').AsString;
    YZXXLL.Label20.Caption:=Table3.FieldByName('大楼名').AsString;
    YZXXLL.Label21.Caption:=Table3.FieldByName('房间号').AsString;
    YZXXLL.Label22.Caption:=Table3.FieldByName('购入房编号').AsString;
    YZXXLL.Edit1.Text:=Table3.FieldByName('购入房编号').AsString;
    if Table3.FieldByName('性别').AsString='男' then YZXXLL.ComboBox1.ItemIndex:=0
    else YZXXLL.ComboBox1.ItemIndex:=1;
    if Table3.FieldByName('是否进住').AsString='已进住' then YZXXLL.ComboBox2.ItemIndex:=0
    else YZXXLL.ComboBox2.ItemIndex:=1;
    YZXXLL.DateTimePicker1.Date:=Table3.FieldByName('签约日期').AsDateTime;
    YZXXLL.DateTimePicker2.Date:=Table3.FieldByName('进住日期').AsDateTime;
    YZXXLL.DateTimePicker3.Date:=Table3.FieldByName('进住起始日期').AsDateTime;
    YZXXLL.DateTimePicker4.Date:=Table3.FieldByName('进住截止日期').AsDateTime;
    YZXXLL.ShowModal;
  end;
end;
procedure TYZXXDJ.RadioButton3Click(Sender: TObject);  //选择显示业主进住情况
begin
 If RadioButton1.Checked Then   //显示进住业主信息
   begin
    Table3.Filter:=Format('是否进住'+'='+'''%s''',['已进住']);
    Table3.Filtered:=True;
   end;
 If RadioButton2.Checked Then    //显示未进住业主信息
   begin
    Table3.Filter:=Format('是否进住'+'='+'''%s''',['未进住']);
    Table3.Filtered:=True;
   end;
 If RadioButton3.Checked Then   //显示全部业主信息
   begin
    Table3.Filtered:=False;
   end;
end;
procedure TYZXXDJ.SpeedButton1Click(Sender: TObject);   //查找房屋信息
begin
  If Length(Edit1.Text) <> 0 Then
  if Not Table2.Locate('房间编号',Edit1.Text,[loPartialKey]) then
     ShowMessage('对不起,没有找到?');
end;
procedure TYZXXDJ.BitBtn6Click(Sender: TObject);  //修改住户存款信息
begin
  If Table3.RecordCount <> 0 Then    //如果住户存款信息不为空
  If Not Assigned(ZHCKXX) Then
  begin
    ZHCKXX:=TZHCKXX.Create(Self);
    ZHCKXX.Query1.Close;
    ZHCKXX.Query1.SQL.Clear;
    ZHCKXX.Query1.SQL.Add('Select * From 其它费用表');
    ZHCKXX.Query1.SQL.Add('Where 收费编号=:A');
    ZHCKXX.Query1.ParamByName('A').AsString:=Table3.FieldByName('业主代号').AsString;
    ZHCKXX.Query1.Open;
    ZHCKXX.Query2.Close;
    ZHCKXX.Query2.SQL.Clear;
    ZHCKXX.Query2.SQL.Add('Select * From 常用费用');
    ZHCKXX.Query2.SQL.Add('Where 收费编号=:A');
    ZHCKXX.Query2.ParamByName('A').AsString:=Table3.FieldByName('业主代号').AsString;
    ZHCKXX.Query2.Open;
    ZHCKXX.ShowModal;
  end;
end;
procedure TYZXXDJ.FormClose(Sender: TObject; var Action: TCloseAction);
begin
  YZXXDJ.Release;
  YZXXDJ:=Nil;
end;
procedure TYZXXDJ.BitBtn5Click(Sender: TObject);
begin
  Close;
end;

end.

⌨️ 快捷键说明

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