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

請問一個資料會無緣無故不見的問題......

答題得分者是:rexchiu
depblue
一般會員


發表:38
回覆:29
積分:13
註冊:2004-12-27

發送簡訊給我
#1 引用回覆 回覆 發表時間:2004-12-30 10:30:51 IP:211.22.xxx.xxx 未訂閱
我用Delphi5.0寫程式, 不過,資料總是在TADOQuery的BeforePost事件結束後就不見 (不過這種情形是在把資料帶入時發生,如果是自己輸入資料的話資料就不會不見), 情形大約如下: procedure Tzzwk050DMFrm.bre_deQuBeforePost(DataSet: TDataSet); var m_ordno :string; begin bre_deQu.Edit; bre_deQuBRENO.Value := bre_maQuBRENO.Value; bre_deQuBRE_DA.Value := bre_maQuBRE_DA.Value; bre_deQuBRE_TM.Value := bre_maQuBRE_TM.Value; bre_deQuDEPNO.Value := bre_maQuDEPNO.Value; m_ordno := bre_deQuORDNO.Value; >在這裡ORDNO資料還存在 end; >ORDNO資料不見了
hagar
版主


發表:143
回覆:4056
積分:4445
註冊:2002-04-14

發送簡訊給我
#2 引用回覆 回覆 發表時間:2004-12-30 10:34:49 IP:202.39.xxx.xxx 未訂閱
procedure Tzzwk050DMFrm.bre_deQuBeforePost(DataSet: TDataSet);
var 
    m_ordno :string;
begin
  bre_deQu.Edit; // 這行拿掉, 因為在 BeforePost Event 中, 就是在 Edit 或 Insert 狀態了
  bre_deQuBRENO.Value  := bre_maQuBRENO.Value;
  bre_deQuBRE_DA.Value := bre_maQuBRE_DA.Value;
  bre_deQuBRE_TM.Value := bre_maQuBRE_TM.Value;
  bre_deQuDEPNO.Value := bre_maQuDEPNO.Value;      m_ordno := bre_deQuORDNO.Value;
end;
-- QBQ: 我能做什麼?
depblue
一般會員


發表:38
回覆:29
積分:13
註冊:2004-12-27

發送簡訊給我
#3 引用回覆 回覆 發表時間:2005-01-02 22:35:40 IP:218.171.xxx.xxx 未訂閱
多謝hagar! 不過我試過了,結果還是一樣!@@
wwwbbs
初階會員


發表:41
回覆:59
積分:25
註冊:2003-05-23

發送簡訊給我
#4 引用回覆 回覆 發表時間:2005-01-02 22:55:34 IP:220.229.xxx.xxx 未訂閱
你有到資料庫看你的Detail Table嗎?或許資料有進去,只是你的Master尚未存檔,也就是你存檔時要先存maQu,再存deQu。    是看看這樣行不行     
procedure Tzzwk050DMFrm.bre_deQuBeforePost(DataSet: TDataSet);
var 
    m_ordno :string;
begin
  if DataSource1.State in ([dsInsert, dsEdit]) then  //DataSource1就是連接你的bre_maQu, 請改成你實際的名稱
  bre_maQu.Post;
  bre_deQuBRENO.Value  := bre_maQuBRENO.Value;
  bre_deQuBRE_DA.Value := bre_maQuBRE_DA.Value;
  bre_deQuBRE_TM.Value := bre_maQuBRE_TM.Value;
  bre_deQuDEPNO.Value := bre_maQuDEPNO.Value;      m_ordno := bre_deQuORDNO.Value;
end;     
發表人 - wwwbbs 於 2005/01/02 23:07:47 發表人 - wwwbbs 於 2005/01/02 23:11:04
pillar62
資深會員


發表:9
回覆:324
積分:271
註冊:2002-04-15

發送簡訊給我
#5 引用回覆 回覆 發表時間:2005-01-03 17:19:15 IP:210.64.xxx.xxx 未訂閱
Delphi5的ado如果你沒有更新的話,是會有問題的,你的版本有更新嗎?? Pillar Wang
------
Pillar Wang
depblue
一般會員


發表:38
回覆:29
積分:13
註冊:2004-12-27

發送簡訊給我
#6 引用回覆 回覆 發表時間:2005-01-03 23:00:52 IP:218.171.xxx.xxx 未訂閱
引言: Delphi5的ado如果你沒有更新的話,是會有問題的,你的版本有更新嗎?? Pillar Wang
請問:你所謂的ADO更新是指什麼? 而且,要如何更新?是上網更新嗎?
depblue
一般會員


發表:38
回覆:29
積分:13
註冊:2004-12-27

發送簡訊給我
#7 引用回覆 回覆 發表時間:2005-01-04 09:07:58 IP:211.22.xxx.xxx 未訂閱
引言: 你有到資料庫看你的Detail Table嗎?或許資料有進去,只是你的Master尚未存檔,也就是你存檔時要先存maQu,再存deQu。 是看看這樣行不行
procedure Tzzwk050DMFrm.bre_deQuBeforePost(DataSet: TDataSet);
var 
    m_ordno :string;
begin
  if DataSource1.State in ([dsInsert, dsEdit]) then  //DataSource1就是連接你的bre_maQu, 請改成你實際的名稱
  bre_maQu.Post;
  bre_deQuBRENO.Value  := bre_maQuBRENO.Value;
  bre_deQuBRE_DA.Value := bre_maQuBRE_DA.Value;
  bre_deQuBRE_TM.Value := bre_maQuBRE_TM.Value;
  bre_deQuDEPNO.Value := bre_maQuDEPNO.Value;      m_ordno := bre_deQuORDNO.Value;
end;     
發表人 - wwwbbs 於 2005/01/02 23:07:47 發表人 - wwwbbs 於 2005/01/02 23:11:04
我已經試過了,結果還是不行,並且程式結束的時候,還會出現下面的文字 'A given HROW referred to a hard- or soft-deleted row' 請問上面那行字,是說明什麼意思??
rexchiu
中階會員


發表:14
回覆:88
積分:70
註冊:2002-03-17

發送簡訊給我
#8 引用回覆 回覆 發表時間:2005-01-04 09:45:44 IP:220.130.xxx.xxx 未訂閱
要更新Delphi 5 的ADO可以去這邊下載 http://www2.borland.com.tw/tw/nw000223.html    裡面的ADOExpress Update與ADOExpress Update2就是了 跟著他的說明做吧!!
------
Best Regards,
Rex Chiu
系統時間:2024-06-08 19:13:43
聯絡我們 | Delphi K.Top討論版
本站聲明
1. 本論壇為無營利行為之開放平台,所有文章都是由網友自行張貼,如牽涉到法律糾紛一切與本站無關。
2. 假如網友發表之內容涉及侵權,而損及您的利益,請立即通知版主刪除。
3. 請勿批評中華民國元首及政府或批評各政黨,是藍是綠本站無權干涉,但這裡不是政治性論壇!