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

📄 viewunitfm.pas.~24~

📁 一款房产中介软件
💻 ~24~
📖 第 1 页 / 共 2 页
字号:
Unit ViewUnitFM;

Interface

Uses
   Windows, Messages, SysUtils, Variants, Classes, Graphics, Controls, Forms,
   Dialogs, ComCtrls, ToolWin, DB, ADODB,Grids, DBGridEh, ExtCtrls, StdCtrls,
   GridsEh, Buttons;

Type
   TfrmViewUnit = Class(TForm)
      ToolBar1: TToolBar;
    btnAdd: TSpeedButton;
    btnModifi: TSpeedButton;
    btnDel: TSpeedButton;
    btnReflesh: TSpeedButton;
    btnClose: TSpeedButton;
      AALabel1: TLabel;
      Panel1: TPanel;
      Splitter2: TSplitter;
      DBGridEH1: TDBGridEh;
      DBGridEh2: TDBGridEh;
      DataSource1: TDataSource;
      ADOQuery1: TADOQuery;
      DataSource2: TDataSource;
      ADOQuery2: TADOQuery;
      DBGridEh3: TDBGridEh;
      Splitter1: TSplitter;
      ADOQuery3: TADOQuery;
      DataSource3: TDataSource;
      Splitter3: TSplitter;
      DataSource4: TDataSource;
      ADOQuery4: TADOQuery;
      DBGridEh5: TDBGridEh;
      Panel3: TPanel;
      Panel2: TPanel;
      AALabel36: TLabel;
      AALabel35: TLabel;
      AALabel37: TLabel;
      AALabel38: TLabel;
      AALabel39: TLabel;
      LbButton4: TButton;
      LbButton5: TButton;
      LbButton6: TButton;
      LbButton7: TButton;
      LbButton8: TButton;
      LbButton9: TButton;
      LbButton10: TButton;
      PageControl1: TPageControl;
      TabSheet1: TTabSheet;
      Panel4: TPanel;
      AALabel21: TLabel;
      combobox1: TComboBox;
      DBGridEh4: TDBGridEh;
      TabSheet2: TTabSheet;
      Panel5: TPanel;
      StaticText12: TStaticText;
      StaticText13: TStaticText;
      StaticText14: TStaticText;
      StaticText15: TStaticText;
      StaticText20: TStaticText;
      StaticText30: TStaticText;
      StaticText29: TStaticText;
      StringGrid1: TStringGrid;
      Label1: TLabel;
      Procedure FlashXKT;
      Procedure SetTypeButton(bXKTClick: Boolean = false);
      Procedure SetBtnEnable(bEn: Boolean);
      Procedure FormClose(Sender: TObject; Var Action: TCloseAction);
      Procedure btnCloseClick(Sender: TObject);
      Procedure FormCreate(Sender: TObject);
      Procedure btnRefleshClick(Sender: TObject);
      Procedure DBGridEh1CellClick(Column: TColumnEh);
      Procedure DBGridEh2CellClick(Column: TColumnEh);
      Procedure btnDelClick(Sender: TObject);
      Procedure btnModifiClick(Sender: TObject);
      Procedure btnAddClick(Sender: TObject);
      Procedure DBGridEh4DblClick(Sender: TObject);
      Procedure DBGridEh4CellClick(Column: TColumnEh);
      Procedure LbButton4Click(Sender: TObject);
      Procedure ADOQuery4AfterScroll(DataSet: TDataSet);
      Procedure ComboBox1Change(Sender: TObject);
      Procedure ADOQuery1AfterScroll(DataSet: TDataSet);
      Procedure ADOQuery2AfterScroll(DataSet: TDataSet);
      Procedure StringGrid1DrawCell(Sender: TObject; ACol, ARow: integer;
         Rect: TRect; State: TGridDrawState);
      Procedure PageControl1Change(Sender: TObject);
      Procedure DBGridEh3CellClick(Column: TColumnEh);
      Procedure StringGrid1Click(Sender: TObject);
      Procedure StringGrid1MouseMove(Sender: TObject; Shift: TShiftState; x,
         y: integer);
      Procedure StringGrid1DblClick(Sender: TObject);

   Private
    { Private declarations }
   Public
    { Public declarations }

   End;

Var
   frmViewUnit     : TfrmViewUnit;
   bFlash           : Boolean;
   roomlist         : TStringlist;
   MX, MY           : integer;
Implementation

Uses MainDM, MainFM, PUBFunction, EditUnitFM, UnitTenancyFM, UnitSellFM,
   UnitForSaleFM, UnitObligateFM, UnitPreconcertFM, UnitMortgageFM,
   UnitPullDownFM;
{$R *.dfm}

Procedure TfrmViewUnit.FormClose(Sender: TObject;
   Var Action: TCloseAction);
Begin
   roomlist.Free;
   Action := cafree;
   frmViewUnit := Nil;
End;

Procedure TfrmViewUnit.btnCloseClick(Sender: TObject);
Begin
   Close;
End;

Procedure TfrmViewUnit.FormCreate(Sender: TObject);
Begin
   bFlash := false;
   roomlist := TStringlist.create;
   combobox1.Text := frmMain.sunitFilter;
   ADOQuery1.SQL.Text := 'select cname, code from company';
   ADOQuery1.Open;
   SetBtnEnable(ADOQuery1.recordcount > 0);
   If ADOQuery1.recordcount > 0 Then
      DBGridEh1CellClick(DBGridEH1.Columns.Items[0]);
