線上訂房服務-台灣趴趴狗聯合訂房中心
發文 回覆 瀏覽次數:10619
推到 Plurk!
推到 Facebook!
[<<] [1] [2] [>>]

一家公司兩個地點做資料同步

答題得分者是:carstyc
holydisciple
一般會員


發表:3
回覆:24
積分:10
註冊:2009-11-06

發送簡訊給我
#32 引用回覆 回覆 發表時間:2009-11-11 19:36:00 IP:220.128.xxx.xxx 訂閱
Ko  大大,

您說的第三台主機,我先前也有向公司建議過,接受度還沒達到百分之七十,看看接受度會否再提高,當時我稱呼那一台主機為超級主機,將匯總各分公司的資料於一身,順便當做備份機,又當備用機(某台主機掛掉就切換到這一台打單),這個方法有待解決的就正如您講的,如果常修改的話,就比較麻煩。
------
有沒有可能,上帝使用程式操作世界?
小傑克
資深會員


發表:5
回覆:209
積分:357
註冊:2009-02-16

發送簡訊給我
#33 引用回覆 回覆 發表時間:2009-11-13 00:27:40 IP:59.112.xxx.xxx 訂閱
看了上面的討論, 幾個建議給你參考

1. Terminal Serivce 是可以做的, 至於.db 問題, 那是程式沒針對Terminal 做修改, 建議你先瀏覽微軟的Terminal 程式開發原則基本第一條, 每個user 應該用自己的路徑,這部份如果你們程式模組化寫的好的話, 改起來不難, Terminal不是非citrix solution, Citrix M etaFrame 只是提供多一些設定而已(主要問題是貴), 基本上用citrix 還是要解決.db 的問題
2. DB 要做同步? 這真的不是隨便講兩句可以判斷的, 要去做功課搞清楚有哪幾種差異同步作法....覆寫要幾小時? 照你的系統來猜, 可能設定上還有調整的空間
3. 報關行系統嗎? 那web 不用考慮了, 你的op不可能可以忍受那 browser 解譯scritp/html 延遲的0.5秒 , 雖然用browser 有異地共用的好處, 但是每個行動都慢0.x 秒的感覺就會讓任何user 都受不了
4. ADO , ODBC 去做? 這是個解法, 前提是程式需要大幅改寫, 要大量使用local 端資料庫並做一些local端DB登入自動更新功能, 類似線上遊戲做法, 但既然你沒打算大幅改寫系統, 這點就不用考慮了
5. 找一家能處理你問題的軟體廠商來做吧, 貴公司有兩地100 人的使用者, 在報關or 物流業也算大了, 如果是物流業貴公司可能還有桃園/高雄甚至兩岸三地或國外還有分公司, 以這樣的公司規模系統應該要找專門公司規劃了,這已經超過非專業玩家能handle 的程度了, 台灣物流軟體公司也好幾家, 不仿參考一下他們的建議 , 你遇到的問題, 其他報關行/forwarder公司都會遇到, 就我所知好多年前就已有完整的產品 solution


===================引 用 holydisciple 文 章===================
ko 大大,

內部網路打都比較沒問題,線路有 100M,只在遠端打才有問題,例如用 ADSL 連進來,都慢很多。至於當初規劃設計,基本建檔很多,這是沒有辦法的,因為這是配合海關的,逃不掉的,介面是客戶的要求,一定要照做,如今軟體方面唯一能做的是儘量瘦身,抽一些脂肪出來,應該會比較好。。
------
額有朝天骨,眼中有靈光
編輯記錄
小傑克 重新編輯於 2009-11-13 00:30:09, 註解 無‧
小傑克 重新編輯於 2009-11-13 00:37:29, 註解 無‧
holydisciple
一般會員


發表:3
回覆:24
積分:10
註冊:2009-11-06

發送簡訊給我
#34 引用回覆 回覆 發表時間:2009-11-13 09:15:01 IP:220.128.xxx.xxx 訂閱
KO 大大,

