Logic Apps XML管理

问题描述

我已经创建了Azure Logic应用和集成帐户来管理我们的集成。

我们从ERP系统中获得了一个出站API,该API根据以下内容提取XML消息以及标题信息。

<TransmissionDetail>
    <Sender>XPILHRXPA</Sender>
    <Receiver>Isline</Receiver>
    <Subject>TRX_XDC_00000000000000097056_00000000000000144059</Subject>
    <CommCreated>2020-006-23 22:38:27</CommCreated>
</TransmissionDetail>

我们想要实现的是Logic Apps查看“ Receiver”标签。根据该值,它将确定逻辑应用程序在转换或传输方面如何管理该文件

有人可以建议如何实现吗?

解决方法

根据您的要求,您可以参考以下步骤:

1。。我初始化一个名为“ xmlString ”的变量来模拟您的xml消息。 enter image description here

2。。初始化另一个名为“ jsonString”的变量,并使用以下屏幕截图所示的表达式作为其值。 enter image description here

3。。然后,我们可以使用“ Parse JSON”操作来解析上一步中的jsonStringenter image description here

您可以点击“ 使用示例有效负载生成模式”并输入json数据:

{
    "TransmissionDetail": {
        "Sender": "XPILHRXPA","Receiver": "Isline","Subject": "TRX_XDC_00000000000000097056_00000000000000144059","CommCreated": "2020-006-23 22:38:27"
    }
}

自动生成模式。其架构应为:

{
    "properties": {
        "TransmissionDetail": {
            "properties": {
                "CommCreated": {
                    "type": "string"
                },"Receiver": {
                    "type": "string"
                },"Sender": {
                    "type": "string"
                },"Subject": {
                    "type": "string"
                }
            },"type": "object"
        }
    },"type": "object"
}

4。之后,我们可以获得Receiver标签的值。您可以在逻辑应用程序中使用“ 如果”条件来判断其值。 enter image description here