jrulesibm-odm

How to make a condition test correspond to subcolumns of an ODM decision table?


I'm using ODM 8.5 (the successor to JRules), and I'm mimicking the steps described in IBM's tutorial - Editing Decision Tables; however, I can't generate a legal test. In the tutorial, they create the following test:

the customer's age of the 'current rental agreement' is at least <min> and less than <max>

If I use Eclipse's completion feature () to generate legal completions for the table I want to create, I can't generate <min> or <max>, but I can generate <a string>. However, this generates the following warning, and does not create subcolumns.

enter image description here

I don't know what the warning is trying to tell me (and I resent getting a warning when I am using a suggested replacement). ("Lexicographically greater than" is a function I've defined that takes two string arguments; however, changing to a predefined function like "contains", makes no difference.) If I manually change the occurrences of <a string> to <min> and <max>, I get an error:

enter image description here

How can I make my decision table act like the one in the tutorial?


Solution

  • One problem is how to use the <min> and <max> terms instead of <a string>. This is dependent on the verbalization of the method created in the BOM, as described in the answer to this question. In summary, you need to create a method with a verbalization like:

    {0} is in the range {1,min} to {2,max}
    

    to get the words "min" and "max" to appear.

    Then, when you edit the Condition Column of your decision table, you create a Test something like:

    the modified ep code of 'the work assignment input' 
    is in the range <min> to <max>
    

    At this point, the Expression Placeholders text box will be empty. Click OK in the Condition Column dialog and the appropriate min and max subcolumns will be produced in the table. Thereafter, editing the Condition Column will include entries in the Expression Placeholders text box, that can be edited via the Sub-column Title text box.

    enter image description here