問題不在於海關,在於我們。發單的人在台北打聯絡單,做單的在基隆打報單,報單在上午十點打完了,因資料庫複寫而送到台北主機,台北的人看到報單了,過了一小時,即上午十一點,基隆的人對此報單稍做修改,在下次複寫之前,台北的人看到的是上午十點的報單。

上午十一點半,台北員工檢查報單(他只看到上午十點的那張報單)沒有問題,通知基隆的員工此報單可以傳輸給每關了,基隆員工把報單傳出去,但此報單因為在上午十一點修改過,會跟台北員工看到的有所不同,這就是問題所在了!
------
有沒有可能,上帝使用程式操作世界?
holydisciple
一般會員


發表:3
回覆:24
積分:10
註冊:2009-11-06

發送簡訊給我
#35 引用回覆 回覆 發表時間:2009-11-13 09:48:54 IP:220.128.xxx.xxx 訂閱
傑克大大,

1.我們現在也有其他幾個系統在用,多使用者用 Terminal Serivce 進來,列印報表有時候會衝突,已經是常常發生的事。甚至不是 Terminal Serivce,一般桌上型電腦,兩支程式都用 BDE,讀取在不同資料夾裡面的 .db 檔,也時有衝突,必須關掉其中一支程式,另一支才能正常跑,原因不明。
2.Sql Server 同步用複寫不難,難的在於複寫不只針對新增的資料,連修改也要複寫,複寫幾次之後,同一張單子在兩台主機,哪一張才是真的?
3.這證明你對報關有一定了解,那是不可能用網頁做的。除了資料庫存取速度之外,我們很注重使用者介面的效率,例如某些欄位固定是四個英文字的話,打完了四個字,自動跳到下一個欄位,不用按 Tab 或 Enter,而且我們也計算使用者按 Enter 或 Tab 的次數,能多按一次就少按一次。
4.這點我們有考慮過,但為時已晚,因為程式有共用的 AdoDataSet,去讀取基本資料,連線是固定的,因為使用數量太多,已經沒有辦法切割連線,去連不同的主機了。
5.大體而言,這不是程式問題,跑內網都可以,我們問過其他報關業者,他們各分公司都是獨立運作,只有我們希望台北和基隆能視為一家公司,是別人沒有的方式,試圖解決別人沒解決過的問題。我們的內網有 100M,如果台北到基隆的專線也有 100M,那甚麼問題都解決了。

至於套裝的報關系統,再好再厲害,我們都不合用,因為套裝軟體不接受修改,就算能修改,頂多修個 5%,不可能修個 40-50%,而我們的系統就是一直在修改,一直在強化,那天某個客戶說他的報表又如何如何,報單就要多放一個欄位,以配合報表前置作業,才能跑出正確的報表。常常因應一、兩個客戶而修改程式,尤其是報表,不同的客戶針對相同的東西,要求不同的報表,員工替客戶做報表的時間,多過做他們自己正常的工作。程式修改後,這個客戶死掉了,程式就多了一塊永遠不會再用到的功能,程式愈來愈大。
===================引 用 小傑克 文 章===================
看了上面的討論, 幾個建議給你參考

1. Terminal Serivce 是可以做的, 至於.db 問題, ...
2. DB 要做同步? 這真的不是隨便講兩句可以判斷的, 要去做功課搞清楚有哪幾種差異同步作法....覆寫要幾小時? 照你的系統來猜, 可能設定上還有調整的空間
3. 報關行系統嗎? 那web 不用考慮了, 你的op不可能可以忍受那 browser 解譯scritp/html 延遲的0.5秒 , 雖然用browser 有異地共用的好處, 但是每個行動都慢0.x 秒的感覺就會讓任何user 都受不了
4. ADO , ODBC 去做? 這是個解法, 前提是程式需要大幅改寫, 要大量使用local 端資料庫並做一些local端DB登入自動更新功能, 類似線上遊戲做法, 但既然你沒打算大幅改寫系統, 這點就不用考慮了
5. 找一家能處理你問題的軟體廠商來做吧, 貴公司有兩地100 人的使用者, 在報關or 物流業也算大了, 如果是物流業貴公司可能還有桃園/高雄甚至兩岸三地或國外還有分公司, 以這樣的公司規模系統應該要找專門公司規劃了,這已經超過非專業玩家能handle 的程度了, 台灣物流軟體公司也好幾家, 不仿參考一下他們的建議?, 你遇到的問題, 其他報關行/forwarder公司都會遇到, 就我所知好多年前就已有完整的產品 solution
------
有沒有可能,上帝使用程式操作世界?
heartgame0
一般會員


