參數(shù)庫文件

​ 在規則的條件判斷與計(jì)算(suàn)過程當中,難免會(huì)用到一些(xiē)臨時(shí)的變量來(lái)存儲值,這些(xiē)臨時(shí)變量數(shù)量和(hé)類型都可(kě)能是不固定的,對于這種類型的臨時(shí)變量,URule Pro以參數(shù)的形式提供,通(tōng)過參數(shù)庫就可(kě)以定義這些(xiē)在規則中要使用到的臨時(shí)變量。

​ 在“庫”節點上(shàng)右鍵創建一個(gè)參數(shù)庫文件,從參數(shù)庫文件編輯器(qì)來(lái)看,參數(shù)因為(wèi)沒有(yǒu)了分類,配置要為(wèi)簡單許多(duō),如下圖所示:

​ 參數(shù)庫在運行(xíng)時(shí)實際上(shàng)是存儲在HashMap當中,這裏的“名稱”的值将作(zuò)為(wèi)Map的key,“标題”則用在規則中顯示使用,定義參數(shù)庫時(shí)要保證“名稱”屬性的唯一性,因為(wèi)它是Map的key值; ​ 同時(shí)如果一個(gè)規則文件裏引入多(duō)個(gè)參數(shù)庫文件,那(nà)麽每個(gè)參數(shù)庫文件裏定義的參數(shù)的名稱值也要唯一,否則就會(huì)存在相互覆蓋的情況。

​ 參數(shù)同樣有(yǒu)“用途”屬性,其值也為(wèi)In、Out、InOut三個(gè),作(zuò)用與變量庫中變量的“用途”相同,這裏不再贅述。

​ 在URule Pro當中,對于參數(shù)庫中定義的值,規則運行(xíng)時(shí),如果外部沒有(yǒu)對這些(xiē)參數(shù)進行(xíng)初始化,那(nà)麽引擎會(huì)自動為(wèi)部分沒有(yǒu)初始化的參數(shù)進行(xíng)初始化。下表中介紹了URule Pro中會(huì)自動初始化的數(shù)據類型自動初始化後的值。

數(shù)據類型 初始化值
Integer 0
Double 0
Float 0
Boolean false
List new ArrayList()
Set new HashSet()
Map new HashMap()

​ 如果我們當前項目中已定義好若幹個(gè)變量庫文件,且文件中都定義了相應的變量對象,那(nà)麽在打開(kāi)參數(shù)庫文件,添加參數(shù)時(shí),我們會(huì)發現參數(shù)的數(shù)據類型除了固定的13種數(shù)據類型外,還(hái)有(yǒu)當前項目中所有(yǒu)變量庫文件裏定義的變量分類值;如果在定義參數(shù)時(shí)數(shù)據類型選擇為(wèi)某個(gè)變量的分類名,那(nà)麽在使用這個(gè)參數(shù)時(shí),除了可(kě)以選擇參數(shù)自身,還(hái)能選擇參數(shù)對應的變量下的具體(tǐ)屬性值,如下圖所示:

因為(wèi)參數(shù)的數(shù)據類型可(kě)以指定為(wèi)某個(gè)變量類型,所以在設計(jì)一些(xiē)複雜規則的時(shí)候就顯得(de)特别有(yǒu)意義,比如我們可(kě)以通(tōng)過這種方式創建一個(gè)新的變量對象實例,然後賦值給某個(gè)是這個(gè)變量數(shù)據類型的參數(shù),然後再通(tōng)過這個(gè)參數(shù)給這個(gè)新的對象實例的屬性進行(xíng)逐個(gè)賦值等。

參數(shù)庫維護的2種方式

手工添加

​ 省略操作(zuò)過程。

Excel導入

​ 省略操作(zuò)過程。

注意事項

自4.3.x開(kāi)始,參數(shù)的集合類型List,可(kě)以通(tōng)過右鍵來(lái)配置集合中對象類型,如下圖所示

img

其它

  • 參數(shù)同樣有(yǒu)“用途”屬性,其值也為(wèi)In、Out、InOut三個(gè),作(zuò)用與變量庫中變量的“用途”相同
  • 其它操作(zuò)同上(shàng)【變量】章節的描述,這裏不再贅述

results matching ""

    No results matching ""