2012-07-11 45 views
0

我有兩種形式,公司和客戶端。一家公司可以有任意數量的客戶,而客戶可以是任何公司的客戶。我希望能夠做一些事情,如列出給定公司的客戶,或列出給定客戶所僱用的公司。使用Domino數據庫結構處理此問題的最佳方法是什麼?處理XPages/Lotus中的多對多關係

+0

什麼意思與*東西*?皮膚貓有很多種方法,每種方法都有其優點和侷限性...性能?靈活性?易於實施? – 2012-07-11 19:27:59

回答

3

這沒問題。

爲公司和客戶創建分類視圖。然後,將公司名稱存儲在每個公司文檔上的每個客戶文檔和客戶名稱上。使用單個類別的嵌入式視圖在每個表單上列出它們。點擊嵌入視圖中的名稱打開文檔。

或者,爲公司 - 客戶關係創建第三種表單類型並使用它填充嵌入的視圖。

+1

第三種「形式」選項是如果Josh提出的有很多很多的選項的話。這不需要是表單,只是文檔和用戶界面的視圖。我們爲特殊需求服務組織構建了類似的東西。如果感興趣,請聯繫我進行演示。 - 現代文件 – Newbs 2012-07-12 17:48:18

+0

@Newbs如果沒有單獨的表單,那麼它與第一個表單相同(將公司名稱放在客戶端文檔中,反之亦然)。擁有單獨文檔的原因是爲了在不編輯任何一端的文檔的情況下管理連接。 – 2012-07-13 01:02:06

+1

對於太多的關係+1是避免文檔中字段64k限制的最簡單的解決方案。主文檔不必要的保存也是不錯的一點。 – 2012-07-13 10:43:26

0

首先一個問題:客戶和公司之間有什麼區別?一個關係可以簡單地由存儲一個或多個其他公司的密鑰的多值字段ClientOf表示。如果您想查找公司X的所有客戶端,則需要使用第一列中ClientOf字段的分類視圖。

我想你的問題不是(關係到)關係的創造以及維護。您必須自己維護所有內容,即當公司被移除時,您必須從ClientOf字段中刪除對公司的所有引用。當您使用使用@Unique創建的密鑰時,您不必擔心公司的名稱更改。另一方面,你總是需要做額外的查找才能找到它的真名。

+0

我懷疑與企業更名有關係的關係會變得更加頻繁。 – 2012-07-13 01:06:15

+0

的確如此,但你的意思是什麼? – 2012-07-13 08:48:28