IM-BIS for Accel Platform OpenRules for IM-BIS 連携ガイド 第9版 2019-04-01

11.2. 条件として利用できるキーワード

DecisionDecisionTable で条件の設定に利用するキーワードです。

Condition

演算子と比較する値を組み合わせて条件に設定することができます。

記述方法

利用するTableTypeのサブヘッダ部に記述します。
  • 単一の値を設定する例

    ../../_images/condition_simple.png
    1. キーワード
      条件を表す OpenRules のキーワードです。
    2. 論理名
      Glossary で定義した項目の論理名です。
    3. 演算子
      キーワードやデータ型によって利用可否が異なります。
    4. 基準値
      演算子と組み合わせて右辺に設定される式や値です。
  • 複数の値(配列)を設定する例

    ../../_images/condition_complex.png
    1. キーワード
      条件を表す OpenRules のキーワードです。
    2. 論理名
      Glossary で定義した項目の論理名です。
    3. 演算子
      キーワードやデータ型によって利用可否が異なります。
    4. 基準値
      演算子と組み合わせて右辺に設定される式や値です。

利用できる演算子

演算子 別の記法 説明
Is
  • =
  • ==
条件では、単一の値と比較し、「~に等しい」を表します。
Is Not
  • !=
  • isnot
  • Is Not Equal To
  • Not
  • Not Equal
  • Not Equal To
条件では、単一の値と比較し、「~に等しくない」を表します。
>
  • Is More
  • More
  • Is More Than
  • Is Greater
  • Greater
  • Is Greater Than
条件では、整数型(integer)・実数(浮動小数点)型(real)・日付型(Date)の単一の値と比較し、「~より大きい」(設定した値を含まない)を表します。
>=
  • Is More Or Equal
  • Is More Or Equal To
  • Is More Than Or Equal To
  • Is Greater Or Equal To
  • Is Greater Than Or Equal To
条件では、整数型(integer)・実数(浮動小数点)型(real)・日付型(Date)の単一の値と比較し、「~以上」(設定した値を含む)を表します。
<=
  • Is Less Or Equal
  • Is Less Or Equal To
  • Is Less Than Or Equal To
  • Is Smaller Or Equal To
  • Is Smaller Than Or Equal To
条件では、整数型(integer)・実数(浮動小数点)型(real)・日付型(Date)の単一の値と比較し、「~以下」(設定した値を含む)を表します。
<
  • Is Less
  • Less
  • Is Less Than
  • Is Smaller
  • Smaller
  • Is Smaller Than
条件では、整数型(integer)・実数(浮動小数点)型(real)・日付型(Date)の単一の値と比較し、「~より小さい」(設定した値を含まない)を表します。
Is Empty
なし
条件では、単一の値と比較し、「空の値」(値が「null」、または空白を含む値)を表します。
Contains
  • Contain
条件では、文字型(String)の単一の値と比較し、「~を含む」(部分一致)を表します。
大文字・小文字は区別せずに比較します。
Does Not Contain
  • DoesNotContain
条件では、文字型(String)の単一の値と比較し、「~を含まない」(部分一致)を表します。
大文字・小文字は区別せずに比較します。
Starts With
  • Start with
  • Start
条件では、文字型(String)の単一の値と比較し、「~から始まる」(前方一致)を表します。
大文字・小文字は区別せずに比較します。
Match
  • Matches
  • Is Like
  • Like
条件では、文字型(String)の単一の値と比較し、正規表現で表したパターンと一致するかを表します。
No Match
  • Not Matches
  • Does Not Match
  • Not Like
  • Is Not Like
  • Different
  • Different From
条件では、文字型(String)の単一の値と比較し、正規表現で表したパターンと一致しないかを表します。
Within
  • Inside
  • Inside Interval
  • Interval
