我需要为每个规则设置一个新属性(例如:唯一ID),并在执行期间从相应规则的操作部分访问它。 例如: 如果 人的年龄超过18岁 然后 将输出设置为规则的ID。
(此ID应来自正在添加的新属性。)
我正在使用IBM ODM 8.5。请建议从业务规则中获取唯一ID的所有方法是什么?
在虚拟方法的B2X映射中,我使用instance.getRule().properties
打印了rule.properties映射。我期待自定义属性和所有其他规则属性。但是,属性映射只有少数几个:
key:ilog.rules.business_name value:test score
key:ilog.rules.package_name value:check score
key:requestorMail值:
key:状态值:new
key:ilog.rules.package value:check_score
key:ilog.rules.group value:check_score.test_score
答案 0 :(得分:2)
您可以使用Model extension自定义规则模型,并将自定义属性(YOUR_PROPERTY_NAME)添加到规则工件中。
您可以通过添加虚拟方法(BOM中的静态方法!不要使用xom!只需将其与BOM编辑器一起添加)来表达YOUR_VERBALISATION。
instance.getRule().getPropertyValue("YOUR_PROPERTY_NAME")
获取值; (实例是包含当前规则的IlrRuleInstance
的运行时变量)答案 1 :(得分:0)
您可以使用的另一种方法是创建一组变量(Variable Set)
。在变量集中,您可以定义:
它很容易创建,并且您可以访问规则应用程序或模块的任何部分。
希望这有帮助。