问题标签 [dmn]
For questions regarding programming in ECMAScript (JavaScript/JS) and its various dialects/implementations (excluding ActionScript). Note JavaScript is NOT the same as Java! Please include all relevant tags on your question; e.g., [node.js], [jquery], [json], [reactjs], [angular], [ember.js], [vue.js], [typescript], [svelte], etc.
dmn - 关于“in”运算符,表 55,语法规则 49.c 在 DMN 1.3 规范中是什么意思?
第 124 页,表 55,Decision Model and Notation,v1.3 规范中的语法规则 49.c 有一个被截断的描述。使用“in”运算符的语义是什么?
图表中“适用性”的单元格被切断了,所以我不知道它在说什么,也无法在图表之外找到描述它的文本。
缺少的文字是什么,它是什么意思?
我正在编写一个 FEEL 语言编译器,所以我需要了解所有语义。
dmn - 通过 DMN 中的业务知识模型返回时处理 null
我正在尝试在 kie 服务器上使用 DMN 制定一些业务规则。
我有结构数据对象及其列表,这是我的输入。我正在使用规则来验证我的结构列表并只获取那些通过我的条件的人。
我正在使用 BusinessKnowledgeModel,它对每个对象都有实际条件,并且我有决策逻辑,它遍历我的列表并调用 BusinessKnowledgeModel 函数。
决策迭代器感觉语言代码:
对于 InputList 中的 inputParam,返回 BusinessKnowledgeModel(inputParam)
在 BusinessKnowledgeMode 中,我的函数由决策表组成,该决策表通过感觉表达式检查我的状况。
我不想从函数中获取 null 作为 otput,我只想跳过它。
我的努力:
我确实尝试过探索尝试找到各种方法;比如查找是否可以在 for 循环中使用 continue 关键字。甚至尝试在数据对象上添加约束,但不能在结构上添加空约束。
drools - 每个条件的 DMN 表
我想利用 DMN 来创建一个计算,但是每个国家/地区的每个类别的规则都不同,因此美国和类别 1 的规则与美国和类别 2 的规则不同,加拿大和类别 1 的规则也不同.
我不想为国家类别添加列并将其全部保存在同一张表上,因为这将构成一个超级大表,并且由于每个表都将由一组不同的用户维护,因此将其分开会更简单,如果可能的。
有没有办法用DMN对此进行建模?
我知道 BPMN 可以用来决定调用哪个表,但很好奇 DMN 是否会单独处理这种情况。
提前致谢
enums - 在使用 kie 运行时在 DMN 中使用枚举会导致问题
我有以下 DMN,它具有文本值作为输入,并且具有仅使用特定值作为枚举约束的约束。
这在 Trisotech 中测试时工作正常。但是当与服务集成时,它会抛出如下所述的错误。
2021-09-20 19:07:48.943 ERROR --- [ main] o.k.d.core.ast.DMNDTExpressionEvaluator : income.creditRating='EXCELLENT' does not match any of the valid values "EXCELLENT", "GOOD", "BAD", "POOR" for decision table 'ActionableDecision'.
我在服务中使用以下版本的 kie。有人可以提出问题的原因吗?
示例项目可以在这里找到
camunda - 从 camunda DMN 获取选择性输出列
我有一个从 REST 调用发出多个输出列的 dmn 是否有一种方法在 DMN 端仅发出 3 或 4 个输出列而不是全部。
java - DMN - 通过 FEEL 表达式匹配 Java 枚举
我有一个 Java 枚举作为 DMN 决策表中的输入。DMN 调用直接嵌入在 Java 应用程序中。所以采取一些枚举:
我将此枚举的一个实例作为输入传递 -dmnContext.set("Foo", foo);
我希望能够为字符串类型的 foo 设置一个决策表输入,并有一个匹配“ONE”的规则。但是,这不起作用,因为没有 POJO-String 转换。在 Java 代码中,我可以将 foo 存储为字符串并根据枚举值对其进行验证(即检查 foo 是否在集合 ["ONE", "TWO"] 中),但这会使应用程序的其他部分复杂化。
在仍然使用枚举类型的同时如何实现这一点?
camunda - 如何在 DMN 中定义 Decison 表
如何在 DMN 设计器中定义决策表,这样,
这是标准决定之一:如果索赔金额 >10000,则 hradmin 批准 =Y 否则 hradmin 批准 =N
operators - DMN 感觉多个不等于 (!=)
我正在联系 DMN FEEL 逻辑运算符不等于的挑战。
!=
基本上,当在单个字段中放置多个 Not Equals ( ) 时,我们不会得到正确的结果。从附加的示例中,我们基本上在第 3 列中放置了一个条件,如果Input.CallPurpose.Code
不等于 2 或 1 - !="2", !="1" - 那么它应该命中该行并返回输出,但如果我们通过“2”或“1”然后它应该跳过这一行并尝试相应地点击以下行。
在我们的例子中,如果我们通过 (2) 它会命中第一个运算符 (!= 2) 并将跳过作为预期结果的行;但是,如果我们通过 (1),它将不会与第二个 (!=) 进行比较,也不会跳过错误结果的行
如果我们通过一个 != 它可以工作
在这一点上的任何帮助将不胜感激
谢谢