条件では、整数型(integer)・実数(浮動小数点)型(real)の単一の値と比較し、「範囲内」(~から~の間)を表します。
下限値・上限値は、[0;9], (0;9], 0–9, between 5 and 10, more than 5 and less or equals 10 などの形式で記述します。
[0;9]、または0-9と書いた場合には、「0以上9以下」、[0;9)と書いた場合には、「0以上9未満」を表します。
Is One Of [1]
  • Is One
  • Is One Of Many
  • Is Among
  • Among
条件では、文字型(String)・整数型(integer)・実数(浮動小数点)型(real)の単一の値と比較し、カンマ区切りで表現した値のいずれかと一致するかを表します。
Is Not One Of [2]
  • Is Not Among
  • Not Among
条件では、文字型(String)・整数型(integer)・実数(浮動小数点)型(real)の単一の値と比較し、カンマ区切りで表現した値のいずれとも一致していないかを表します。
Include
  • Include All
IM-BIS との連携では、利用できません。
Exclude
  • Do Not Include
  • Exclude One Of
IM-BIS との連携では、利用できません。
Does Not Include
  • Include Not All
IM-BIS との連携では、利用できません。
Intersect
  • Intersect With
  • Intersects
IM-BIS との連携では、利用できません。
[1]「Is One Of」は、 OpenRules の不具合のために6.4.0より下位バージョンでは、文字型(String)以外のデータ型には利用できません。
[2]「Is Not One Of」は、 OpenRules の不具合のために6.4.0より下位バージョンでは、文字型(String)以外のデータ型には利用できません。

コラム

  • Condition / Within利用時の演算子の扱い

    1つのDecision Tableについて、すべての条件が、”Is” または “Within” となる場合には、演算子列なしで定義することもできます。
  • 数値を比較条件に利用する場合の記述方法

    数値を比較条件に利用する場合には、記述方法によって合致する範囲が変わります。
    特定の数値を基準とした条件を記述する場合には、以下の表を参考にして記述してください。
    記述方法 設定時に条件と合致したと評価される値
    5 5と等しい場合のみ
    [5,10] 5,6,7,8,9,10のいずれかの場合
    5;10 5,6,7,8,9,10のいずれかの場合
    [5;10) 5,6,7,8,9のいずれかの場合。10は含まない
    5-10 5,6,7,8,9,10のいずれかの場合
    5- 10 5,6,7,8,9,10のいずれかの場合
    -5 - 20 -5以上、かつ20以下の場合
    -5 - -20 範囲指定の左辺(-5)が右辺(-20)より大きくなるため、エラー
    -5 - -2 -5以上、かつ-2以下の場合
    from 5 to 20 5以上、かつ20以下の場合
    less 5 5未満の場合(5を含まない)
    less than 5 5未満の場合(5を含まない)
    less or equals 5 5以下の場合(5を含む)
    less or equal 5 5以下の場合(5を含む)
    less or equals to 5 5以下の場合(5を含む)
    smaller than 5 5未満の場合(5を含まない)
    more 10 10より大きい場合(10を含まない)
    more than 10 10より大きい場合(10を含まない)
    10+ 10以上の場合
    > 10 10より大きい場合(10を含まない)
    >= 10 10以上の場合(10を含む)
    between 5 and 10 5,6,7,8,9,10のいずれかの場合
    no less than 10 10以上の場合(10を含む)
    no more than 5 5以下の場合(5を含む)
    equals to 5 5と等しい場合
    greater or equal than 5 and less than 10 5以上10未満の場合(5は含むが、10は含まない)
    more than 5 less or equal than 10 5より大きく10以下の場合(5は含まないが、10を含む)
    more than 5,111,111 and less or equal than 10,222,222 5,111,111 より大きく10,222,222以下の場合(5,111,111は含まないが、10,222,222を含む)
    [5‘000;10‘000‘000) 5,000以上10,000,000未満の場合(5,000は含むが、10,000,000は含まない)
    [5,000;10,000,000) 5,000以上10,000,000未満の場合(5,000は含むが、10,000,000は含まない)
    (5;100,000,000] 5,000以上10,000,000以下の場合(5,000、10,000,000の両方とも含む)
