?? viewhouseunit.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 + -