發表:2
回覆:29
積分:11
註冊:2008-07-28

發送簡訊給我
#36 引用回覆 回覆 發表時間:2009-11-13 11:57:01 IP:220.131.xxx.xxx 訂閱
提個無關緊要的問題!!不是這主題!
下面說客戶死掉,就多了一塊永遠不會再用到的功能!!!對於這點,真的覺得所有寫程式都這樣嗎?
我們遇到的也是這樣!
-----當寫加入新的一塊功能時,不能保留之前還沒寫入的版本原碼嗎?
那別的客戶用不到,就不要用有這塊的原碼就好了呀!真是好奇怪!大家都一直加一直加,
常聽到各戶說,太複雜,程式百分50、60的功能用不到。反應軟體公司,沒下文。



===================引 用 holydisciple 文 章===================
至於套裝的報關系統,再好再厲害,我們都不合用,因為套裝軟體不接受修改,就算能修改,頂多修個 5%,不可能修個 40-50%,而我們的系統就是一直在修改,一直在強化,那天某個客戶說他的報表又如何如何,報單就要多放一個欄位,以配合報表前置作業,才能跑出正確的報表。常常因應一、兩個客戶而修改程式,尤其是報表,不同的客戶針對相同的東西,要求不同的報表,員工替客戶做報表的時間,多過做他們自己正常的工作。程式修改後,這個客戶死掉了,程式就多了一塊永遠不會再用到的功能,程式愈來愈大。
=================引 用 小傑克 文 章===================
看了上面的討論, 幾個建議給你參考

1. Terminal Serivce 是可以做的, 至於.db 問題, ...
2. DB 要做同步? 這真的不是隨便講兩句可以判斷的, 要去做功課搞清楚有哪幾種差異同步作法....覆寫要幾小時? 照你的系統來猜, 可能設定上還有調整的空間
3. 報關行系統嗎? 那web 不用考慮了, 你的op不可能可以忍受那 browser 解譯scritp/html 延遲的0.5秒 , 雖然用browser 有異地共用的好處, 但是每個行動都慢0.x 秒的感覺就會讓任何user 都受不了
4. ADO , ODBC 去做? 這是個解法, 前提是程式需要大幅改寫, 要大量使用local 端資料庫並做一些local端DB登入自動更新功能, 類似線上遊戲做法, 但既然你沒打算大幅改寫系統, 這點就不用考慮了
5. 找一家能處理你問題的軟體廠商來做吧, 貴公司有兩地100 人的使用者, 在報關or 物流業也算大了, 如果是物流業貴公司可能還有桃園/高雄甚至兩岸三地或國外還有分公司, 以這樣的公司規模系統應該要找專門公司規劃了,這已經超過非專業玩家能handle 的程度了, 台灣物流軟體公司也好幾家, 不仿參考一下他們的建議?, 你遇到的問題, 其他報關行/forwarder公司都會遇到, 就我所知好多年前就已有完整的產品 solution
------
資訊業是永遠不能停止學習的行業!
但是進步都只是一點點一點點!
==可以不用理我!因為我的程度只有2成,或許不到!!
==我只會拉拉元件,打打迴圈,打打條件判斷,連連資料庫,rs232送送訊號,印表機簡單列印。
只有寫寫小小的點餐軟體(為何想寫,因為叫人家改的小東西,都ooxx,是會付錢的又不是沒錢,但是理由還是一堆)
小傑克
資深會員


發表:5
回覆:209
積分:357
註冊:2009-02-16

