如何多個表單連結同一筆資料,資料更新,表單自動效率更新! |
答題得分者是:Stallion
|
weston
一般會員 發表:8 回覆:7 積分:3 註冊:2007-02-07 發送簡訊給我 |
|
Stallion
版主 發表:52 回覆:1600 積分:1995 註冊:2004-09-15 發送簡訊給我 |
1.小弟寫過類似的功能,就是資料庫被更新時,希望其他各個Client中各視窗使用到資料庫資料並顯示的VCL元件,能夠同步更新資料。
2.在 Indy Server及Client元件盤分別有個 TIdIPMCastServeru以及TIdIPMCastClient元件,該元件係利用多點傳送協定,至於多點傳送小弟無法在此介紹(你可以稍加研究瞭解其作法,那麼元件用起來會比較順手),你可以利用這兩個元件,將每個AP都變成本身既是SERVER也是CLIENT,那麼當AP中某個(或多個)FORM異動了資料,就從AP中發出自訂的訊息,利用多點傳送發給每個同樣的AP,讓其他與自己本身的AP收到自訂的訊息後,讓自身中的每個FORM重新去資料庫重新讀取資料。 3.請參考~ ===================引 用 weston 文 章=================== 想請問有經驗的前輩,忽然有個問題想法,不知道如何有效率解決,如題所示,在程式上有多個Form會連結資料表格,當表格資料更新, 有辦法即時更新所有有用到更新表格的Form嗎?因為Form使用很多,所以一但資料更新,Form顯示資料也必須逐一去檢查更新,想請問有沒有較好的辦法去處理更新界面資料顯示? 最後 謝謝熱心人士的回覆! |
SwingGuppy
初階會員 發表:1 回覆:18 積分:38 註冊:2006-12-28 發送簡訊給我 |
|
P.D.
版主 發表:603 回覆:4038 積分:3874 註冊:2006-10-31 發送簡訊給我 |
資料庫都有一個特性,當資料庫被開啟時,都會有不等量的記錄被載入前台的記憶體中,也就是不論後台如果異動資料,前台都還是維持原有的BUFFER內容,除非自己去UPDATE,就你的個案來說,每一個FORM要去處理這應是很正常的現象,但你要考量的不是FORM的更新問題,而是如果是一個CLIENT-SERVER架構時,在多台上如何去通知各台更新的問題,一般我都會用一個TIMER來做,當資料在瀏覽模式(dsBrowse),則啟動Timer每隔一個定時就關閉資料庫,再重開資料庫(或者使用update, refresh, 不過有時沒有效果),這樣一定可以確保資料被重新下載,但要注意,如果該台正在異動中時,TIMER是一定要關閉的,否則一旦進行更新,那正在異動的記錄就大江東去了~~
|
VICSYS
初階會員 發表:21 回覆:64 積分:32 註冊:2002-10-10 發送簡訊給我 |
|
weston
一般會員 發表:8 回覆:7 積分:3 註冊:2007-02-07 發送簡訊給我 |
本站聲明 |
1. 本論壇為無營利行為之開放平台,所有文章都是由網友自行張貼,如牽涉到法律糾紛一切與本站無關。 2. 假如網友發表之內容涉及侵權,而損及您的利益,請立即通知版主刪除。 3. 請勿批評中華民國元首及政府或批評各政黨,是藍是綠本站無權干涉,但這裡不是政治性論壇! |