?? classenterprise.pas
字號:
unit ClassEnterprise;
interface
uses
Classes, Windows, DBTables;
type
TEnterprise = class(TObject)
public
RatepayingNo: string; //納稅代碼
TaxRegisterNo: string; //稅務登記證號
EnterpriseName: string; //委托企業全稱
AffiliateTown: string; //所屬鄉鎮
DetailAddress: string; //詳細地址
TelephoneNo: string; //聯系電話
Linkman: string; //聯系人
constructor Create;
destructor Destroy; override;
procedure CreateQuery;
procedure FreeQuery;
function GetInfo(ARatepayingNo, ATaxRegisterNo: string; AEnterpriseName: string = ''): Boolean;
function Update: Boolean;
function Insert: Boolean;
function Delete: Boolean;
private
TmpQuery: TQuery;
end;
implementation
uses
SysUtils, Forms, DB, Dialogs;
{ Enterprise }
constructor TEnterprise.Create;
begin
inherited;
CreateQuery;
end;
procedure TEnterprise.CreateQuery;
begin
try
TmpQuery := TQuery.Create(nil); //創建TEMPQUERY查詢
TmpQuery.DatabaseName := 'JB';
except
on E: Exception do
begin
Application.MessageBox(PChar(E.Message), '錯誤框', MB_OK + MB_ICONERROR);
Application.Terminate; //關閉程序
end;
end;
end;
function TEnterprise.Delete: Boolean;
begin
with TmpQuery do
try
try
Close;
SQL.Clear;
SQL.Add(' DELETE FROM Enterprise.DB ');
SQL.Add(' WHERE RatepayingNo="' + RatepayingNo + '"');
Prepare;
ExecSQL;
Result := True; //成功,返回TRUE
finally
UnPrepare;
Close;
Application.MessageBox('刪除企業信息成功!', '確認', MB_OK + MB_ICONINFORMATION);
end;
except
Application.MessageBox('刪除企業信息出錯', '錯誤框', MB_OK + MB_ICONERROR);
Result := False;
end;
end;
destructor TEnterprise.Destroy;
begin
FreeQuery;
inherited;
end;
procedure TEnterprise.FreeQuery;
begin
TmpQuery.Free; //釋放TEMPQUERY查詢
end;
function TEnterprise.GetInfo(ARatepayingNo, ATaxRegisterNo: string;
AEnterpriseName: string = ''): Boolean;
begin
Result := False;
with TmpQuery do
try
Close; //關閉TEMPQUERY查詢
SQL.Clear;
SQL.Add(' SELECT * FROM Enterprise.DB');
if ARatepayingNo = '' then
SQL.Add(' WHERE RatepayingNo= ' + '"' + Trim(ARatepayingNo) + '"')
else
SQL.Add(' WHERE TaxRegisterNo=' + '"' + Trim(ATaxRegisterNo) + '"');
Open; //開始查詢
First;
if RecordCount > 0 then //如果查出來的記錄數不為0(即有記錄)
begin //取出子表中的各個字段
RatepayingNo := fieldbyname('RatepayingNo').asstring; {取納稅代碼}
TaxRegisterNo := fieldbyname('TaxRegisterNo').asstring; {取稅務登記證號}
EnterpriseName := fieldbyname('EnterpriseName').asstring; {取委托企業全稱}
AffiliateTown := fieldbyname('AffiliateTown').asstring; {取所屬鄉鎮}
DetailAddress := fieldbyname('DetailAddress').asstring; {取詳細地址}
TelephoneNo := fieldbyname('TelephoneNo').asstring; {取聯系電話}
Linkman := fieldbyname('Linkman').asstring; {取聯系人}
Result := True
end;
finally
Close; //關閉TEMPQUERY查詢
end;
end;
function TEnterprise.Insert: Boolean;
begin
with TmpQuery do
try
try
Close; //關閉查詢
SQL.Clear; //清除原有SQL語句
SQL.Add(' INSERT INTO Enterprise.DB ');
SQL.Add(' (RatepayingNo,');
SQL.Add(' TaxRegisterNo,');
SQL.Add(' EnterpriseName,');
SQL.Add(' AffiliateTown,');
SQL.Add(' DetailAddress,');
SQL.Add(' TelephoneNo,');
SQL.Add(' Linkman)');
SQL.Add(' VALUES ("' + RatepayingNo + '",'); //納稅代碼
SQL.Add(' "' + TaxRegisterNo + '",'); //稅務登記證號
SQL.Add(' "' + EnterpriseName + '",'); //委托企業全稱
SQL.Add(' "' + AffiliateTown + '",'); //所屬鄉鎮
SQL.Add(' "' + DetailAddress + '",'); //詳細地址
SQL.Add(' "' + TelephoneNo + '",'); //聯系電話
SQL.Add(' "' + Linkman + '")'); //聯系人
Prepare; //告訴BDE將執行一個SQL
ExecSQL; //開始更新數據
Result := True; //返回TRUE
finally
Unprepare; //告訴BDE完成SQL的執行
Close; //關閉查詢
Application.MessageBox('添加企業信息成功!', '確認', MB_OK + MB_ICONINFORMATION);
end;
except
Application.MessageBox('添加企業信息出錯', '錯誤框', MB_OK + MB_ICONERROR);
Result := False;
end;
end;
function TEnterprise.Update: Boolean;
begin
with TmpQuery do
try
try
Close; //關閉查詢
SQL.Clear; //清除原有SQL語句
SQL.Add(' UPDATE Enterprise.DB ');
SQL.Add(' SET TaxRegisterNo="' + TaxRegisterNo + '",'); //稅務登記證號
SQL.Add(' EnterpriseName="' + EnterpriseName + '",'); //委托企業全稱
SQL.Add(' AffiliateTown="' + AffiliateTown + '",'); //所屬鄉鎮
SQL.Add(' DetailAddress="' + DetailAddress + '",'); //詳細地址
SQL.Add(' TelephoneNo="' + TelephoneNo + '",'); //聯系電話
SQL.Add(' Linkman="' + Linkman + '"'); //聯系人
SQL.Add(' WHERE RatepayingNo="' + RatepayingNo + '"');
Prepare; //告訴BDE將執行一個SQL
ExecSQL; //開始更新數據
Result := True; //返回TRUE
finally
Unprepare; //告訴BDE完成SQL的執行
Close; //關閉查詢
Application.MessageBox('更新企業信息成功!', '確認', MB_OK + MB_ICONINFORMATION);
end;
except
Application.MessageBox('更新企業信息出錯!', '錯誤', MB_OK + MB_ICONERROR);
Result := False;
end;
end;
end.
?? 快捷鍵說明
復制代碼
Ctrl + C
搜索代碼
Ctrl + F
全屏模式
F11
切換主題
Ctrl + Shift + D
顯示快捷鍵
?
增大字號
Ctrl + =
減小字號
Ctrl + -