發送簡訊給我
#37 引用回覆 回覆 發表時間:2009-11-14 01:00:06 IP:59.112.xxx.xxx 訂閱
因為我不清楚你用哪個報表軟體, 所以不能確定你的狀況terminal是不是保證100%可以

我不想幫軟體公司廣告, 只能說兩家報關行這種狀況用terminal 是可以處理的,但作法上這些地方要注意, 翻寫BDE-->ado , 跑報表時 temp table 寫法,小心你的batchupdate 作法,報表軟體安裝方式and版本, 至於你提到驅動程式錯誤的部份,有三種可能 1.安裝問題, 2. terminal 連線設定and 權限 3.他是無辜的, 是你誤會了

terminal 行之有年, 有許多公司台北打單機場列印的 , 這些問題都有解法 ,因為有關個人商業道義問題,我只能提示你到這邊 ,若還是想自行開發維護,那建議你還是朝terminal 去解決,
不用花時間去想ado remote db(這種solution 要搭配初期很好的程式規劃/ 資料搜尋,你們程式光修就會修到死 )

至於BDE....BDE早晚要翻,看你長痛短痛而已

報表時常修改問題...最好是選用有designer 的報表軟體, 他山之石可以攻錯, 你也許可以去其他coload看看別人的系統怎麼運做的
------
額有朝天骨,眼中有靈光
編輯記錄
小傑克 重新編輯於 2009-11-14 01:05:19, 註解 無‧
小傑克 重新編輯於 2009-11-14 01:20:40, 註解 無‧
holydisciple
一般會員


發表:3
回覆:24
積分:10
註冊:2009-11-06

發送簡訊給我
#38 引用回覆 回覆 發表時間:2009-11-16 10:01:25 IP:220.128.xxx.xxx 訂閱
小傑克大大,

BDE 可是我們報表系統不可或缺的寶貝!我之前也是不看重 BDE,看不起 .db 的 Paradox 這種過時的檔案型資料庫,故意不去學它們,學了覺得沒有用。但是到我接手這套系統的報表程式時,我才知道檔案型資料庫對跑報表的重要性,試想,如果報表查詢畫面查出一百筆,而使用者要勾選其中六十筆來列印時,報表要怎麼跑?怎麼下指令去挑選這六十筆?沒機會挑選了!因為一按下 [查詢] 的一剎那,查詢指令已經確定,再加上使用者勾選的那些資料,不一定有對應的 Sql 條件,不一定能再下更多的 where 條件,而我們要求使用者查詢後,資料還可以經過勾選才跑報表,這是直接下指令撈資料庫資料產生報表所辦不到的事情,必須使用更囉嗦的處理方式。這不是我們對自己的多餘要求,其中之一是客戶的要求,是客戶要求報表要這樣跑,例如,客戶要我們印出單號是 A0001,A0002,B0001,B0004,B0012,B0018,B00121 這種跳越式的資料,而且不是一個單號印一頁,我們會下 like A% or like B%,再加上客戶編號,查回來一堆之後,再挑出這幾個單號來列印。為什麼客戶要這樣印?有可能這幾張單號是客戶上個月有關菸酒類的報關資料,他們只想看到菸酒類的,其他如食品類的他們不想看到。不是我們想用 BDE 這種過時又有點不妥定的東西,而是我們真的沒有其他辦法。
------
有沒有可能,上帝使用程式操作世界?
heartgame0
一般會員


發表:2
回覆:29
積分:11
註冊:2008-07-28

發送簡訊給我
#39 引用回覆 回覆 發表時間:2009-11-16 10:49:42 IP:220.131.xxx.xxx 訂閱
BDE多好用,不是很清楚,只用來連結資料用!
現在賣的軟體,都沒有用bde了!
說到查詢!你的類別問題,
我們買的軟體做法,好像會再基本資料加一欄,類別,
只要下期間、客戶編號、類別,就可以達到你要的報表了,
它每次條件出來,都有勾選,就是盡量縮小範圍,再去勾選。
(會一起看的報表,一定會有共同點,只是要想辦法建立,像基本資料多一欄)
(會說還要建資料進去很麻煩,我們都用匯入的方式,不用一筆一筆打。只是要客戶提供他們東西的共同點。)
還是覺得,BDE只是連結資料用。
===================引 用 holydisciple 文 章===================
小傑克大大,

