您在此处:
配置动态收入管理器以暂停状态更改
通过配置等待特定订单管理重大事件的暂停步骤,协调动态收入管理器 (DRO) 和订单管理之间的履行。例如,暂停履行,直到所有订购商品交付。
开始之前,请在贵组织中打开动态收入管理器。
将 OMS 字段映射到上下文定义,以便表达式集在确定是否在编排计划中发布暂停步骤时对其进行评估。
-
扩展上下文定义,以映射 OMS 字段。
- 在“设置”中,转到动态收入管理器设置,并选择预配置的上下文定义。
-
为您想要跟踪的 OMS 字段添加上下文标记。
常见示例:
- ItemStartQuantity:映射到 OrderItemSummary.QuantityOrdered
- ItemEndQuantity:映射到 OrderItemSummary.QuantityDelivered 或 QuantityShiped
- 将这些标记映射到 SalesTransactionItem 对象上的字段。
- 保存上下文定义。
-
为计算创建临时属性。
表达式集需要临时属性来保存临时计算值。
- 在上下文定义中,将自定义属性添加到与映射字段相同的节点。
- 设置显示名称和描述,使其与属性名称完全匹配。
- 将属性标记为瞬态,以便数据不会持续存在。
- 保存更改。
重要 如果显示名称和描述与属性名称不匹配,表达式集评估将失败。 -
为履行条件创建表达式集。
- 在“设置”中,搜索表达式集并创建表达式集。
- 选择扩展上下文定义。
- 将使用类型设置为履行条件。
-
配置逻辑以比较 OMS 字段值。
示例:在所有项目交付时释放暂停。
- 添加列表组,以处理 OrderSummary 中的多个 OrderItemSummary。
- 计算每个项目的 ItemStartQuantity 和 ItemEndQuantity 之间的差值。
- 使用聚合列表函数求和差异。如果所有数量匹配,总和等于 0。
-
使用默认值
False添加名为isExecuteStep的本地布尔变量。 -
设置条件:如果总和等于 0,设置
isExecuteStep = True。 -
在最终计算步骤中,选中
isExecuteStep变量的包含在输出中。 - 保存 ExpressionSet。
重要 将输出变量精确设置为isExecuteStep(区分大小写)。当为真时,DRO 会恢复该步骤。当为假时,DRO 会保持步骤暂停。 -
在履行工作流中配置暂停步骤。
- 在履行步骤定义中,添加新的暂停步骤。
- 在步骤配置中,选择使用 ExpressionSet 作为条件类型。
- 选择您在步骤 3 中创建的 ExpressionSet。
- 配置 DRO 重新评估病情的频率(轮讯间隔)。
- 保存您的履行步骤定义。
在提交订单时,DRO 会在每个轮询间隔评估表达式集。在订单管理更新 OrderItemSummary 数量且条件返回真后,暂停步骤将释放并继续履行。
| 暂停,直到 | ExpressionSet 逻辑 |
|---|---|
| 所有已交付项目 | OrderItemSummary.QuantityDelivered = QuantityOrdered |
| 所有已发货商品 | OrderItemSummary.QuantityShipped = QuantityOrdered |
| 部分发货阈值 | OrderItemSummary.QuantityShipped >= (QuantityOrdered × 0.8) |
| 分配的库存 | OrderItemSummary.QuantityReserved = QuantityOrdered |
故障排除
| 问题 | 解决方案 |
|---|---|
| ExpressionSet 显示“出错”。 | 定义isExecuteStep并选择包含在输出中。 |
| 上下文标记在 ExpressionSet 中不可用。 | 确认显示名称和描述与临时属性的属性名称匹配。 |
| 暂停步骤从不释放。 | 检查 isExecuteStep 是否为布尔变量,逻辑是否在满足条件时将其设置为真。 |
| 将显示通用评估错误。 | 打开 DynamiccommonOrchestrator 组织权限。 |