浮動小数点型(double)の範囲を指定する場合には、「FromToDouble」という型を用いて記述します。
この型を利用した場合も、整数の範囲と同様に[2.7; 3.14)のように表します。

If

「If」は、If(Condition)に演算子を記述しなくてもよい特殊なキーワードです。
このキーワードは、 Condition と演算子”=”や”Within”を利用した場合と同義です。

記述方法

If を利用したい場合、以下の図のように記述します。
../../_images/if.png
  1. キーワード
    条件を表す OpenRules のキーワードです。
  2. 論理名
    Glossary で定義した項目の論理名です。
  3. 基準値
    演算子と組み合わせて右辺に設定される式や値です。
    単一の値の場合は Condition と”=”を組み合わせた条件と同義です。
    値の範囲の場合は Condition と”Within”の条件と同義です。

利用できる演算子

このキーワードでは、演算子を利用しません。

ConditionBetween

範囲内を表す条件として、下限値・上限値を組み合わせて条件に設定することができます。
ConditionBetweenを使う場合には、「下限値」 以上、「上限値」 以下 として評価します。
Condition で、演算子に「Within」を設定した場合と同義です。

記述方法

利用するTableTypeのサブヘッダ部に記述します。
../../_images/condition_between.png
  1. キーワード
    条件を表す OpenRules のキーワードです。
  2. 論理名
    Glossary で定義した項目の論理名です。
  3. 下限値
    条件の対象範囲の下限値です。
  4. 上限値
    条件の対象範囲の上限値です。

利用できる演算子

このキーワードでは、演算子を利用しません。

ConditionVarOperValue

Glossaryに定義した項目と、特定の値の比較条件に設定することができます。

記述方法

利用するTableTypeのサブヘッダ部に記述します。
../../_images/condition_var_oper_value.png
  1. キーワード
    条件を表す OpenRules のキーワードです。
  2. 列ラベル
    条件式の説明など列を識別するための情報です。
  3. 論理名
    Glossary で定義した項目の論理名です。
  4. 演算子
    キーワードやデータ型によって利用可否が異なります。
  5. 基準値
    演算子と組み合わせて右辺に設定される式や値です。
また、応用的な利用方法として、複数の項目に対応する条件を表すこともできます。
以下の例では、異なる項目の条件を1つの条件として記述しています。
../../_images/condition_var_oper_value_ex.png

利用できる演算子

このキーワードでは、 Condition と同様に演算子を利用することができます。
演算子 別の記法 説明
Is
  • =
  • ==
条件では、単一の値と比較し、「~に等しい」を表します。
Is Not
  • !=
  • isnot
  • Is Not Equal To
  • Not
  • Not Equal
  • Not Equal To
条件では、単一の値と比較し、「~に等しくない」を表します。
>
  • Is More
  • More
  • Is More Than
  • Is Greater
  • Greater
  • Is Greater Than
条件では、整数型(integer)・実数(浮動小数点)型(real)・日付型(Date)の単一の値と比較し、「~より大きい」(設定した値を含まない)を表します。
>=
  • Is More Or Equal
  • Is More Or Equal To
  • Is More Than Or Equal To
  • Is Greater Or Equal To
  • Is Greater Than Or Equal To
条件では、整数型(integer)・実数(浮動小数点)型(real)・日付型(Date)の単一の値と比較し、「~以上」(設定した値を含む)を表します。
<=
  • Is Less Or Equal
  • Is Less Or Equal To
  • Is Less Than Or Equal To
  • Is Smaller Or Equal To
  • Is Smaller Than Or Equal To
条件では、整数型(integer)・実数(浮動小数点)型(real)・日付型(Date)の単一の値と比較し、「~以下」(設定した値を含む)を表します。
<
  • Is Less
  • Less
  • Is Less Than
  • Is Smaller
  • Smaller
  • Is Smaller Than
条件では、整数型(integer)・実数(浮動小数点)型(real)・日付型(Date)の単一の値と比較し、「~より小さい」(設定した値を含まない)を表します。
Is Empty
なし
条件では、単一の値と比較し、「空の値」(値が「null」、または空白を含む値)を表します。
Contains
  • Contain