BDE?可是我們報表系統不可或缺的寶貝!我之前也是不看重 BDE,看不起 .db 的 Paradox 這種過時的檔案型資料庫,故意不去學它們,學了覺得沒有用。但是到我接手這套系統的報表程式時,我才知道檔案型資料庫對跑報表的重要性,試想,如果報表查詢畫面查出一百筆,而使用者要勾選其中六十筆來列印時,報表要怎麼跑?怎麼下指令去挑選這六十筆?沒機會挑選了!因為一按下 [查詢] 的一剎那,查詢指令已經確定,再加上使用者勾選的那些資料,不一定有對應的 Sql 條件,不一定能再下更多的 where 條件,而我們要求使用者查詢後,資料還可以經過勾選才跑報表,這是直接下指令撈資料庫資料產生報表所辦不到的事情,必須使用更囉嗦的處理方式。這不是我們對自己的多餘要求,其中之一是客戶的要求,是客戶要求報表要這樣跑,例如,客戶要我們印出單號是 A0001,A0002,B0001,B0004,B0012,B0018,B00121 這種跳越式的資料,而且不是一個單號印一頁,我們會下 like A% or like B%,再加上客戶編號,查回來一堆之後,再挑出這幾個單號來列印。為什麼客戶要這樣印?有可能這幾張單號是客戶上個月有關菸酒類的報關資料,他們只想看到菸酒類的,其他如食品類的他們不想看到。不是我們想用 BDE 這種過時又有點不妥定的東西,而是我們真的沒有其他辦法。
------
資訊業是永遠不能停止學習的行業!
但是進步都只是一點點一點點!
==可以不用理我!因為我的程度只有2成,或許不到!!
==我只會拉拉元件,打打迴圈,打打條件判斷,連連資料庫,rs232送送訊號,印表機簡單列印。
只有寫寫小小的點餐軟體(為何想寫,因為叫人家改的小東西,都ooxx,是會付錢的又不是沒錢,但是理由還是一堆)
holydisciple
一般會員


發表:3
回覆:24
積分:10
註冊:2009-11-06

發送簡訊給我
#40 引用回覆 回覆 發表時間:2009-11-16 12:01:49 IP:220.128.xxx.xxx 訂閱
小傑克大大,

我想過要加布林值欄位在資料表當勾選很困難,因為兩個人同時跑同一份報表時,那個勾選欄位會共用到,報表會跑出別人勾選的資料。
===================引 用 heartgame0 文 章===================
BDE多好用,不是很清楚,只用來連結資料用!
現在賣的軟體,都沒有用bde了!
說到查詢!你的類別問題,
我們買的軟體做法,好像會再基本資料加一欄,類別,
只要下期間、客戶編號、類別,就可以達到你要的報表了,
它每次條件出來,都有勾選,就是盡量縮小範圍,再去勾選。
(會一起看的報表,一定會有共同點,只是要想辦法建立,像基本資料多一欄)
(會說還要建資料進去很麻煩,我們都用匯入的方式,不用一筆一筆打。只是要客戶提供他們東西的共同點。)
還是覺得,BDE只是連結資料用。

------
有沒有可能,上帝使用程式操作世界?
小傑克
資深會員


發表:5
回覆:209
積分:357
註冊:2009-02-16

發送簡訊給我
#41 引用回覆 回覆 發表時間:2009-11-16 19:28:27 IP:59.112.xxx.xxx 訂閱
我想先釐清bde與paradox 的事, 誠如樓上所言,bde 只是資料庫連線方式, paradox純粹是個單機型文字模式的database 是borland 早早早...期買來的產品
我想你的功能也多半是拿來做暫存DB用, 暫存DB作法很多, 如果你不想使用ado 連access, 那用ado - odbc - paradox 也一樣可以, 但這不是關鍵,關鍵是在
terminal 上使用暫存table 的方法

