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

📄 viewhousefm.pas.~32~

📁 一款房产中介软件
💻 ~32~
字号:
Unit ViewHouseFM;

Interface

Uses
   Windows, Messages, SysUtils, Variants, Classes, Graphics, Controls, Forms,
   Dialogs, Grids, DBGridEh, DB, ADODB, ExtCtrls,
   ComCtrls, ToolWin, StdCtrls, GridsEh, Buttons, frxClass, frxDBSet, frxDesgn,
  frxCross, frxExportPDF, frxExportHTML, frxDCtrl;

Type
   TfrmViewHouse = Class(TForm)
      ToolBar1: TToolBar;
    btnAdd: TSpeedButton;
    btnModifi: TSpeedButton;
    btnDel: TSpeedButton;
    btnReflesh: TSpeedButton;
      AALabel1: TLabel;
      Panel1: TPanel;
      Splitter1: TSplitter;
      DataSource1: TDataSource;
      ADOQuery1: TADOQuery;
      DBGridEH1: TDBGridEh;
      Splitter2: TSplitter;
      DBGridEh2: TDBGridEh;
      DataSource2: TDataSource;
      ADOQuery2: TADOQuery;
      DBGridEh3: TDBGridEh;
      DataSource3: TDataSource;
      ADOQuery3: TADOQuery;
    btnPreview: TSpeedButton;
      CheckBox1: TCheckBox;
    frxReport1: TfrxReport;
    btnDesign: TSpeedButton;
    frxDBDataset1: TfrxDBDataset;
    frxPDFExport1: TfrxPDFExport;
    frxHTMLExport1: TfrxHTMLExport;
    frxDBDataset2: TfrxDBDataset;
    frxDBDataset3: TfrxDBDataset;
    ADOQuery1cname: TWideStringField;
      Procedure SetBtnEnable(bEn: Boolean);
      Procedure FormClose(Sender: TObject; Var Action: TCloseAction);
      Procedure FormCreate(Sender: TObject);
      Procedure DBGridEh1CellClick(Column: TColumnEh);
      Procedure DBGridEh2CellClick(Column: TColumnEh);
      Procedure btnRefleshClick(Sender: TObject);
      Procedure btnDelClick(Sender: TObject);
      Procedure btnModifiClick(Sender: TObject);
      Procedure btnAddClick(Sender: TObject);
      Procedure DBGridEh3DblClick(Sender: TObject);
      Procedure btnPreviewClick(Sender: TObject);
      Procedure ADOQuery1AfterScroll(DataSet: TDataSet);
      Procedure ADOQuery2AfterScroll(DataSet: TDataSet);
    procedure btnDesignClick(Sender: TObject);
    procedure FormShow(Sender: TObject);
   Private
    { Private declarations }
   Public
    { Public declarations }
   End;

Var
   frmViewHouse    : TfrmViewHouse;

Implementation
Uses MainDM, EditHourseFM, PUBFunction, Globe;
{$R *.dfm}

Procedure TfrmViewHouse.FormClose(Sender: TObject;
   Var Action: TCloseAction);
Begin
   Action := cafree;
   frmViewHouse := nil;
End;

Procedure TfrmViewHouse.SetBtnEnable(bEn: Boolean);
Begin
   btnAdd.Enabled := bEn;
   btnModifi.Enabled := bEn;
   btnDel.Enabled := bEn;
   btnReflesh.Enabled := bEn;
  //   CheckBox1.Enabled :=bEn;
  //   CheckBox1.Checked :=not bEn;
End;

Procedure TfrmViewHouse.FormCreate(Sender: TObject);
Begin
  btnRefleshClick(Sender);
  SetBtnEnable(ADOQuery1.recordcount > 0);
End;

procedure TfrmViewHouse.FormShow(Sender: TObject);
begin
  frxReport1.LoadFromFile(Path + 'Report\ViewHouse.fr3');
end;

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

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

End;

Procedure TfrmViewHouse.btnRefleshClick(Sender: TObject);
Begin
//  ADOQuery1.Close;
  ADOQuery1.sql.Text := 'SELECT CName, code from Company';
  ADOQuery1.open;
  If ADOQuery1.recordcount > 0 Then
    DBGridEh1CellClick(DBGridEH1.Columns.Items[0]);
End;

Procedure TfrmViewHouse.btnDelClick(Sender: TObject);
   Procedure DelRecAboutGD(sTablename: String);
   Var
      ADOD: TADOQuery;
   Begin
      ADOD := TADOQuery.create(self);
      With ADOD Do Begin
         connection := DMMain.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 TfrmViewHouse.btnModifiClick(Sender: TObject);
Begin
   If ADOQuery3.Active Then
   Begin
      If ADOQuery3.recordcount = 0 Then Exit;
      ADOQuery3.edit;
      frmEditHourse.BADD := false;
      if frmEditHourse = nil then
        frmEditHourse := TfrmEditHourse.create(self);
      frmEditHourse.ShowModal;
   End;
End;

Procedure TfrmViewHouse.btnAddClick(Sender: TObject);
Begin
   If ADOQuery3.Active Then Begin
      If ADOQuery2.recordcount = 0 Then Exit;
      ADOQuery3.Append;
      frmEditHourse.BADD := true;
      if frmEditHourse = nil then
        frmEditHourse := TfrmEditHourse.create(self);
      frmEditHourse.ShowModal;
   End;
End;

Procedure TfrmViewHouse.DBGridEh3DblClick(Sender: TObject);
Begin
   btnModifi.click;
End;

Procedure TfrmViewHouse.btnPreviewClick(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;
  frxReport1.ShowReport;
End;

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

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

procedure TfrmViewHouse.btnDesignClick(Sender: TObject);
begin
  frxReport1.DesignReport;
end;

End.

⌨️ 快捷键说明

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