- html - 出于某种原因,IE8 对我的 Sass 文件中继承的 html5 CSS 不友好?
- JMeter 在响应断言中使用 span 标签的问题
- html - 在 :hover and :active? 上具有不同效果的 CSS 动画
- html - 相对于居中的 html 内容固定的 CSS 重复背景?
我想利用 DMN 来创建计算,但每个国家/地区的每个类别的规则都不同,因此美国和类别 1 的规则将与美国和类别 2 的规则不同,加拿大的规则也不同和类别 1。
我不想为国家/地区类别添加列并将其全部保留在同一个表中,因为这将形成一个 super 大的表,并且每个表都将由一组不同的用户维护,这样会更容易保留如果可能的话,将其分开。
有没有办法用 DMN 对此进行建模?
我知道 BPMN 可以用来决定调用哪个表,但很好奇 DMN 是否可以单独处理这种情况。
提前致谢
最佳答案
I know BPMN could be use to make this decision on which table to call but was curious if DMN alone would handle this case.
在您的案例中,最合适的方法指南确实是结合 BPMN 的力量来协调要评估的决策服务 (DMN)。
在此前提下,单独使用 DMN 可能有两种替代选择。
您可以为每个 DMN 模型文件定义一个决策服务,每个模型都针对国家/地区特定性进行建模。然后,在“主管”DMN 模型中,您可以评估导入 DMN 模型的所有国家/地区的适当决策服务。
优点:
缺点:
示例:
此示例实际上显示了选择哪个决策,即:评估所有变体,然后仅选择所需的一个。
但是您绝对可以重构模型,仅调用您想要的导入决策服务(例如:s.Standard card ds()
或 g.Gold卡 ds()
)。
我想展示这个示例,因为它比您的用例更广泛,但正如前面提到的,您可以让它更简单。
您可以使用非 DMN 标准 invoke()
函数从给定的 DMN 模型动态调用所需的 DMN 模型,前提是所调用的 DMN 模型可由特定平台 API 解析 -即:在 Drools 上是同一个 KieContainer
的一部分,在 Kogito 上是同一个 Kogito 应用程序的一部分。
优点:
缺点:
invoke()
函数是 Drools 扩展内置函数,不属于 DMN 规范的一部分。示例:
在此示例中,国家/地区用于查找模型的名称,该模型包含我们要调用以评估购买年龄的决策表;然后扩展的内置函数用于调用所需的模型,传递所需的输入:
第二个屏幕截图从左到右显示:特定于国家/地区的 DMN 模型的示例、执行调用的“主管”DMN 模型、针对几个选定国家/地区运行该模型并显示购买情况的场景测试示例年龄是所要求的。
我相信这是利用平台集成方面(例如 invoke()
函数)真正有意义的极少数情况之一,因为导入不同的 249 个模型是很幼稚的。 ISO 国家变体..
关于drools - 每个条件的 DMN 表,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/68832897/
我正在努力处理查询的 WHERE 部分。查询本身包含一个基于两个表中都存在的 ID 的 LEFT JOIN。但是,我要求 where 语句仅返回其中一列中存在的最大单个结果。目前我返回连接中的所有值,
我有这个代码来改变文件系统的大小。问题是,即使满足 if 条件,它也不会进入 if 条件,而我根本没有检查 if 条件。它直接进入 else 条件。 运行代码后的结果 post-install-ray
假设我有一个包含 2 列的 Excel 表格:单元格 A1 到 A10 中的日期和 B1 到 B10 中的值。 我想对五月日期的所有值求和。我有3种可能性: {=SUM((MONTH(A1:A10)=
伪代码: SELECT * FROM 'table' WHERE ('date' row.date 或 ,我们在Stack Overflow上找到一个类似的问题: https://stackove
我有下面这行代码做一个简单的查询 if ($this->fulfilled) $criteria->addCondition('fulfilled ' . (($this->fulfilled
如果在数据库中找到用户输入的键,我将尝试显示“表”中的数据。目前我已将其设置为让数据库检查 key 是否存在,如下所示: //Select all from table if a key entry
关闭。此题需要details or clarity 。目前不接受答案。 想要改进这个问题吗?通过 editing this post 添加详细信息并澄清问题. 已关闭 5 年前。 Improve th
在MYSQL中可以吗 一共有三个表 任务(task_id、task_status、...) tasks_assigned_to(ta_id、task_id、user_id) task_suggeste
我想先根据用户的状态然后根据用户名来排序我的 sql 请求。该状态由 user_type 列设置: 1=活跃,2=不活跃,3=创始人。 我会使用此请求来执行此操作,但它不起作用,因为我想在“活跃”成员
下面两个函数中最专业的代码风格是什么? 如果函数变得更复杂和更大,例如有 20 个检查怎么办? 注意:每次检查后我都需要做一些事情,所以我不能将所有内容连接到一个 if 语句中,例如: if (veh
我在 C# 项目中使用 EntityFramework 6.1.3 和 SQL Server。我有两个查询,基本上应该执行相同的操作。 1. Exams.GroupBy(x=>x.SubjectID)
我试图在 case when 语句中放入两个条件,但我在 postgresql 中遇到语法错误 case when condition 1 and condition 2 then X else Y
我正在构建一个连接多个表的查询,一个表 prodRecipe 将包含某些行的数据,但不是全部,但是 tmp_inv1 将包含所有行的计数信息。问题是,tmp_inv1.count 取决于某个项目是否在
我有一个涉及 couples of rows which have a less-than-2-hours time-difference 的查询(~0.08333 天): SELECT mt1.*,
我有一个包含许多这样的 OR 条件的代码(工作正常)来检查其中一个值是否为空,然后我们抛出一条错误消息(所有这些都必须填写) } elsif ( !$params{'account'}
我有一个名为 spGetOrders 的存储过程,它接受一些参数:@startdate 和 @enddate。这将查询“订单”表。表中的一列称为“ClosedDate”。如果订单尚未关闭,则此列将保留
在代码中,注释部分是我需要解决的问题...有没有办法在 LINQ 中编写这样的查询?我需要这个,因为我需要根据状态进行排序。 var result = ( from contact in d
我正在尝试创建一个允许省略参数的存储过程,但如果提供了参数,则进行 AND 操作: CREATE PROCEDURE MyProcedure @LastName Varchar(30)
我正在寻找一种方法来过滤我的主机文件中的新 IP 地址。我创建了一个脚本,每次我用来自矩阵企业管理器的数据调用它时都会更新我的主机文件。它工作正常。但是我必须找到一个解决方案,只允许更新 10.XX.
所以我正在做一种 slider ,当它完全向下时隐藏向下按钮,反之亦然,当向上按钮隐藏时,我遇到了问题。 var amount = $('slide').attr('number'); $('span
我是一名优秀的程序员,十分优秀!