關鍵---> 要動態配置DB連線位置,每個人要用不同的temp db ,在paradox db未開啟之前DB的 path是可以改的
講到這邊相信應該已經能解決你的問題....如果還是不行,可以去找其他同行看一下別人系統作法(這行多的是delphi開發的)

===================引 用 holydisciple 文 章===================
小傑克大大,

我想過要加布林值欄位在資料表當勾選很困難,因為兩個人同時跑同一份報表時,那個勾選欄位會共用到,報表會跑出別人勾選的資料。
------
額有朝天骨,眼中有靈光
rovi
一般會員


發表:2
回覆:10
積分:12
註冊:2002-05-08

發送簡訊給我
#42 引用回覆 回覆 發表時間:2009-12-01 11:44:53 IP:111.255.xxx.xxx 訂閱
1.我們現在也有其他幾個系統在用,多使用者用 Terminal Serivce 進來,列印報表有時候會衝突,已經是常常發生的事。甚至不是 Terminal Serivce,一般桌上型電腦,兩支程式都用 BDE,讀取在不同資料夾裡面的 .db 檔,也時有衝突,必須關掉其中一支程式,另一支才能正常跑,原因不明。

-->請參考
procedure TfmMainBase.FormCreate(Sender: TObject);
begin
Session.NetFileDir := ExtractFileDir(Application.ExeName); //rovi20020806: for terminal server
//rovi20020909: remark Session.PrivateDir,否則無法同時執行兩支ERP程式(第2支程式無法連結資料庫)
//Session.PrivateDir := ExtractFileDir(Application.ExeName); //rovi20020905: for terminal server

關鍵---> 要動態配置DB連線位置,每個人要用不同的temp db ,在paradox db未開啟之前DB的 path是可以改的
-->我都將 TQuery.RequestLive=True,不用實體的Table

GrandRURU
站務副站長


發表:240
回覆:1680
積分:1874
註冊:2005-06-21

發送簡訊給我
#43 引用回覆 回覆 發表時間:2011-02-22 16:01:57 IP:61.219.xxx.xxx 訂閱
 看到三年前的文章,三年後的我也遇到類似問題了

holydisciple大指的應該是 Citrix Meta Frame XP 吧,看到它的展示真的有讓我嚇一跳。

沒有web form 的難寫,多了Win form 的靈活度。(原有程式放在這個架構上就等於無痛升級到 3-tier了)

n-tier 能做到這樣,連線頻寬的問題真的會少很多。

三年後的 Delphi XE 也推出了雲端功能,但不知是否能做到這番 n-tier架構?
編輯記錄
GrandRURU 重新編輯於 2011-02-22 16:58:18, 註解 無‧
GrandRURU 重新編輯於 2011-02-22 16:58:57, 註解 無‧
holydisciple
一般會員


發表:3
回覆:24
積分:10
註冊:2009-11-06

發送簡訊給我
#44 引用回覆 回覆 發表時間:2011-02-22 19:49:19 IP:220.128.xxx.xxx 訂閱
公司後把台北和基隆的專線昇級來解決這個問題,稍慢一點,但可接受。如果兩台主機要對拷,兩台主機具有 "兄弟" 關係時,我想是不可能做到同步的,因為兩台主機都同時有人在新增修改資料,會產生相同的資料編號,對拷時沒有人知道哪邊的資料才是正確的,如果兩台主機是父子關係,才有可能對拷。
------
有沒有可能,上帝使用程式操作世界?
[<<] [1] [2] [>>]
系統時間:2024-04-25 2:32:17
聯絡我們 | Delphi K.Top討論版
本站聲明
1. 本論壇為無營利行為之開放平台,所有文章都是由網友自行張貼,如牽涉到法律糾紛一切與本站無關。
2. 假如網友發表之內容涉及侵權,而損及您的利益,請立即通知版主刪除。
3. 請勿批評中華民國元首及政府或批評各政黨,是藍是綠本站無權干涉,但這裡不是政治性論壇!