您可以結合使用唯一欄、查閱欄和關聯強制執行 (串聯及限制刪除),來建立清單之間的關聯。這些項目都可以提升您建立更複雜商務解決方案的能力,並有助於保留資料的完整性。
本文內容
清單關聯概觀
下列各節提供重要的背景資訊,涵蓋主題包括建立來源與目標清單之間的關聯、建立唯一欄與查閱欄、強制執行清單關聯行為、新增主要及次要查閱欄、檢視/編輯及刪除清單關聯中項目、在清單有眾多項目時管理清單關聯,以及使用 Microsoft Office SharePoint Designer 2010 等編輯程式的其他優點。
1. [項目] 清單是來源清單,而 [訂單] 清單是目標清單。
2. 每份清單都有唯一欄,以確保資料正確相符。
3. 來源清單中的主要查閱欄會根據符合的值「查閱」目標清單中的 [訂單識別碼] 欄。
4. 來源清單中的次要查閱欄會自動從目標清單插入 [訂單描述] 欄。
建立唯一欄
您在建立欄時,可以指定該欄包含唯一值, 也就是說,清單的該欄中不能有任何重複的值。您不能新增含有重複值的清單項目、修改現有清單項目而造成重複值,或是從資源回收筒還原項目而產生重複值。而且,如果在來源清單中建立查閱欄,並且定義該欄為唯一欄,那麼在目標清單中的該欄就不能含有重複值。
附註: 唯一性是不區分大小寫的,所以 ORD-231 和 ord-231 等值會視為重複值。
唯一欄也必須有索引。您建立唯一欄時,系統可能會提示您建立索引,您只要按一下 [確定],就會自動建立索引。唯一欄有索引後,就不能從該欄移除索引,除非您先重新定義該欄以允許重複值。
下表摘要列出哪些欄類型可以或不可以用來建立唯一欄。
支援的欄類型 |
不支援的欄類型 |
單行文字 |
多行文字 |
選擇 (單一值) |
選擇 (多重值) |
數字 |
計算 |
貨幣 |
超連結或圖片 |
日期及時間 |
自訂欄 |
查閱 (單一值) |
查閱 (多重值) |
個人或群組 (單一值) |
個人或群組 (多重值) |
是/否 |
建立查閱欄
若要建立兩份清單之間的關聯,您可在來源清單中建立查閱欄,以便目標清單中的一或多個值符合來源清單中查閱欄的值時,擷取 (或「查閱」) 那些值。建立此查閱欄 (主要欄) 後,只要其他欄有下述的支援資料類型,就可以繼續從目標清單新增其他欄 (次要欄) 至來源清單。
下表摘要列出哪些欄類型可以或不可以用來建立查閱欄。
支援的欄類型 |
不支援的欄類型 |
單行文字 |
貨幣 |
數值 |
查閱 |
日期及時間 |
個人或群組 |
計算項目 |
|
超連結或圖片 |
|
多行文字 |
|
是/否 |
|
選擇 |
|
自訂欄 |
有兩種類型的查閱欄可以建立,分別是具有強制關聯的查閱欄,以及具有未強制關聯的查閱欄。
具有強制關聯的查閱欄
在具有強制關聯 (也稱為參考完整性) 的查閱欄中,有兩種方式可以查閱單一值並在目標清單中維持資料的完整性:
串聯刪除 當您刪除目標清單中的項目時,來源清單中的相關項目也會一併刪除。在此情況下,您是要確保所有相關項目能夠在一次資料庫交易中全部刪除。比方說,如果您在目標清單中刪除一個訂單,那麼您可以確保來源清單中的對應訂單項目也會一併刪除。您可不希望留下沒有對應訂單的訂單項目,因為這會產生「孤立」訂單項目,而在日後產生混淆。
限制刪除 如果您想要刪除目標清單中的某個項目,但只要該項目在來源清單中有一或多個相關項目時,您就無法在目標清單中刪除該項目。在此情況下,您是要確保會保留目標清單中的相關項目。比方說,如果有人想從目標清單中刪除訂單項目,但是客戶可能仍擱置該訂單,而您希望在訂單處理前禁止這項刪除作業。您不希望不慎刪除客戶訂單,因為這會使您無法完成訂單。
1. 串聯刪除作業可確保在一次資料庫交易中刪除所有相關項目。
2. 限制刪除作業則是在來源清單中存在相關項目時,防止刪除目標清單中的項目。
簡言之,強制執行清單關聯行為有助於保持資料有效,並可防止未來可能造成生問題的不一致性。
附註: 您必須對於清單有 [管理清單] 權限,才能建立或修改強制關聯。
強制執行關聯的查閱欄也必須有索引。您在建立可強制執行關聯的查閱欄時,系統可能會提示您建立索引,您只要按一下 [確定],就會自動建立索引。可強制執行關聯的查閱欄有索引後,除非您先移除強制關聯,否則無法從該欄移除索引。
具有未強制關聯的查閱欄
在具有未強制執行關聯的查閱欄中,您可以從來源清單查閱目標清單中的一或多個值。另外,您在來源清單中刪除項目時,只要您對於該清單有刪除權限,就不會有任何其他刪除限制,目標清單中也不會進行其他任何刪除作業。
檢視及編輯清單關聯中的項目
建立清單關聯的其中一項優點就是,您可以在一個頁面上顯示及編輯二或多份清單中的欄。您在來源清單上建立查閱欄時,主要欄會顯示目標清單欄的值,但您也可以指定目標清單的其他次要欄也隨著主要欄和其他來源清單欄一起顯示。
主要欄值是一個連結,您可以按一下來顯示目標清單中該項目的所有欄值。目標清單的每個次要欄值都會在來源清單欄中顯示為文字。如果建立具有多重值的查閱欄,目標清單中的每個欄 (不管是主要或次要),都會顯示多個對應值並以分號隔開。您可以在清單檢視中操控這些主要和次要欄,方式與操控來源清單中的欄大約相同,例如新增、移除、篩選及排序。
主要欄名就是您在建立查閱欄時提供的名稱。根據預設,每個次要欄名都會遵從標準命名慣例:<來源清單中的主要欄名>: <目標清單中的欄名>。因此,變更主要欄名時會變更所有次要欄名。但是,您可以修改預設的次要欄名和描述,讓名稱對您來說更具有意義。
1. 具有多重值的主要查閱欄。
2. 具有多重值的次要查閱欄。
3. 欄名稱已從預設名稱 [GetID: 標題] 變更為 [樂器]。
刪除清單關聯中的項目與清單
若要刪除清單關聯中的項目或清單,即必須瞭解在來源和目標清單及任何相關欄上執行這項作業的後果,尤其是如果清單具有限制刪除或串聯刪除的強制關聯時。為維護資料的完整性,即使您具有刪除權限,也可能會遭到封鎖而無法刪除項目。刪除這些項目也需要後端資料庫在執行刪除交易時暫時鎖定資料,而這可能要耗費點時間才能完成。
下列各節將更詳細地描述發生的情況。
刪除具有未強制關聯的來源或目標清單項目 如果您想要刪除的來源或目標清單項目不具有強制關聯時,就會發生以下情況:
-
您可以從來源或目標清單移除項目。
-
目標或來源清單中相關的項目不會刪除。
刪除具有限制刪除強制關聯的來源清單項目 當您想要刪除的來源清單項目,具有限制刪除的強制關聯時,就會發生以下情況:
-
您可以從來源清單移除項目。
-
目標清單中相關的項目不會刪除。
刪除具有限制刪除強制關聯的目標清單項目 當您想要刪除的目標清單項目,具有限制刪除的強制關聯時,就會發生以下情況:
-
您會收到錯誤訊息,指出該欄已用來強制執行限制刪除作業。
-
即使您對於該項目有刪除權限,也不能刪除該目標清單項目。
刪除具有串聯刪除強制關聯的來源清單項目 當您想要刪除的來源清單項目,具有串聯刪除的強制關聯時,就會發生以下情況:
-
您可以在來源清單中刪除該項目。
-
目標清單中相關的項目不會刪除。
刪除具有串聯刪除強制關聯的目標清單項目 當您想要刪除的目標清單項目,具有串聯刪除的強制關聯時,就會發生以下情況:
-
您可以刪除目標清單中的項目及來源清單中所有相關項目。
-
刪除作業是以資料庫交易的形式執行,也就是說,必須完成整個刪除作業,才能確保沒有任何清單成為無效狀態。
附註: 若是文件庫,如果來源清單中的項目是已取出的檔案,則兩個項目仍然都會刪除。
刪除具有未強制關聯的來源或目標清單 如果您想要刪除的來源和目標清單具有未強制關聯時,您可以像刪除其他任何清單一樣,刪除來源清單或目標清單。
刪除具有串聯或限制刪除強制關聯的來源或目標清單 當您想要刪除的來源或目標清單,具有串聯刪除或限制刪除的強制關聯時,就會發生以下情況:
-
您會收到警告,表示來源或目標清單與其他清單有一或多項關聯,而這些清單都會顯示在警告訊息中。
-
您不能刪除來源或目標清單。
從資源回收筒還原 如果網站上啟用了 [資源回收筒],所有刪除的項目都會儲存在資源回收筒中,您可以在必要時還原這些項目。如果您是在串聯刪除作業的一項資料庫交易中刪除項目,則關聯中的所有項目都會顯示出來,而您也可以還原那些項目。但是,原始的目標和來源清單都必須仍然存在,否則項目就無法還原。
摘要總結:
-
刪除目標清單中的項目時,串聯刪除作業也會刪除來源清單中的所有相關項目。
-
您嘗試刪除目標清單中的項目時,如果該項目在來源清單中有一或多個相關項目,則限制刪除作業會使您無法刪除目標清單中的項目。
-
您不能刪除具有強制關聯的清單。
清單有眾多項目時管理清單關聯
您使用查閱欄、唯一欄和具有強制關聯的清單建立清單關聯時,可能會達到資源閾值或限制,而在下列狀況下可能會遭到封鎖:
-
若在項目數超過清單檢視閾值的現有清單中讓某欄成為唯一欄 (但請注意,若新增一個項目而使得清單超過清單檢視閾值,則這種作業通常不會遭到封鎖)。
-
在項目數超過清單檢視閾值的清單中為查閱欄位開啟串聯刪除或限制刪除。
-
您已超過清單檢視查閱閾值 (依預設為八個查閱欄)。
-
刪除作業的項目數超過 1,000。
如需閾值與限制及管理含眾多項目之清單和文件庫的詳細資訊,請瀏覽<請參閱>一節。
使用 Office 等編輯程式 SharePoint Designer 2010
您不妨考慮使用與 SharePoint 技術相容的編輯程式。 例如,Microsoft Office SharePoint Designer 2010 可提供其他功能和特性,協助您使用清單關聯。 您可以將 [清單檢視網頁組件] 或 [資料表單網頁組件] 連線到 [相關清單網頁組件],以便垂直顯示查閱目標清單的多個值。 您也可以使用清單結構描述編輯器,將插入作業限定為欄位驗證的一部分。
如需 Office SharePoint Designer 2010 的詳細資訊,請參閱該產品的 [說明] 系統。
如何建立唯一欄和查閱欄
下列各節提供建立唯一欄和查閱欄的逐步指示。
建立或修改唯一欄
警告: 您不能在定義了項目層級權限的清單中建立唯一欄;如果清單包含唯一欄,您就不能中斷從清單至清單項目的權限繼承;您不能在包含具有唯一權限之項目的清單中,或是已啟用核准內容的清單中,建立唯一欄或修改欄成為唯一;而且如果文件庫包含唯一欄,您也不能使用 [在檔案總管中開啟] 命令,將檔案複製至文件庫。
-
瀏覽至含有您要新增唯一欄之清單的網站。
-
按一下快速啟動] 上的清單名稱或按一下 [網站動作檢視所有網站內容],然後按一下然後在 [清單] 區段中,按一下 [清單的名稱。
附註: 網站的外觀及導覽可做大幅修改。 如果您找不到某個選項 (例如命令、按鈕或連結),請連絡管理員。
-
按一下功能區的 [清單] 索引標籤,然後按一下 [管理檢視] 群組中的 [建立欄]。
-
在 [欄名稱] 方塊中,輸入欄的名稱。
-
在 [此欄的資訊類型為] 下,按下列其中一項:
-
單行文字
-
多行文字
-
選項
-
編號
-
貨幣
-
日期及時間
-
是/否
-
查閱 (單一值)
-
個人或群組 (單一值)
-
-
按一下 [其他欄設定] 區段中 [強制執行唯一值] 下的 [是]。
如果您選取不支援的資料類型,或者若您建立允許多重值的查閱欄,則不會顯示 [強制執行唯一值]。
附註: .
-
您不能移除唯一欄的索引。如果您要移除索引,必須先將欄從唯一欄變更為允許重複值的欄,然後再移除索引。
-
如果您嘗試將現有欄從重複值變更為唯一值,若現有欄包含重複值,可能就無法執行這項作業。在此情況下,您必須先移除所有重複值,然後將欄從允許重複值變更為唯一欄。
-
如果您要變更唯一欄的資料類型,必須執行下列作業:變更欄以允許重複值、移除索引、將欄變更為其他支援的資料類型,然後將欄變更為唯一欄。
建立查閱欄
-
瀏覽至含有您想要新增查閱欄之清單的網站。
-
按一下 [快速啟動] 上的清單名稱或按一下 [網站動作、 按一下 [檢視所有網站內容],然後底下 [清單] 區段中,按一下清單的名稱。
附註: 網站的外觀及導覽可做大幅修改。 如果您找不到某個選項 (例如命令、按鈕或連結),請連絡管理員。
-
按一下功能區的 [清單] 索引標籤,然後按一下 [管理檢視] 群組中的 [建立欄]。
-
在 [欄名稱] 方塊中,輸入欄的名稱。
-
在 [此欄的資訊類型為] 下,按一下 [查閱]。
-
在 [取得資訊來源] 方塊中,選取目標清單。
-
在 [在此欄] 方塊中,選取主要欄。
-
在 [新增欄以顯示每個其他欄位] 下,針對您要新增的每個次要欄,按一下欄名旁的核取方塊。只有含受支援資料類型的欄才會列出。
-
日後若要新增或移除次要欄,請修改查閱欄,然後選取所要的項目。
附註: 您不能針對次要欄編製索引,也不能讓次要欄變成唯一欄。
-
若要讓查閱欄顯示在預設檢視中,請選取 [新增至預設檢視]。
-
若要建立強制關聯,請選取 [強制執行關聯行為],然後按一下 [限制刪除] 或 [串聯刪除]。
-
按一下 [確定]。