条件では、文字型(String)の単一の値と比較し、「~を含む」(部分一致)を表します。
大文字・小文字は区別せずに比較します。
Starts With
  • Start with
  • Start
条件では、文字型(String)の単一の値と比較し、「~から始まる」(前方一致)を表します。
大文字・小文字は区別せずに比較します。
Match
  • Matches
  • Is Like
  • Like
条件では、文字型(String)の単一の値と比較し、正規表現で表したパターンと一致するかを表します。
No Match
  • Not Matches
  • Does Not Match
  • Not Like
  • Is Not Like
  • Different
  • Different From
条件では、文字型(String)の単一の値と比較し、正規表現で表したパターンと一致しないかを表します。
Within
  • Inside
  • Inside Interval
  • Interval
条件では、整数型(integer)・実数(浮動小数点)型(real)の単一の値と比較し、「範囲内」(~から~の間)を表します。
下限値・上限値は、[0;9], (0;9], 0–9, between 5 and 10, more than 5 and less or equals 10 などの形式で記述します。
[0;9]、または0-9と書いた場合には、「0以上9以下」、[0;9)と書いた場合には、「0以上9未満」を表します。
Is One Of [3]
  • Is One
  • Is One Of Many
  • Is Among
  • Among
条件では、文字型(String)・整数型(integer)・実数(浮動小数点)型(real)の単一の値と比較し、カンマ区切りで表現した値のいずれかと一致するかを表します。
Is Not One Of
  • Is Not Among
  • Not Among
条件では、文字型(String)・整数型(integer)・実数(浮動小数点)型(real)の単一の値と比較し、カンマ区切りで表現した値のいずれとも一致していないかを表します。
Include
  • Include All
IM-BIS との連携では、利用できません。
Exclude
  • Do Not Include
  • Exclude One Of
IM-BIS との連携では、利用できません。
Does Not Include
  • Include Not All
IM-BIS との連携では、利用できません。
Intersect
  • Intersect With
  • Intersects
IM-BIS との連携では、利用できません。
[3]「Is One Of」は、 OpenRules の不具合のために6.4.0より下位バージョンでは、文字型(String)以外のデータ型には利用できません。
[4]「Is Not One Of」は、 OpenRules の不具合のために6.4.0より下位バージョンでは、文字型(String)以外のデータ型には利用できません。

ConditionIntOperInt

Glossaryに定義した整数型(int)の項目同士の比較条件に設定することができます。

記述方法

利用するTableTypeのサブヘッダ部に記述します。
../../_images/condition_int_oper_int.png
  1. キーワード
    条件を表す OpenRules のキーワードです。
  2. 列ラベル
    条件式の説明など列を識別するための情報です。
  3. 論理名(左辺)
    Glossary で定義した項目の論理名です。
    データ型が整数型(integer)の項目に利用できます。
    条件式の左辺に設定されます。
  4. 演算子
    キーワードやデータ型によって利用可否が異なります。
  5. 論理名(右辺)
    Glossary で定義した項目の論理名です。
    データ型が整数型(integer)の項目に利用できます。
    条件式の右辺に設定されます。

利用できる演算子

このキーワードでは、 Condition で利用できる演算子のうち、整数型(int)に対応している演算子を利用することができます。
演算子 別の記法 説明
Is
  • =
  • ==
条件では、単一の値と比較し、「~に等しい」を表します。
Is Not
  • !=
  • isnot
  • Is Not Equal To
  • Not
  • Not Equal
  • Not Equal To
条件では、単一の値と比較し、「~に等しくない」を表します。
>
  • Is More
  • More
  • Is More Than
  • Is Greater
  • Greater
  • Is Greater Than
条件では、整数型(integer)・実数(浮動小数点)型(real)・日付型(Date)の単一の値と比較し、「~より大きい」(設定した値を含まない)を表します。
>=
  • Is More Or Equal
  • Is More Or Equal To
  • Is More Than Or Equal To
  • Is Greater Or Equal To
  • Is Greater Than Or Equal To
