交叉決策表又叫決策矩陣,是URule Pro中提供的一種特殊類型的決策表。
與普通決策表相比,交叉決策表的條件由縱向和橫向兩個維度決定,而普通決策表的條件只是由縱向維度決定;但在普通決策表的動作部分可以是三種類型,分別是賦值、輸出和執(zhí)行方式,而在交叉決策表中動作部分就是縱向和橫向兩個維度交叉后的單元格的值,一般來說,這種交叉后單元格的值都是賦給某個變量或參數(shù),所以交叉決策表的動作基本就一個,那就是賦值。
下面的這張圖中展示了交叉決策表的整體結(jié)構(gòu)。
在上圖中,紫色單元格中5的值由橫向和縱向兩個維度的上箭頭對應(yīng)的條件決定,只有這兩個維度上的條件都滿足了,才會執(zhí)行將這個單元格里的值賦給“客戶.等級”這個變量。
相比普通的決策表,交叉決策表是從橫向和縱向兩個維度來唯一確定一個值,所以它更加簡單,也更為直觀,相同類型的交叉決策表實現(xiàn)的交叉業(yè)務(wù)規(guī)則,如果換成普通決策表來定義,那將大大增加定義的復(fù)雜度。
打開URule Pro的控制臺,在項目的“決策表”節(jié)點下點擊右鍵菜單,選擇“添加交叉決策表”項,輸入正確的名稱,即可創(chuàng)建一個新的交叉決策表文件,如下圖所示:
接下來,我們需要導(dǎo)入要使用到的在項目中已定義好的變量、參數(shù)、常量或動作庫文件,這點和前面介紹的規(guī)則集、普通決策表的用法一致,然后就可以來編輯我們的交叉決策表文件。
首先,對于橫向和縱向的條件部分,在定義時需要首先選擇橫向一行以及縱向一列條件所對應(yīng)的對應(yīng)屬性,如下圖所示:
屬性選擇完成后,就可以為條件在單元格上點擊右鍵菜單,為條件單元格配置具體的條件,如果需要增加行列,也是通過在條件單元格里點擊右鍵菜單,添加對應(yīng)的條件行列即可。如下圖所示:
橫向和縱向的條件配置完成后,接下來就可以配置交叉單元格的值了。交叉單元格的值配置方式比較簡單,點擊單元格中“無”在彈出的菜單里選擇對應(yīng)的配置項,完成配置即可,這點與之前介紹的向?qū)揭?guī)則完全一致。
如果某個條件或交叉單元格的值不再需要了,那么可以在單元格里點擊右鍵,選擇清空即可。
交叉決策表的屬性與普通決策表的屬性完全一樣,所起到的作用也一致,這里不再贅述。
最后,還有一個重要的屬性需要配置,那就是左上方的“選擇交叉單元格值要賦予的對象”,其作用就是將橫向和縱向兩個維度的條件滿足后的交叉單元格的值賦予的具體對象,這里我們可以選擇具體的變量或參數(shù),如下圖所示:
在交叉決策有編輯器上方的工具欄里,同樣有“導(dǎo)入Excel”按鈕,說明交叉決策表和普通決策表一樣支持將外部Excel里的數(shù)據(jù)導(dǎo)入到當(dāng)前交叉決策表中,下面我們就來看看如何導(dǎo)入。
交叉決策表支持從外部Excel中導(dǎo)入。Excel可以按照URule Pro中的要求定義好交叉決策表,然后就可以直接導(dǎo)入,這樣可以大大減輕交叉決策表定義的工作量,大幅提高工作效率。比如下面的Excel文件(點擊此處下載此Excel文件):
導(dǎo)入后的效果如下:
可以看到,Excel在定義交叉決策表時同樣支持橫向和縱向兩個維度多層條件配置,這與交叉決策表功能一致。在Excel中定義要導(dǎo)入到URule Pro中的交叉決策表時需要注意以下幾點:
左上角單元格合并后,可以輸入具體內(nèi)容,這些內(nèi)容在導(dǎo)入到后就變成交叉表的表頭,在導(dǎo)入時,URule Pro就是根據(jù)這里的單元格合并情況來區(qū)分橫縱向條件的,所以正確的合并左上角的交叉單元格是定義合法交叉決策表的先決條件。
需要注意的是,在定義要綁定的參數(shù)或具體變量時,一定要保證該參數(shù)或具體變量能在當(dāng)前項目中找到,否則將導(dǎo)入失敗。比如上圖中的“會員.是否有房”就是一個變量,這個變量就需要在項目中定義好,如下圖所示:
如果我們是用決策表來進行賦值操作,同時這個決策表的限制條件又比較多,這時就比較適合采用URule Pro中提供的交叉決策表來實現(xiàn),因為其從橫向和縱向兩個維度來進行條件限制,所以可以大大簡化決策表的配置,同時配合外部的Excel導(dǎo)入功能,可顯著提高交叉決策表的配置效率。
更多建議: