TTable的locate為何會失效 |
缺席
|
rachex2000
一般會員 發表:21 回覆:32 積分:20 註冊:2003-04-28 發送簡訊給我 |
我有一程式是使用paradox如下
<textarea class="delphi" rows="10" cols="60" name="code">qryA.First; while not qryA.Eof do begin if not Table1.Locate('A;B;C;D', VarArrayof([ qryA.FieldByName('A').AsString, qryA.FieldByName('B').AsString, qryA.FieldByName('C').AsString, qryA.FieldByName('D').AsString]), []) then begin memo1.lines.add( qryA.FieldByName('A').AsString qryA.FieldByName('B').AsString qryA.FieldByName('C').AsString qryA.FieldByName('D').AsString '無此代碼'); end; qryA.next; end; </textarea> 這是為了檢查qryA中的每一筆紀錄,都應該對應到Table1中,若沒有則找出此筆資料, 這個程式我測試一段時間都沒問題,但是日前卻發生, 明明Table1有資料, locate卻回傳false,因為我很確定Table1中有資料,除非有其他地方執行了emptytable, 但是應該沒有, 由於不只一筆有這種情形,而是幾乎qryA每一筆都找不到,想請問 是否TTable元件或BDE有此bug,有人有遇過這種問題嗎? 編輯記錄
rachex2000 重新編輯於 2007-08-20 12:00:28, 註解 無‧
taishyang 重新編輯於 2007-08-20 12:01:32, 註解 將文章分類成[問題]‧ rachex2000 重新編輯於 2007-08-20 12:02:00, 註解 無‧ taishyang 重新編輯於 2007-08-20 12:05:24, 註解 將文章分類成[問題]‧ |
Jasonwong
版主 發表:49 回覆:931 積分:581 註冊:2006-10-27 發送簡訊給我 |
|
rachex2000
一般會員 發表:21 回覆:32 積分:20 註冊:2003-04-28 發送簡訊給我 |
A, B, C, D四個欄位是文字,但是內容只會是0到9,
例如 qryA.Fieldbyname('A').asstring = '01', //固定2碼 qryA.Fieldbyname('B').asstring = '02', //固定2碼 qryA.Fieldbyname('C').asstring = '1111', //固定4碼 qryA.Fieldbyname('C').asstring = '13', //固定2碼 因為此程式只有錯誤那一次(有log證明),之後再用同樣的資料(我當時有備份)測試, 就正常了,因此確定不是1,2的問題,我只好猜是locate失效了, ===================引 用 Jasonwong 文 章=================== 請查明是否有... 1.大小寫 2.全形或半形 以上都會有影響
編輯記錄
rachex2000 重新編輯於 2007-08-20 14:50:50, 註解 無‧
|
本站聲明 |
1. 本論壇為無營利行為之開放平台,所有文章都是由網友自行張貼,如牽涉到法律糾紛一切與本站無關。 2. 假如網友發表之內容涉及侵權,而損及您的利益,請立即通知版主刪除。 3. 請勿批評中華民國元首及政府或批評各政黨,是藍是綠本站無權干涉,但這裡不是政治性論壇! |