条件では、整数型(integer)・実数(浮動小数点)型(real)・日付型(Date)の単一の値と比較し、「~以上」(設定した値を含む)を表します。
<=
  • Is Less Or Equal
  • Is Less Or Equal To
  • Is Less Than Or Equal To
  • Is Smaller Or Equal To
  • Is Smaller Than Or Equal To
条件では、整数型(integer)・実数(浮動小数点)型(real)・日付型(Date)の単一の値と比較し、「~以下」(設定した値を含む)を表します。
<
  • Is Less
  • Less
  • Is Less Than
  • Is Smaller
  • Smaller
  • Is Smaller Than
条件では、整数型(integer)・実数(浮動小数点)型(real)・日付型(Date)の単一の値と比較し、「~より小さい」(設定した値を含まない)を表します。
Within
  • Inside
  • Inside Interval
  • Interval
条件では、整数型(integer)・実数(浮動小数点)型(real)の単一の値と比較し、「範囲内」(~から~の間)を表します。
下限値・上限値は、[0;9], (0;9], 0–9, between 5 and 10, more than 5 and less or equals 10 などの形式で記述します。
[0;9]、または0-9と書いた場合には、「0以上9以下」、[0;9)と書いた場合には、「0以上9未満」を表します。

ConditionRealOperReal

Glossaryに定義した実数型(real)の項目同士の比較条件に設定することができます。

記述方法

利用するTableTypeのサブヘッダ部に記述します。
../../_images/condition_real_oper_real.png
  1. キーワード
    条件を表す OpenRules のキーワードです。
  2. 列ラベル
    条件式の説明など列を識別するための情報です。
  3. 論理名(左辺)
    Glossary で定義した項目の論理名です。
    データ型が実数(浮動小数点)型(real)の項目に利用できます。
    条件式の左辺に設定されます。
  4. 演算子
    キーワードやデータ型によって利用可否が異なります。
  5. 論理名(右辺)
    Glossary で定義した項目の論理名です。
    データ型が実数(浮動小数点)型(real)の項目に利用できます。
    条件式の右辺に設定されます。

利用できる演算子

このキーワードでは、 Condition で利用できる演算子のうち、実数型(real)に対応している演算子を利用することができます。
演算子 別の記法 説明
Is
  • =
  • ==
条件では、単一の値と比較し、「~に等しい」を表します。
Is Not
  • !=
  • isnot
  • Is Not Equal To
  • Not
  • Not Equal
  • Not Equal To
条件では、単一の値と比較し、「~に等しくない」を表します。
>
  • Is More
  • More
  • Is More Than
  • Is Greater
  • Greater
  • Is Greater Than
条件では、整数型(integer)・実数(浮動小数点)型(real)・日付型(Date)の単一の値と比較し、「~より大きい」(設定した値を含まない)を表します。
>=
  • Is More Or Equal
  • Is More Or Equal To
  • Is More Than Or Equal To
  • Is Greater Or Equal To
  • Is Greater Than Or Equal To
条件では、整数型(integer)・実数(浮動小数点)型(real)・日付型(Date)の単一の値と比較し、「~以上」(設定した値を含む)を表します。
<=
  • Is Less Or Equal
  • Is Less Or Equal To
  • Is Less Than Or Equal To
  • Is Smaller Or Equal To
  • Is Smaller Than Or Equal To
条件では、整数型(integer)・実数(浮動小数点)型(real)・日付型(Date)の単一の値と比較し、「~以下」(設定した値を含む)を表します。
<
  • Is Less
  • Less
  • Is Less Than
  • Is Smaller
  • Smaller
  • Is Smaller Than
条件では、整数型(integer)・実数(浮動小数点)型(real)・日付型(Date)の単一の値と比較し、「~より小さい」(設定した値を含まない)を表します。
Within
  • Inside
  • Inside Interval
  • Interval