End;

Procedure TfrmViewUnit.btnRefleshClick(Sender: TObject);
Begin
   If TabSheet1.Showing Then Begin
      bFlash := true;
      ADOQuery1.tag := ADOQuery1.RecNo;
      ADOQuery2.tag := ADOQuery2.RecNo;
      ADOQuery3.tag := ADOQuery3.RecNo;
      ADOQuery4.tag := ADOQuery4.RecNo;
      ADOQuery1.Active := true;
      SetBtnEnable(ADOQuery1.recordcount > 0);
      If ADOQuery1.recordcount > 0 Then Begin
         If bFlash Then ADOQuery1.RecNo := ADOQuery1.tag;
         DBGridEh1CellClick(DBGridEH1.Columns.Items[0]);
      End;
   End Else If TabSheet2.Showing Then Begin
             //Call 刷新销控图
      FlashXKT;
      MX := 150;
      MY := 30;
      StringGrid1Click(self);
   End;
End;

Procedure TfrmViewUnit.SetBtnEnable(bEn: Boolean);
Begin
   btnAdd.Enabled := bEn;
   btnModifi.Enabled := bEn;
   btnDel.Enabled := bEn;
   btnReflesh.Enabled := bEn;
End;

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

Procedure TfrmViewUnit.DBGridEh2CellClick(Column: TColumnEh);
Begin
   ADOQuery4.Close;
   With ADOQuery3 Do Begin
      sql.Text :=
         'select * FROM 单体信息表 WHERE 公司编号=''' +
         ADOQuery1.fieldbyname('code').AsString + ''' and 项目编号=''' +
         ADOQuery2.fieldbyname('项目编号').AsString + '''';
      open;
      SetBtnEnable(recordcount > 0);
   End;
   If ADOQuery3.recordcount > 0 Then Begin
      If bFlash Then ADOQuery3.RecNo := ADOQuery3.tag;

      DBGridEh3CellClick(DBGridEh3.Columns.Items[0]);
   End;
End;

Procedure TfrmViewUnit.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 公司编号=''' +
            ADOQuery4.fieldbyname('公司编号').Text + ''' And 项目编号=''' +
            ADOQuery4.fieldbyname('项目编号').Text + ''' and 幢号=''' +
            ADOQuery4.fieldbyname('幢号').Text + ''' and 房号=''' +
            ADOQuery4.fieldbyname('房号').Text + '''';
         ExecSQL;
         Free;
      End;
   End;
Var
   i: integer;
Begin
   If ADOQuery4.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 ADOQuery4.recordcount > 0 Then
         ADOQuery4.Delete;
   End;
End;

Procedure TfrmViewUnit.btnModifiClick(Sender: TObject);
Begin
   If ADOQuery4.Active Then Begin
      If ADOQuery4.recordcount = 0 Then Exit;
      ADOQuery4.edit;
      if frmEditUnit = nil then
        frmEditUnit := TfrmEditUnit.create(nil);
      frmEditUnit.Show;
      frmEditUnit.BADD := false;
   End;
End;

Procedure TfrmViewUnit.btnAddClick(Sender: TObject);
Begin
   If ADOQuery4.Active Then Begin
      ADOQuery4.Append;
      frmEditUnit.BADD := true;
      If Assigned(frmEditUnit) Then Begin
         SetWindowPos(frmEditUnit.Handle, 0, 0, 0, 0, 0, swp_nomove +
            swp_nosize);
         Exit;
      End;
      frmEditUnit := TfrmEditUnit.create(self);
      frmEditUnit.Show;
   End;
End;

Procedure TfrmViewUnit.DBGridEh4DblClick(Sender: TObject);
Begin
   btnModifi.click;
End;

Procedure TfrmViewUnit.DBGridEh4CellClick(Column: TColumnEh);
Begin
   SetTypeButton;
End;

Procedure TfrmViewUnit.LbButton4Click(Sender: TObject);
Begin

   If TButton(Sender).Font.Color <> clGreen Then Exit;
   If TButton(Sender).Caption <> ADOQuery4.fieldbyname('销售类型').Text Then Begin
      Application.MessageBox('销售类型不对!请刷新数据后再操作', '提示',
         MB_ICONERROR);
      Exit;
   End;

   Case TButton(Sender).tag Of
      101: Begin                        //待售
            frmUnitForSale := TfrmUnitForSale.create(self);
            frmUnitForSale.Show;
         End;
      102: Begin                        //预售
            frmUnitSell := TfrmUnitSell.create(self);
            frmUnitSell.Show;
         End;
      103: Begin                        //预定
            frmUnitPreconcert := TfrmUnitPreconcert.create(self);
            frmUnitPreconcert.Show;
         End;
      104: Begin                        //预留
            frmunitObligate := TfrmunitObligate.create(self);
            frmunitObligate.Show;

         End;
      105: Begin                        //租赁
            frmUnitTenancy := TfrmUnitTenancy.create(self);
            frmUnitTenancy.Show;
         End;
      106: Begin                        //抵押
            frmUnitMortgage := TfrmUnitMortgage.create(self);
            frmUnitMortgage.Show;
         End;
      107: Begin                        //拆迁还建
            frmUnitPullDown := TfrmUnitPullDown.create(self);

⌨️ 快捷键说明

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