全國最多中醫師線上諮詢網站-台灣中醫網
發文 回覆 瀏覽次數:1184
推到 Plurk!
推到 Facebook!

共用 TADOQuery

答題得分者是:P.D.
lee5100954
一般會員


發表:15
回覆:10
積分:5
註冊:2005-11-22

發送簡訊給我
#1 引用回覆 回覆 發表時間:2007-09-29 10:03:32 IP:220.228.xxx.xxx 訂閱
我有一個TADOQuery,因為它在不同Form和報表會用到,然後它的SQL語法很長,不想再重寫,所以想說是否可以共用的方式,這樣相同的東西寫一次就好了,請問這該如何下手呢?
msfm
一般會員


發表:1
回覆:4
積分:1
註冊:2007-09-29

發送簡訊給我
#2 引用回覆 回覆 發表時間:2007-09-29 13:29:37 IP:219.235.xxx.xxx 訂閱
开启一个单元作为公共单元。
type
_TDBclass = class
private
DB_ADOQuery: TADOQuery;
public
procedure InsideConn(adoconn: tadoconnection); //内部连接库
end
procedure _TDBclass.InsideConn(adoconn: tadoconnection);
begin
DB_ADOQuery := TADOQuery.Create(nil);
DB_ADOQuery.Connection := adoconn;
end;
function _TDBclass.isNewPiaojia(sellDate: string): boolean;
begin
with DB_ADOQuery do
begin
close;
sql.Clear;
sql.Text := 'select sysclock from yhcs where CONVERT(varchar(10),sysclock,20) <=:v1';
Parameters[0].Value := selldate;
open;
if RecordCount <> 0 then
bval := true;
end;
編輯記錄
msfm 重新編輯於 2007-09-29 13:32:21, 註解 無‧
lee5100954
一般會員


發表:15
回覆:10
積分:5
註冊:2005-11-22

發送簡訊給我
#3 引用回覆 回覆 發表時間:2007-09-29 17:44:04 IP:220.228.xxx.xxx 訂閱
請問公共单元是指Unit嗎?或是Form?
P.D.
版主


發表:603
回覆:4038
積分:3874
註冊:2006-10-31

發送簡訊給我
#4 引用回覆 回覆 發表時間:2007-09-30 01:48:52 IP:61.67.xxx.xxx 未訂閱
都可以,使用unit 你必須自己把所有相關dataaward的元件手動create出來,使用form 則是可以把元件拉到form上,不過如果單純是要dataaward的元件要共用的話,建議你建立一個新的datamodule,這也是form的一種,不過是針對database來使用的,相關資料請看書,每一本都有介紹
u86210779
一般會員


發表:16
回覆:41
積分:16
註冊:2004-06-08

發送簡訊給我
#5 引用回覆 回覆 發表時間:2007-10-11 18:22:57 IP:218.175.xxx.xxx 未訂閱
建議放在 DataModule 中, 要用的程式在 use 進來
系統時間:2024-05-17 18:46:17
聯絡我們 | Delphi K.Top討論版
本站聲明
1. 本論壇為無營利行為之開放平台,所有文章都是由網友自行張貼,如牽涉到法律糾紛一切與本站無關。
2. 假如網友發表之內容涉及侵權,而損及您的利益,請立即通知版主刪除。
3. 請勿批評中華民國元首及政府或批評各政黨,是藍是綠本站無權干涉,但這裡不是政治性論壇!