创建履行提供程序
本单元描述在 Intelligent Order Management 中创建履行提供程序所需的步骤。
创建新的提供程序定义
要创建新的提供程序定义,请按照以下步骤操作:
- 转到提供程序 > 目录。
- 选择新提供程序定义。
- 对于显示名称,输入 LabFulfillmentProvider。
- 对于逻辑名称,输入 msdyn_LabFulfillmentProvider。
- 对于描述,输入实验室履行提供程序。
- 对于徽标,选择 Lab.png。
- 对于服务类型,输入履行。
- 选择保存并关闭。
将提供程序定义添加到解决方案
要将提供程序定义添加到解决方案,请按照以下步骤操作:
- 转到 Power Apps Maker Portal并转到新创建的 LabProviders 解决方案。
- 选择添加现有 > IOM 提供程序定义。
- 选择 LabFulfillmentProvider,然后选择添加以将其添加到解决方案。
创建提供程序操作以将履行有效负载发送到 Outlook
要创建提供程序操作以将履行有效负载发送到 Outlook,请按照以下步骤操作:
转到 Power Apps Maker Portal,并转到解决方案。
打开默认解决方案。
选择新建。
选择云端流,然后将其命名为实验室发送到履行 (Outlook)。
选择触发器类型为手动触发流,然后完成以下操作:
- 依次选择添加输入、文本,然后在第一个字段中输入 ProviderActionExecutionEventId。
- 依次选择添加输入、文本,然后在第一个字段中输入 EntityRecordId。
创建变量初始化操作:
- 对于名称,输入 ExecutionResult。
- 对于类型,选择布尔。
- 对于值,输入 true。
创建第二个变量初始化操作:
- 对于名称,输入 ProcessedSaleOrderLines。
- 对于类型,选择数组。
创建第三个变量初始化操作:
- 对于名称,输入 ProcessedFulfillmentOrderLines。
- 对于类型,选择数组。
添加尝试范围。
在尝试范围内,通过提供以下信息来添加执行未绑定操作:
- ProviderActionExecutionEventId - 选择动态内容下的 ProviderActionExecutionEventId。
- PowerAutomateRunId - 将表达式指定为:
workflow()['run']?['name']
。
添加按 ID 获取行操作,然后输入以下信息:
- 对于表格名称,输入履行订单。
- 对于行 ID,选择动态内容下的 EntityRecordId。
从 Outlook.com 连接器添加发送电子邮件操作,因为这是您之前设置的连接。
- 在收件人行上,使用 placeholder@placeholder.com 作为占位符文本。 您将在后面的步骤中将本占位符文本替换为提供程序参数。
- 在主题行上,您可以从动态内容下的获取履行订单步骤获取名称。
- 对于正文,指定以下表达式:
outputs('Get_fulfillment_order')['body']
按照以下步骤添加列表行操作:
- 对于表格名称,输入履行订单产品。
- 对于 Fetch Xml 查询,输入以下代码:
<fetch> <entity name="msdyn_fulfillmentorderdetail"> <all-attributes /> <filter> <condition attribute="msdyn_fulfillmentid" operator="eq" value="@{triggerBody()['text_1']}"/> </filter> </entity> </fetch>
通过以下步骤的发送电子邮件操作,添加应用到每一个控件:
- 从动态内容下的获取履行订单行步骤获取值。
- 从动态内容下的获取履行订单行步骤获取名称。
- 选择动态内容下的当前项。
在循环中,按照以下步骤添加追加到数组变量操作:
- 对于名称,输入 ProcessedFulfillmentOrderLines。
- 对于值,选择动态内容下的履行行 ID。
在循环中,按照以下步骤添加另一个追加到数组变量操作:
- 对于名称,输入 ProcessedSalesOrderLines。
- 对于值,选择动态内容下的销售行 ID。
通过选择其标题栏来折叠尝试范围。
选择新建步骤,然后添加另一个名为捕获的范围。
在捕获范围中,依次选择省略号 (...)、配置运行条件,然后完成以下设置操作:
- 选择已失败复选框。
- 选择已超时复选框。
在捕获范围中选择添加操作。 添加设置变量操作,然后将其重命名为将执行结果设置为失败。
设置如下属性:
- 对于名称,输入 ExecutionResult。
- 对于值,输入 false。
选择新建步骤,然后添加另一个名为最后的范围。
在最后范围中,依次选择省略号 (...)、配置运行条件,然后完成以下设置操作:
- 选择成功复选框。
- 选择已超时复选框。
- 选择跳过复选框。
- 选择已超时复选框。
在最后范围页上,添加条件步骤,然后将 ExecutionResult 变量与 true 进行比较,如下所示:
- 在第一个字段中,选择 ExecutionResult 变量。
- 在第二个字段中,选择等于。
- 在第三个字段中,选择 true。
在如果是分支中,添加运行子流操作,然后将其重命名为为已处理的履行订单行引发业务事件。
设置如下属性:
- 对于子流,输入引发业务事件。
- 对于 BusinessEventDefinitionId,输入 063d85c8-60a4-eb11-9443-000d3a313675。
- 对于 EntityRecordId,指定以下表达式:
string(variables('ProcessedFulfillmentOrderLines'))
在如果是分支中,添加另一个运行子流操作,然后将其重命名为引发销售订单聚合事件。
设置如下属性:
- 对于 LineBusinessEventDefinitionId,输入 ccf64002-61a4-eb11-9443-000d3a313675。
- 对于 LineRecordId,将表达式指定为:
string(variables('ProcessedSalesOrderLines'))
- 对于 OrderBusinessEventDefinitionId,输入 48688716-61a4-eb11-9443-000d3a313675。
折叠条件步骤。
按照以下步骤添加执行未绑定操作:
- 对于操作名称,输入 msdyn_CompleteProviderActionExecution。
- 对于 ExecutionResult,选择动态内容下的 ExecutionResult 变量。
- 对于 ProviderActionExecutionEventId,选择动态内容下的 ProviderActionExecutionEventId。
选择保存。
将提供程序定义逻辑定义添加到 Outlook 提供程序定义
要将提供程序定义逻辑定义添加到 Outlook 提供程序定义,请按照以下步骤操作:
- 转到提供程序 > 目录。
- 选择新创建的 LabFulfillmentProvider。
- 选择菜单栏上的编辑。
- 选择逻辑定义选项卡。
- 选择 + 新建 IOM 提供程序定义逻辑定义。
- 对于显示名称,输入实验室发送到履行 (Outlook)。
- 对于逻辑名称,输入 msdyn_LabSentToFulfillmentOutlook。
- 对于提供程序定义,输入 LabFulfillmentProvider。
- 对于逻辑类型,输入提供程序操作。
- 对于工作流名称,输入实验室发送到履行 (Outlook)。
- 对于超时分钟数,输入 2。
- 对于最大重试次数,输入 3。
- 对于描述,输入实验室发送到履行 (Outlook)。
- 对于操作类型,输入发送到履行。
- 选择保存。 此操作将生成消息处理程序云端流的 JSON 表示形式,并将填充客户端数据字段。
- 通过复制客户端数据字段中的文本块,然后将其粘贴到记事本中,将占位符电子邮件替换为提供程序参数。
- 在文本块中,查找 placeholder@placeholder.com 并替换为 {{LabOutboundFulfillmentEmail}}。
- 将修改后的文本块复制回客户端数据字段。
- 选择保存并关闭。
- 选择连接。 现在应列出了 Microsoft Dataverse 和 Outlook.com 连接引用定义。
将提供程序定义逻辑定义添加到 Outlook LabProviders 解决方案
要将提供程序定义逻辑定义添加到 Outlook LabProviders 解决方案,请按照以下步骤操作:
- 转到 Power Apps Maker Portal并转到新创建的 LabProviders 解决方案。
- 选择添加现有 > IOM 提供程序定义逻辑定义。
- 选择实验室发送到履行 (Outlook),然后选择添加以将其添加到解决方案。
将提供程序定义连接引用添加到 LabProviders 解决方案
要将提供程序定义连接引用添加到 LabProviders 解决方案,请按照以下步骤操作:
- 转到 Power Apps Maker Portal并转到新创建的 LabProviders 解决方案。
- 选择添加现有 > IOM 提供程序定义连接引用。
- 选择 Microsoft Dataverse 和 Outlook.com 提供程序定义连接引用,然后选择添加以将其添加到解决方案。
创建提供程序操作以将履行有效负载发送到 RequestBin
要创建提供程序操作以将履行有效负载发送到 RequestBin,请按照以下步骤操作:
转到 Power Apps Maker Portal,并转到解决方案。
打开默认解决方案。
选择新建。
选择云端流,然后将其命名为实验室发送到履行 (RequestBin)。
选择触发器类型为手动触发流,然后输入以下信息:
- 依次选择添加输入、文本,然后在第一个字段中输入 ProviderActionExecutionEventId。
- 依次选择添加输入、文本,然后在第一个字段中输入 EntityRecordId。
创建变量初始化操作:
- 对于名称,输入 ExecutionResult。
- 对于类型,选择布尔。
- 对于值,输入 true。
创建第二个变量初始化操作:
- 对于名称,输入 ProcessedSaleOrderLines。
- 对于类型,选择数组。
创建第三个变量初始化操作:
- 对于名称,输入 ProcessedFulfillmentOrderLines。
- 对于类型,选择数组。
添加尝试范围。
在尝试范围中,按照以下步骤添加执行未绑定操作:
- ProviderActionExecutionEventId - 选择动态内容下的 ProviderActionExecutionEventId。
- PowerAutomateRunId - 将表达式指定为:
workflow()['run']?['name']
添加按 ID 获取行操作,然后按照以下步骤设置该操作:
- 对于表格名称,输入履行订单。
- 对于行 ID,选择动态内容下的 EntityRecordId。
通过从动态内容下为正文选择正文,从 RequestBin 连接器添加创建履行订单操作。
按照以下步骤添加列表行操作:
- 对于表格名称,输入履行订单产品。
- 对于 Fetch Xml 查询,输入以下信息:
<fetch> <entity name="msdyn_fulfillmentorderdetail"> <all-attributes /> <filter> <condition attribute="msdyn_fulfillmentid" operator="eq" value="@{triggerBody()['text_1']}"/> </filter> </entity> </fetch>
通过按照以下步骤从 RequestBin 连接执行创建履行订单行操作,添加应用到每一个控件:
- 从动态内容下的获取履行订单行步骤获取值。
- 选择动态内容下的当前项。
在循环中,按照以下步骤添加追加到数组变量操作:
- 对于名称,输入 ProcessedFulfillmentOrderLines。
- 对于值,选择动态内容下的履行行 ID。
在循环中,按照以下步骤添加另一个追加到数组变量操作:
- 对于名称,输入 ProcessedSalesOrderLines。
- 对于值,选择动态内容下的销售行 ID。
通过选择其标题栏来折叠尝试范围。
选择新建步骤,然后添加另一个重命名为捕获的范围。
在捕获范围中,依次选择省略号 (...)、配置运行条件,然后按照以下步骤操作:
- 选择已失败复选框。
- 选择已超时复选框。
在捕获范围页面中,选择添加操作,添加设置变量操作,然后将其重命名为将执行结果设置为失败。
设置如下属性:
- 对于名称,输入 ExecutionResult。
- 对于值,输入 false。
选择新建步骤,然后添加另一个重命名为最后的范围。
在最后范围中,依次选择省略号 (...)、配置运行条件,然后按照以下步骤操作:
- 选择成功复选框。
- 选择已超时复选框。
- 选择跳过复选框。
- 选择已超时复选框。
在最后范围页上,添加条件步骤,然后将 ExecutionResult 变量与 true 进行比较,如下所示:
- 在第一个字段中,选择 ExecutionResult 变量。
- 在第二个字段中,选择等于。
- 在第三个字段中,选择 true。
在如果是分支中,添加运行子流操作,然后将其重命名为为已处理的履行订单行引发业务事件。
设置如下属性:
- 对于子流,输入引发业务事件。
- 对于 BusinessEventDefinitionId,输入 063d85c8-60a4-eb11-9443-000d3a313675。
- 对于 EntityRecordId,指定以下表达式:
string(variables('ProcessedFulfillmentOrderLines'))
在如果是分支中,添加另一个运行子流操作,然后将其重命名为引发销售订单聚合事件。
设置如下属性:
- 对于 LineBusinessEventDefinitionId,输入 ccf64002-61a4-eb11-9443-000d3a313675。
- 对于 LineRecordId,指定以下表达式:
string(variables('ProcessedSalesOrderLines'))
- 对于 OrderBusinessEventDefinitionId,输入 48688716-61a4-eb11-9443-000d3a313675。
折叠条件步骤。
按照以下步骤添加执行未绑定操作:
- 对于操作名称,输入 msdyn_CompleteProviderActionExecution。
- 对于 ExecutionResult,选择动态内容下的 ExecutionResult 变量。
- 对于 ProviderActionExecutionEventId,选择动态内容下的 ProviderActionExecutionEventId。
选择保存。
将提供程序定义逻辑定义添加到提供程序定义 (RequestBin)
要将提供程序定义逻辑定义添加到 (RequestBin) 提供程序定义,请按照以下步骤操作:
- 转到提供程序 > 目录。
- 选择新创建的 LabFulfillmentProvider。
- 选择菜单栏上的编辑。
- 选择逻辑定义选项卡。
- 选择 + 新建 IOM 提供程序定义逻辑定义。
- 对于显示名称,输入实验室发送到履行 (RequestBin)。
- 对于逻辑名称,输入 msdyn_LabSentToFulfillmentRequestBin。
- 对于提供程序定义,输入 LabFulfillmentProvider。
- 对于逻辑类型,输入提供程序操作。
- 对于工作流名称,输入实验室发送到履行 (RequestBin)。
- 对于超时分钟数,输入 2。
- 对于最大重试次数,输入 3。
- 对于描述,输入实验室发送到履行 (RequestBin)。
- 对于操作类型,输入发送到履行。
- 选择保存。 此操作将生成消息处理程序云端流的 JSON 表示形式,并将填充客户端数据字段。
- 选择保存并关闭。
- 选择连接。 现在应列出了 Microsoft Dataverse、Outlook.com 和 RequestBin 连接引用定义。
将提供程序定义参数添加到提供程序定义
要将提供程序定义参数添加到提供程序定义,请按照以下步骤操作:
- 选择参数。
- 选择 + 新建 IOM 提供程序定义参数。
- 对于显示名称,输入 LabOutboundFulfillmentEmail。
- 对于数据类型,输入文本。
- 对于提供程序定义,输入 LabFulfillmentProvider。
- 对于密钥,输入 LabOutboundFulfillmentEmail。
- 对于逻辑名称,输入 msdyn_LabOutboundFulfillmentEmail。
- 对于是否必填,输入是。
- 选择保存并关闭。
将提供程序定义逻辑定义添加到 LabProviders 解决方案 (RequestBin)
要将提供程序定义逻辑定义添加到 RequestBin LabProviders 解决方案,请按照以下步骤操作:
- 转到 Power Apps Maker Portal并转到新创建的 LabProviders 解决方案。
- 选择添加现有 > IOM 提供程序定义逻辑定义。
- 选择实验室发送到履行 (RequestBin),然后选择添加以将其添加到解决方案。
将提供程序定义连接引用添加到 LabProviders 解决方案
要将提供程序定义连接引用添加到 LabProviders 解决方案,请按照以下步骤操作:
- 转到 Power Apps Maker Portal并转到新创建的 LabProviders 解决方案。
- 选择添加现有 > IOM 提供程序定义连接引用。
- 选择 RequestBin,然后选择添加以将其添加到解决方案。
将提供程序定义参数添加到 LabProviders 解决方案
要将提供程序定义参数添加到 LabProviders 解决方案,请按照以下步骤操作:
- 转到 Power Apps Maker Portal并转到新创建的 LabProviders 解决方案。
- 选择添加现有 > IOM 提供程序定义参数。
- 选择 LabOutboundFulfillmentEmail,然后选择添加以将其添加到解决方案。