11.3. 結果・処理として利用できるキーワード¶
Decision や DecisionTable で評価(処理)の設定に利用するキーワードです。
Conclusion¶
演算子と比較する値を組み合わせて返却する値(評価結果)に設定することができます。
利用できるテーブルタイプ¶
記述方法¶
利用できる演算子¶
演算子 別の記法 説明 Is === 対象の項目の値に1つの値を設定します。Are なし カンマ区切りで複数の値を配列型で、対象の項目の値に代入します。テーブル系アイテムに利用した場合、複数の行に返却することができます。Add なし IM-BIS との連携では、利用できません。Assign Plus += IM-BIS との連携では、利用できません。Assign Minus -= IM-BIS との連携では、利用できません。Assign Multiply *= IM-BIS との連携では、利用できません。Assign Divide /= IM-BIS との連携では、利用できません。コラム
結果の値のセルに設定する内容について
結果(Conclusion)の値に設定する値は、”:=”などを付与せずに記述した場合、書かれている文字列(数値)をそのまま対象の項目の値にセットします。他の項目の値をセットする場合には、以下のように記述します。::= ${項目の論理名}“$”は OpenRules のマクロです。データ型によって使い分ける必要がありますので、詳細は Methodで利用できるキーワード(API) を参照してください。
Then¶
「Then」は、Then(Conclusion)に演算子を記述しなくてもよい特殊なキーワードです。このキーワードは、 Conclusion と演算子”=”を利用した場合と同義です。
利用できるテーブルタイプ¶
記述方法¶
Then を利用したい場合、以下の図のように記述します。
キーワード結果を表す OpenRules のキーワードです。 論理名Glossary で定義した項目の論理名です。 返却値条件に合致した場合に返却する値です。
利用できる演算子¶
このキーワードでは、演算子を利用しません。
ConclusionVarOperValue¶
演算子と比較する値を組み合わせて返却する値(評価結果)に設定することができます。
利用できるテーブルタイプ¶
記述方法¶
利用できる演算子¶
演算子 別の記法 説明 Is === 対象の項目の値に1つの値を設定します。Are なし カンマ区切りで複数の値を配列型で、対象の項目の値に代入します。テーブル系アイテムに利用した場合、複数の行に返却することができます。Add なし IM-BIS との連携では、利用できません。Assign Plus += IM-BIS との連携では、利用できません。Assign Minus -= IM-BIS との連携では、利用できません。Assign Multiply *= IM-BIS との連携では、利用できません。Assign Divide /= IM-BIS との連携では、利用できません。
ActionAny¶
定義済みのJavaやExcelの関数やメソッドを呼び出して実行することができます。
利用できるテーブルタイプ¶
記述方法¶
利用できる演算子¶
演算子は記述できません。
ActionPrint¶
実行する処理名をコンソールに出力します。ログには出力されません。
利用できるテーブルタイプ¶
利用できる演算子¶
演算子は記述できません。
ActionExecute¶
実行する Decision や DecisionTable の名前を記述します。上から順に Decision や DecisionTable を実行します。
利用できるテーブルタイプ¶
記述方法¶
利用するTableTypeのサブヘッダ部に記述します。ActionExecuteは Decision の必須項目です。DecisionTable での利用例です。以下の例では DecisionTable からサブデシジョンの呼び出しを行っています。
キーワードDecision によるルールの実行などの処理を表す OpenRules のキーワードです。 列ラベル各処理の説明など列を識別するための情報です。 実行内容(サブデシジョンなど)
利用できる演算子¶
演算子は記述できません。
Action¶
特定の項目に返却する値(評価結果)を設定することができます。
利用できるテーブルタイプ¶
記述方法¶
利用するTableTypeのサブヘッダ部に記述します。
キーワード(b) 論理名の項目への値の代入を表す OpenRules のキーワードです。 論理名Glossary で定義した項目の論理名です。 返却値(b) 論理名の項目に代入する値です。
利用できる演算子¶
演算子は記述できません。
Message¶
任意に設定した文字列をコンソールに出力します。ログには出力されません。
利用できるテーブルタイプ¶
記述方法¶
利用するTableTypeのサブヘッダ部に記述します。
Decision の場合
DecisionTable の場合
利用できる演算子¶
演算子は記述できません。
実行イメージ¶
Decision では、Messageに「Message from Decision」と設定します。
DecisionTable では、Messageに「Message from DT」と設定します。
コンソールの出力内容です。
- Decision の明細1行目で設定したメッセージです。
- DecisionTable に設定したメッセージのうち、条件に合致した明細3行目のメッセージです。
- Decision の明細2行目で設定したメッセージです。
- Decision の明細3行目で設定したメッセージです。
- Decision の明細4行目で設定したメッセージです。
Decision で設定した場合には、「(decision名):(Messageの内容)」という形式で出力されます。DecisionTable で設定した場合には、条件に合致した行のMessageが「(Messageの内容)[produced by (Decision Table名)]」という形式で出力されます。コラム
上の例で DecisionTable で設定したメッセージは”Rule ID”と組み合わせて、以下の形式で記述することもできます。($RULE_IDは、 OpenRules 6.3.0以降で利用できます。)
DecisionTable に「Rule ID」列を追加し、 Message は1つの結合セルでまとめます。キーワードとして”#”を指定すると、 DecisionTable の各行を識別するIDの列として扱われます。上記の DecisionTable を実行すると”$RULE_ID”に”Rule ID”を代入してコンソールに出力されます。例えば、2行目の条件(Rule 2)に合致した場合は以下のように出力されます。
ActionIterate¶
オブジェクトの配列を受け取って配列中のオブジェクト1件ずつに対して、別の DecisionTable で定義したルールの評価を繰り返し実行することができます。このキーワードは、 IM-BIS との連携では利用できません。
ActionRulesOnArray¶
配列型のデータを受け取って配列中のデータ1件ずつに対して、 DecisionTable などで定義したルールの評価を実行することができます。このキーワードは、 IM-BIS との連携では利用できません。
ActionSort¶
オブジェクトの配列を受け取って配列中のオブジェクト1件ずつに対して、別の DecisionTable で定義したルールの評価に基づいたスコアを算出し、スコア順にソートすることができます。このキーワードは、 IM-BIS との連携では利用できません。