我正在使用IBM ILOG JRULES 7.1试用用于执行POC.I使用决策表来检查客户注册数据。

我的iLog决策表规则是 - 如果客户的状态是CA,IL,Al中的任何一个,那么将状态设置为“符合条件”,否则将客户作为优惠作为“不合格”。

在一个快乐的路径中,我可以将状态代码添加为域文字,规则将正常工作。 但是,我需要使用某些IRL代码从数据库(MySQL)动态加载此域名值。有没有人这样做的要求,如我的,如果有人可以指向正确的方向,就会非常有用。

有帮助吗?

解决方案

jrules的一般原则是,如果可能,您应该以所有必要的信息调用规则引擎。从性能角度来看,在规则执行期间访问数据库不是一个好主意。您还可能会失去在群集环境中使用规则应用程序的能力。此外,决策不太可追溯和可重复,因为在任何特定时刻,更难了解数据库中的内容。

取决于您的数据更改的频率,我建议您将这些值添加为第二输入参数并在调用规则引擎之前检索数据。第二种可能性是使用动态域插件在部署之前从数据库加载这些值。但是,每次数据更改时都必须重新部署RULEAPP。使用动态域插件,您可以指定数据提供程序(例如Excel,MySQL等),并使用数据库中包含的属性填充BOM。这些动态域值显示为属性,可以从Rure Studio中的BOM视图以及来自TeamServer的BOM视图:

在WODM中(JRules 7.1的继承者)构建此功能,此插件可能是DEMO的一部分,并且必须单独添加到7.1。

许可以下: CC-BY-SA归因
不隶属于 StackOverflow
scroll top