条件では、整数型(integer)・実数(浮動小数点)型(real)の単一の値と比較し、「範囲内」(~から~の間)を表します。
下限値・上限値は、[0;9], (0;9], 0–9, between 5 and 10, more than 5 and less or equals 10 などの形式で記述します。
[0;9]、または0-9と書いた場合には、「0以上9以下」、[0;9)と書いた場合には、「0以上9未満」を表します。

ConditionDateOperDate

Glossaryに定義した日付型(Date)の項目同士の比較条件に設定することができます。

記述方法

利用するTableTypeのサブヘッダ部に記述します。
../../_images/condition_date_oper_date.png
  1. キーワード
    条件を表す OpenRules のキーワードです。
  2. 列ラベル
    条件式の説明など列を識別するための情報です。
  3. 論理名(左辺)
    Glossary で定義した項目の論理名です。
    データ型が日付型(Date)の項目に利用できます。
    条件式の左辺に設定されます。
  4. 演算子
    キーワードやデータ型によって利用可否が異なります。
  5. 論理名(右辺)
    Glossary で定義した項目の論理名です。
    データ型が日付型(Date)の項目に利用できます。
    条件式の右辺に設定されます。

利用できる演算子

このキーワードでは、 Condition で利用できる演算子のうち、日付型(Date)に対応している演算子を利用することができます。
演算子 別の記法 説明
Is
  • =
  • ==
条件では、単一の値と比較し、「~に等しい」を表します。
Is Not
  • !=
  • isnot
  • Is Not Equal To
  • Not
  • Not Equal
  • Not Equal To
条件では、単一の値と比較し、「~に等しくない」を表します。
>
  • Is More
  • More
  • Is More Than
  • Is Greater
  • Greater
  • Is Greater Than
条件では、整数型(integer)・実数(浮動小数点)型(real)・日付型(Date)の単一の値と比較し、「~より大きい」(設定した値を含まない)を表します。
>=
  • Is More Or Equal
  • Is More Or Equal To
  • Is More Than Or Equal To
  • Is Greater Or Equal To
  • Is Greater Than Or Equal To
条件では、整数型(integer)・実数(浮動小数点)型(real)・日付型(Date)の単一の値と比較し、「~以上」(設定した値を含む)を表します。
<=
  • Is Less Or Equal
  • Is Less Or Equal To
  • Is Less Than Or Equal To
  • Is Smaller Or Equal To
  • Is Smaller Than Or Equal To
条件では、整数型(integer)・実数(浮動小数点)型(real)・日付型(Date)の単一の値と比較し、「~以下」(設定した値を含む)を表します。
<
  • Is Less
  • Less
  • Is Less Than
  • Is Smaller
  • Smaller
  • Is Smaller Than
条件では、整数型(integer)・実数(浮動小数点)型(real)・日付型(Date)の単一の値と比較し、「~より小さい」(設定した値を含まない)を表します。

ConditionAny

条件に式や Method の処理結果を直接指定できます。

記述方法

利用するTableTypeのサブヘッダ部に記述します。
演算子として記述する「Is True(真の場合)」「Is False(偽の場合)」にそれぞれ実行したい処理を記述します。
../../_images/condition_any.png
  1. キーワード
    条件を表す OpenRules のキーワードです。
  2. 列ラベル
    条件式の説明など列を識別するための情報です。
  3. 演算子
    “Is True”または”Is False”のみ利用できます。
  4. 条件を評価するための式です。
    処理内容は Method で定義しますが、 Method から返却される値はboolean型にする必要があります。
    (図中のmethodの赤下線部を参照してください。)

利用できる演算子

演算子 別の記法 説明
Is True
なし
条件では、記述した式の結果と比較し、「真の場合の処理」を表します。
Is False
なし
条件では、記述した式の結果と比較し、「偽の場合の処理」を表します。

ConditionMap

HashMap型の項目に対する条件を記述することができます。
IM-BIS との値の受け渡しでは、HashMap型を利用することはできません。