特定管理 > 訂做企業物件 > 類型及屬性管理 > 使用類型及屬性管理公用程式 > 管理類型 > 類型資訊頁 > 下聯式屬性標籤 > 下聯式屬性規則範例
  
下聯式屬性規則範例
下列範例使用具有有限值的簡單屬性資料集。
* 
先針對某一情境建立所有下聯式屬性規則,然後再使用。
假設在區域類型上有三個屬性:「國家/地區」、「州/省」和「縣/市」。您想要建立一組下聯式屬性規則,以使「國家/地區」屬性的值驅動「州/省」屬性的可用值,而「州/省」屬性的值又驅動「縣/市」屬性的可用值,如下表所示:
國家
狀態
縣/市
美國
亞利桑那州
埃文代爾
比斯比
道格拉斯
科羅拉多州
阿拉莫薩
丹佛
威斯敏斯特
佛羅里達州
亞特蘭蒂斯
傑克遜維爾
邁阿密
澳洲
新南威爾斯州
奧爾伯里
雪梨
臥龍崗
印度
古吉拉特邦
艾哈邁達巴德
拉傑果德
蘇拉特
假設以下內容:
「國家/地區」、「州/省」和「縣/市」屬性存在於區域類型。
已使用所需值針對每個屬性建立全域列舉。
已使用現有全域列舉針對每個屬性建立單一、已啟用的列舉值清單條件約束。
如需詳細資訊,請參閱列舉與下聯式屬性規則
首先,沿著下聯式屬性樹往下一個層級建立下聯式屬性規則 (從「國家/地區」到「州/省」):
如果國家/地區 = 美國,則州/省 = 亞利桑那州、科羅拉多州、佛羅里達州
如果國家/地區 = 澳洲,則州/省 = 新南威爾斯州
如果國家/地區 = 印度,則州/省 = 古吉拉特邦
然後建立規則,代表沿下聯式屬性樹 (「國家/地區」至「州/省」至「縣/市」) 而下的兩個層級:
如果國家/地區 = 美國,且州/省 = 亞利桑那州,則縣/市 = 埃文代爾、比斯比、道格拉斯
如果國家/地區 = 美國,且州/省 = 科羅拉多州,則縣/市 = 阿拉莫薩、丹佛、威斯敏斯特
如果國家/地區 = 澳洲,且州/省 = 新南威爾斯州,則縣/市 = 奧爾伯里、雪梨、臥龍崗
如果國家/地區 = 印度,且州/省 = 古吉拉特邦,則縣/市 = 艾哈邁達巴德、蘇拉特、拉傑果德
可將所建立之規則的驅動屬性隱藏起來。例如,新加坡本身是主權城市,也是省份及國家/地區。它沒有其他省份或城市。
在此情況下可建立此規則:如果國家 = 新加坡,則省份 = 已隱藏。在符合此規則的情況下,省份屬性不會顯示在一般使用者介面中。
您也可以建立一種規則,強制使用者必須為驅動屬性指派值。例如,新加坡沒有省份或城市,因此您可能想要強制使用者輸入郵遞區號值,以擷取地點的一些相關詳細資訊。
在此情況下,您可建立一規則,其中如果國家 = 新加坡,則郵遞區號 = 必要。在符合此規則的情況下,使用者必須在一般使用者介面中輸入郵遞區號的值。
如需有關將規則設定為隱藏或必要的詳細資訊,請參閱建立新的下聯式屬性規則
* 
您必須建立表示樹下一個層級的規則,因為透過查看針對屬性集中所牽涉屬性所定義之所有下聯式屬性規則與條件約束的交集,會產生「屬性集報告」。如果未建立這些規則,報告不會瞭解「州/省」的某些值受「國家/地區」的某些值所限制。
例如:如果未建立規則「如果國家/地區 = 美國,則州/省 = 亞利桑那州、科羅拉多州、佛羅里達州」,系統會認為「州/省」的所有值對「國家/地區」的所有值均有效。即使我們擁有規則「如果國家/地區 = 美國,且州/省 = 亞利桑那州,則縣/市 = 埃文代爾、比斯比、道格拉斯」也還是如此,因為此規則僅指定何時可選取「縣/市」值「埃文代爾」、「比斯比」和「道格拉斯」。此規則不會指定可選取「亞利桑那州」作為「州/省」的時機。
如需詳細資訊,請參閱屬性集報告
* 
「編輯物件」UI 的行為:
假設定義了兩個規則:
如果國家/地區 = 美國,且州/省 = 亞利桑那州,則縣/市 = 埃文代爾、比斯比、道格拉斯
如果國家/地區 = 美國,且州/省 = 科羅拉多州,則縣/市 = 阿拉莫薩、丹佛、威斯敏斯特
假設已建立一個物件,其中國家/地區 = 美國,州/省 = 亞利桑那州,且縣/市 = 埃文代爾;並且您想要將值更新為國家/地區 = 美國,州/省 = 科羅拉多州,且縣/市 = 丹佛
當嘗試將此物件編輯為國家/地區 = 美國以及州/省 = 科羅拉多州時,您會發現「縣/市」屬性會在下拉式清單中顯示阿拉莫薩、丹佛、威斯敏斯特和埃文代爾。這是預期的行為,因為目前值將始終顯示在下拉式清單中。但是,如果您選取埃文代爾,則系統會擲回錯誤,因為其與新規則不相符。此處的值埃文代爾僅供檢視目的。