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

📄 viewhouseunit.pas

📁 安邦售楼系统单机版 (DELPHI格式源码),比较实用
💻 PAS
字号:
Unit ViewHouseUnit;

Interface

Uses
   Windows, Messages, SysUtils, Variants, Classes, Graphics, Controls, Forms,
   Dialogs, Grids, DBGridEh, DB, ADODB, ExtCtrls, AAFont, AACtrls,
   ComCtrls, LbSpeedButton, ToolWin, ACReportClass, StdCtrls;

Type
   TViewHouseForm = Class(TForm)
      ToolBar1: TToolBar;
      LbSpeedButton1: TLbSpeedButton;
      LbSpeedButton2: TLbSpeedButton;
      LbSpeedButton3: TLbSpeedButton;
      ToolButton1: TToolButton;
      LbSpeedButton4: TLbSpeedButton;
      LbSpeedButton5: TLbSpeedButton;
      AALabel1: TAALabel;
      Panel1: TPanel;
      Splitter1: TSplitter;
      DataSource1: TDataSource;
      ADOQuery1: TADOQuery;
      DBGridEH1: TDBGridEh;
      Splitter2: TSplitter;
      DBGridEh2: TDBGridEh;
      DataSource2: TDataSource;
      ADOQuery2: TADOQuery;
      DBGridEh3: TDBGridEh;
      DataSource3: TDataSource;
      ADOQuery3: TADOQuery;
      LbSpeedButton7: TLbSpeedButton;
      LbSpeedButton6: TLbSpeedButton;
      CheckBox1: TCheckBox;
      ToolButton2: TToolButton;
      AcReport1: TAcReport;
      Procedure SetBtnEnable(bEn: Boolean);
      Procedure FormClose(Sender: TObject; Var Action: TCloseAction);
      Procedure LbSpeedButton5Click(Sender: TObject);
      Procedure FormCreate(Sender: TObject);
      Procedure DBGridEh1CellClick(Column: TColumnEh);
      Procedure DBGridEh2CellClick(Column: TColumnEh);
      Procedure LbSpeedButton4Click(Sender: TObject);
      Procedure LbSpeedButton3Click(Sender: TObject);
      Procedure LbSpeedButton2Click(Sender: TObject);
      Procedure LbSpeedButton1Click(Sender: TObject);
      Procedure DBGridEh3DblClick(Sender: TObject);
      Procedure LbSpeedButton7Click(Sender: TObject);
      Procedure ADOQuery1AfterScroll(DataSet: TDataSet);
      Procedure ADOQuery2AfterScroll(DataSet: TDataSet);
   Private
    { Private declarations }
   Public
    { Public declarations }
   End;

Var
   ViewHouseForm    : TViewHouseForm;

Implementation
Uses DM, EditHourseUnit, PUBFunction;
{$R *.dfm}

Procedure TViewHouseForm.FormClose(Sender: TObject;
   Var Action: TCloseAction);
Begin
   Action := cafree;
   ViewHouseForm := Nil;
End;

Procedure TViewHouseForm.LbSpeedButton5Click(Sender: TObject);
Begin
   Close;
End;

Procedure TViewHouseForm.SetBtnEnable(bEn: Boolean);
Begin
   LbSpeedButton1.Enabled := bEn;
   LbSpeedButton2.Enabled := bEn;
   LbSpeedButton3.Enabled := bEn;
   LbSpeedButton4.Enabled := bEn;
  //   CheckBox1.Enabled :=bEn;
  //   CheckBox1.Checked :=not bEn;
End;

Procedure TViewHouseForm.FormCreate(Sender: TObject);
Begin
   ADOQuery1.Active := true;
   SetBtnEnable(ADOQuery1.recordcount > 0);
   If ADOQuery1.recordcount > 0 Then
      DBGridEh1CellClick(DBGridEH1.Columns.Items[0]);
End;

