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

📄 viewunitunit.pas

📁 短小而实用的房地产销售管理软件
💻 PAS
📖 第 1 页 / 共 2 页
字号:
Unit ViewUnitUnit;

Interface

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

Type
   TViewUnitForm = Class(TForm)
      ToolBar1: TToolBar;
      LbSpeedButton1: TLbSpeedButton;
      LbSpeedButton2: TLbSpeedButton;
      LbSpeedButton3: TLbSpeedButton;
      ToolButton1: TToolButton;
      LbSpeedButton4: TLbSpeedButton;
      LbSpeedButton5: TLbSpeedButton;
      AALabel1: TAALabel;
      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: TAALabel;
      AALabel35: TAALabel;
      AALabel37: TAALabel;
      AALabel38: TAALabel;
      AALabel39: TAALabel;
      LbButton4: TLbButton;
      LbButton5: TLbButton;
      LbButton6: TLbButton;
      LbButton7: TLbButton;
      LbButton8: TLbButton;
      LbButton9: TLbButton;
      LbButton10: TLbButton;
      PageControl1: TPageControl;
      TabSheet1: TTabSheet;
      Panel4: TPanel;
      AALabel21: TAALabel;
      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 LbSpeedButton5Click(Sender: TObject);
      Procedure FormCreate(Sender: TObject);
      Procedure LbSpeedButton4Click(Sender: TObject);
      Procedure DBGridEh1CellClick(Column: TColumnEh);
      Procedure DBGridEh2CellClick(Column: TColumnEh);
      Procedure LbSpeedButton3Click(Sender: TObject);
      Procedure LbSpeedButton2Click(Sender: TObject);
      Procedure LbSpeedButton1Click(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
   ViewUnitForm     : TViewUnitForm;
   bFlash           : Boolean;
   roomlist         : TStringlist;
   MX, MY           : integer;
Implementation
Uses DM, MainUnit, PUBFunction, EditUnitnit, UnitTenancyUnit, UnitSellUnit,
   UnitForSaleUnit, UnitObligateUnit, UnitPreconcertUnit, UnitMortgageUnit,
   UnitPullDownUnit;
{$R *.dfm}

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

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

Procedure TViewUnitForm.FormCreate(Sender: TObject);
Begin
   bFlash := false;
   roomlist := TStringlist.create;
   combobox1.Text := MainUnit.sunitFilter;
   ADOQuery1.Active := true;
   SetBtnEnable(ADOQuery1.recordcount > 0);
   If ADOQuery1.recordcount > 0 Then
      DBGridEh1CellClick(DBGridEH1.Columns.Items[0]);
End;

Procedure TViewUnitForm.LbSpeedButton4Click(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 TViewUnitForm.SetBtnEnable(bEn: Boolean);
Begin
   LbSpeedButton1.Enabled := bEn;
   LbSpeedButton2.Enabled := bEn;
   LbSpeedButton3.Enabled := bEn;
   LbSpeedButton4.Enabled := bEn;
End;

Procedure TViewUnitForm.DBGridEh1CellClick(Column: TColumnEh);
Begin
   ADOQuery4.Close;
   With ADOQuery2 Do Begin
      sql.Text :=
         'select 项目编号,项目名称 FROM 项目信息表 WHERE 公司编号=''' +
         ADOQuery1.fieldbyname('公司编号').Text + '''';
      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 TViewUnitForm.DBGridEh2CellClick(Column: TColumnEh);
Begin
   ADOQuery4.Close;
   With ADOQuery3 Do Begin
      sql.Text :=
         'select * FROM 单体信息表 WHERE 公司编号=''' +
         ADOQuery1.fieldbyname('公司编号').Text + ''' and 项目编号=''' +
         ADOQuery2.fieldbyname('项目编号').Text + '''';
      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 TViewUnitForm.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 公司编号=''' +
            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 TViewUnitForm.LbSpeedButton2Click(Sender: TObject);
Begin
   If ADOQuery4.Active Then Begin
      If ADOQuery4.recordcount = 0 Then Exit;
      ADOQuery4.edit;
      EditUnitnit.BADD := false;
      If Assigned(EditUnitForm) Then Begin
         SetWindowPos(EditUnitForm.Handle, 0, 0, 0, 0, 0, swp_nomove +
            swp_nosize);
         Exit;
      End;
      EditUnitForm := TEditUnitForm.create(self);
      EditUnitForm.ShowModal;
   End;
End;

Procedure TViewUnitForm.LbSpeedButton1Click(Sender: TObject);
Begin
   If ADOQuery4.Active Then Begin
      ADOQuery4.Append;
      EditUnitnit.BADD := true;
      If Assigned(EditUnitForm) Then Begin
         SetWindowPos(EditUnitForm.Handle, 0, 0, 0, 0, 0, swp_nomove +
            swp_nosize);
         Exit;
      End;
      EditUnitForm := TEditUnitForm.create(self);
      EditUnitForm.ShowModal;
   End;
End;

Procedure TViewUnitForm.DBGridEh4DblClick(Sender: TObject);
Begin
   LbSpeedButton2.click;
End;

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

Procedure TViewUnitForm.LbButton4Click(Sender: TObject);
Begin

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

   Case TLbButton(Sender).tag Of
      101: Begin                        //待售
            UnitForSaleForm := TUnitForSaleForm.create(self);
            UnitForSaleForm.ShowModal;
         End;
      102: Begin                        //预售
            UnitSellForm := TUnitSellForm.create(self);
            UnitSellForm.ShowModal;
         End;
      103: Begin                        //预定
            UnitPreconcertForm := TUnitPreconcertForm.create(self);
            UnitPreconcertForm.ShowModal;
         End;
      104: Begin                        //预留
            unitObligateForm := TunitObligateForm.create(self);
            unitObligateForm.ShowModal;

         End;
      105: Begin                        //租赁
            UnitTenancyForm := TUnitTenancyForm.create(self);
            UnitTenancyForm.ShowModal;
         End;
      106: Begin                        //抵押
            UnitMortgageForm := TUnitMortgageForm.create(self);
            UnitMortgageForm.ShowModal;
         End;
      107: Begin                        //拆迁还建
            UnitPullDownForm := TUnitPullDownForm.create(self);

⌨️ 快捷键说明

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