Hyperon Studio规则创建方法及运算实现技术咨询
Hyperon规则配置问题解答
场景说明
我们正在针对特定用例探索Hyperon,需要创建的基础规则为:A > 12 AND B/C >= 0.5 AND D IS TRUE AND E IN ('Val1','Val2') AND F IS NOT 45
已按照官网文档执行以下步骤:
- 创建Context(示例:Mer)
- 创建Context的属性(A、B、C、D、E)
- 创建规则类型的Parameter(命名为“Validate Data”)
- 在Parameter下创建列名并选择步骤2中的属性作为值来源
- 在Parameter下的决策表中输入组合以配置规则
问题1:该规则配置方式是否正确?是否有更简便的配置界面或方法?
- 现有配置方式是正确的基础流程,符合Hyperon Studio的标准操作逻辑,能够实现目标规则。
- 存在更简便的配置方法:
- 对于这种单一AND组合的规则,无需依赖决策表,直接选择规则类型为“Expression”,在表达式编辑器中输入完整逻辑即可,示例表达式:
A > 12 && (B/C) >= 0.5 && D == true && ['Val1','Val2'].contains(E) && F != 45 - 决策表更适配多分支、多条件组合的复杂规则场景,单一逻辑用表达式编辑器能大幅简化配置步骤。
- 对于这种单一AND组合的规则,无需依赖决策表,直接选择规则类型为“Expression”,在表达式编辑器中输入完整逻辑即可,示例表达式:
问题2:若涉及数学运算(如B/C),是否只能通过Groovy函数/业务应用自定义代码实现,无法通过Studio UI操作?
- 基础数学运算(加减乘除、比较等)无需额外编写Groovy函数或自定义代码,直接在Hyperon Studio的表达式编辑器中输入运算式即可生效,比如
B/C只要Context中的B、C为数值类型就能直接计算。 - 注意事项:需要手动处理边界情况,比如避免C为0的除以0错误,可以在表达式中补充判断:
C != 0 && B/C >= 0.5。 - 仅当涉及复杂自定义运算(如特殊算法、自定义公式)时,才需要编写Groovy函数或通过业务应用扩展自定义代码。
内容的提问来源于stack exchange,提问作者Janardan Baghla
相关产品推荐
相关产品推荐