Procedure TViewHouseForm.DBGridEh1CellClick(Column: TColumnEh);
Begin
   ADOQuery3.Close;
   ADOQuery2.Close;
   With ADOQuery2 Do Begin
      sql.Text :=
         'select * FROM 项目信息表 WHERE 公司编号=''' +
         ADOQuery1.fieldbyname('公司编号').Text + '''';
      open;
      SetBtnEnable(recordcount > 0);
   End;
   If ADOQuery2.recordcount > 0 Then
      DBGridEh2CellClick(DBGridEh2.Columns.Items[0]);
End;

Procedure TViewHouseForm.DBGridEh2CellClick(Column: TColumnEh);
Begin
   ADOQuery3.Close;
   With ADOQuery3 Do Begin
      sql.Text := 'select * FROM 单体信息表 WHERE 公司编号=''' +
         ADOQuery1.fieldbyname('公司编号').Text + ''' and 项目编号=''' +
         ADOQuery2.fieldbyname('项目编号').Text + '''';
      open;
   End;

End;

Procedure TViewHouseForm.LbSpeedButton4Click(Sender: TObject);
Begin
   ADOQuery1.Close;
   ADOQuery1.sql.Text := 'SELECT 公司名称,公司编号 from 公司信息表';
   ADOQuery1.open;

   DBGridEh1CellClick(DBGridEH1.Columns.Items[0]);
End;

Procedure TViewHouseForm.LbSpeedButton3Click(Sender: TObject);

   Procedure DelRecAboutGD(sTablename: String);
   Var
      ADOD          : TADOQuery;
   Begin
      ADOD := TADOQuery.create(self);
      With ADOD Do Begin
         connection := DM.DataModule2.ADOConnection1;
         sql.Text := 'DELETE * FROM ' + sTablename + ' where 公司编号=''' +
            ADOQuery3.fieldbyname('公司编号').Text + ''' And 项目编号=''' +
            ADOQuery3.fieldbyname('项目编号').Text + ''' and 幢号=''' +
            ADOQuery3.fieldbyname('幢号').Text + '''';
         ExecSQL;
         Free;
      End;

   End;
Var
   i                : integer;
Begin
   If ADOQuery3.Active Then Begin
      For i := 0 To sTnames.Count - 1 Do
         If (ExtFieldInTable(sTnames[i], '幢号')) Then
            If Not (sTnames[i] = '单体信息表') Then
               DelRecAboutGD(sTnames[i]);
      If ADOQuery3.recordcount > 0 Then
         ADOQuery3.Delete;
   End;
End;

Procedure TViewHouseForm.LbSpeedButton2Click(Sender: TObject);
Begin
   If ADOQuery3.Active Then Begin
      If ADOQuery3.recordcount = 0 Then Exit;
      ADOQuery3.edit;
      EditHourseUnit.BADD := false;
      If Assigned(EditHourseForm) Then Begin
         SetWindowPos(EditHourseForm.Handle, 0, 0, 0, 0, 0, swp_nomove +
            swp_nosize);
         Exit;
      End;
      EditHourseForm := TEditHourseForm.create(self);
      EditHourseForm.ShowModal;
   End;
End;

Procedure TViewHouseForm.LbSpeedButton1Click(Sender: TObject);
Begin
   If ADOQuery3.Active Then Begin
      If ADOQuery2.recordcount = 0 Then Exit;
      ADOQuery3.Append;
      EditHourseUnit.BADD := true;
      If Assigned(EditHourseForm) Then Begin
         SetWindowPos(EditHourseForm.Handle, 0, 0, 0, 0, 0, swp_nomove +
            swp_nosize);
         Exit;
      End;
      EditHourseForm := TEditHourseForm.create(self);
      EditHourseForm.ShowModal;
   End;
End;

Procedure TViewHouseForm.DBGridEh3DblClick(Sender: TObject);
Begin
   LbSpeedButton2.click;
End;

Procedure TViewHouseForm.LbSpeedButton7Click(Sender: TObject);
Begin

   If (CheckBox1.Checked) Or (ADOQuery3.recordcount = 0) Then
      AcReport1.LoadFromFile(CURRDIR+'\NIL_XMQKB.APT')
   Else
      AcReport1.LoadFromFile(CURRDIR+'\XMQKB.APT');

   Case TLbSpeedButton(Sender).tag Of
      21: AcReport1.Preview;
      22: AcReport1.Print;
   End;
End;

Procedure TViewHouseForm.ADOQuery1AfterScroll(DataSet: TDataSet);
Begin
   DBGridEh1CellClick(DBGridEH1.Columns.Items[0]);
End;

Procedure TViewHouseForm.ADOQuery2AfterScroll(DataSet: TDataSet);
Begin
   DBGridEh2CellClick(DBGridEh2.Columns.Items[0]);
End;

End.

⌨️ 快捷键说明

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