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

請問各位大大兩個關於DBGrid新增資料的問題

答題得分者是:P.D.
t0288542
中階會員


發表:216
回覆:254
積分:94
註冊:2004-10-06

發送簡訊給我
#1 引用回覆 回覆 發表時間:2005-10-03 16:50:07 IP:61.221.xxx.xxx 未訂閱
請問各位大大們。    目前有三個ADOQuery, ADOQuery3為主檔 ADOQuery5為明細檔 ADOQuery4為基本檔 我利用動態變數去連結ADOQuery3和ADOQuery5之間的鍵值。 第一個問題是當我單獨新增明細檔一筆資料時,如果使用者在DBGrid 按往下鍵不是會新增一筆資料錄嗎,如使用者不作新增而按往上是否可 將那筆空白資料作刪除。如下圖。  第二問題是當要新增一筆資料(包括主檔和明細檔),當我同時在新增鈕 輸入ADOQuery3.Intsert 和 ADOQuery5.Intsert ,當輸入完主檔接著要輸 入明細檔資料,輸入第一筆時很正常第二筆就一直呈現空白。 第一張圖為正常輸入第一筆單身時。 第二張圖為按往下鍵時會變成都是空白,而且連第一筆資都不見。 以下,為新增的按鈕。 procedure TFCBCSBOM.SpeedButton2Click(Sender: TObject); begin UnitGlobal.TheOpen := '1'; PageControl1.ActivePage := TabSheet1; ADOQuery3.Active := True; ADOQuery5.Active := True; ADOQuery5.Insert; ADOQuery3.Insert; SpeedButton5.Enabled := False;//修改 SpeedButton6.Enabled := True; //存檔 SpeedButton7.Enabled := True; //取消 SpeedButton1.Enabled := True; //品號(新增狀態可改) SpeedButton10.Enabled := True; //日期1 SpeedButton11.Enabled := True; //日期2(新增狀態可改) //DBEdit1.Enabled := False;//鍵值 //DBEdit10.Enabled := False;//鍵值 DBEdit5.ReadOnly := False; DBEdit6.ReadOnly := False; DBEdit7.ReadOnly := False; DBEdit8.ReadOnly := False; DBEdit9.ReadOnly := False; DBGrid1.ReadOnly := False; end; 我看很久一直不曉得問題,麻煩大家幫幫我好嗎。
P.D.
版主


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

發送簡訊給我
#2 引用回覆 回覆 發表時間:2005-10-04 00:48:17 IP:61.71.xxx.xxx 未訂閱
對不起, 這篇不是要回答你的問題, 而是提出我的經驗談 當數個資料庫做關聯又以DBGRID為主軸時, 建議你有關異動的部份 自己用BUTTON來做, 不要靠DBGRID, 並不是說DBGRID不好, 而是這種 複雜的連結, 用DBGRID很難控制, 因此DBGRID請鎖定READONLY, 開5個 按鍵 "新增, 修改, 刪除, 儲存, 放棄", 每一個BUTTON自己寫CODE來 處理, 未來處理後續的事情會簡單的多, 以上提供你建議, 僅供參考~~~
l630521
資深會員


發表:15
回覆:349
積分:372
註冊:2003-02-17

發送簡訊給我
#3 引用回覆 回覆 發表時間:2005-10-05 15:44:49 IP:211.74.xxx.xxx 未訂閱
試試看ADOQuery3.Insert後先做ADOQuery3.Post的動作,應該就能解決,至於為什麼會這樣,我也不知,因為最近我才遇到這個問題。 你的ADOQuery3.LockType應該是設為ltBatchOptimistic吧! 也許有其他好方法,不過我目前是用這個方法解決的! 請參考看看! Ian
系統時間:2024-07-07 4:27:23
聯絡我們 | Delphi K.Top討論版
本站聲明
1. 本論壇為無營利行為之開放平台,所有文章都是由網友自行張貼,如牽涉到法律糾紛一切與本站無關。
2. 假如網友發表之內容涉及侵權,而損及您的利益,請立即通知版主刪除。
3. 請勿批評中華民國元首及政府或批評各政黨,是藍是綠本站無權干涉,但這裡不是政治性論壇!