了解決策列

決策列可用來標識當特定條件符合或不符合時需採用的操作。這些決策列允許操作可根據條件的不同結果而有所不同。在規則集中最多有十個決策列可供使用。

注意: 在您開始創建規則集之前,詳細分析您的規則集條件和操作,並對決策列的使用作出詳細的計劃,這是非常重要的。

條件的結果通常是〔是〕或者〔否〕,而對於這兩種結果可能需要實施不同的操作。在決策列中,可用〔是〕或〔否〕作為條件結果為條件輸入。而結果所需的操作會在相同決策列的相關操作語句中用一個〔X〕標識。

例如:需要一條業務規則來檢查帳務分析 5 中的值。如果它包含值 P01,則規則應將帳務分析 6 的值設為 ABC。如果帳務分析 5 包含其他值,則帳務分析 6 必須設為 123。

在這個例子中,決策列 1 可用來標識如果條件結果為〔是〕應採取的操作,同時決策列 2 可用來標識如果條件結果為〔否〕應採取的操作。

命令 第 1 值 運算符 第 2 值 決策列 1 決策列 2
如果 帳務分析 5 = P01 Y N
設定 帳務分析 6 = ABC X ?
設定 帳務分析 6 = 123 ? X

使用多個如果語句和決策列

您可以在一個規則集中包含多個如果條件語句,用來檢查不同的數據項目。如果您在各條語句上使用相同的決策列,則如果語句的結果會相互鏈接。或者,如果您使用單獨的決策列,則如果語句會分別處理。

多個相關如果語句的示例

當科目代碼為 P01 時,如果憑証描述尚未輸入,下列規則集會顯示一條出錯信息。

如果科目代碼不是 P01,或者如果描述不為空,則這條規則不會執行任何操作,因為這些結果尚未在決策列中標識。

命令 第 1 值 運算符 第 2 值 決策列 1
如果 科目代碼 = P01 Y
如果 描述 = 空格 Y
顯示 Desc-Required_Message ? ? X

多個不相關如果語句的示例

在這個例子中,前兩個如果語句互相關聯,因為決策列 1 和 2 都用於這兩條語句。在決定所需採取的操作之前,這條規則會一併檢查科目類型和地址代碼項目的內容,即:是顯示一條出錯信息,還是顯示地址行 1。

由於第三條如果語句引用不同的決策列 (3),因此並不相關且會單獨處理。無論科目類型和地址代碼的值如何,如果帳務分析代碼 4 為空,則系統會顯示一條出錯信息。

命令 第 1 值 運算符 第 2 值 決策列 1 決策列 2 決策列 3
如果 科目類型 = 應收帳款 Y Y ?
如果 科目代碼 = 空格 Y N ?
如果 帳務分析 4 = 空格 ? ? Y
顯示 出錯信息 - 需要地址代碼 ? ? X ? ?
顯示 地址第 1 行 ? ? ? X ?
顯示 出錯信息 - 需要分析代碼 4 ? ? ? ? X

按下述內容擴展上述例子,可闡明語句的使用。決策列結果並不在語句上輸入,這是因為它們只是前面如果語句的繼續。

命令 第 1 值 運算符 第 2 值 決策列 1 決策列 2 決策列 3
如果 科目類型 = 應收帳款 Y Y ?
? = 應付帳款 ? ? ?
? = 客戶 ? ? ?
如果 地址代碼 = 空格 Y N ?
如果 帳務分析 4 = 空格 ? ? Y
顯示 出錯信息 - 需要地址代碼 ? ? X ? ?
顯示 地址第 1 行 ? ? ? X ?
顯示 出錯信息 - 需要分析代碼 4 ? ? ? ? X