0

是否可以在 foreach 循环中第一次运行后删除属性,我想删除属性“pickedQuantity”。

在此处输入图像描述

4

2 回答 2

0

一种解决方法是将属性添加到 foreach 循环之外,以便仅使用一次。例如这里是我采取的示例 json

{
    "shipmentLines":
    [
        {
            "PART_NO":1,
            "WEB_ORDER_LINE_NUMBER":20,
            "WEB_ORDER_NUMBER":30
        },
        {
            "PART_NO":2,
            "WEB_ORDER_LINE_NUMBER":298,
            "WEB_ORDER_NUMBER":347
        }
    ]
}

这是我的逻辑应用程序,我将Compose内容存储到数组变量并删除pickQuantity 属性并在foreach 循环之后添加:-

在此处输入图像描述

这是我的Compose 2连接器中的 Json 代码。

{
  "shipmentLines": [
    {
      "pickedQuantity": "1",
      "shipmentDetails": @{variables('SampleArray')}
    }
  ]
}

这是输出: -

在此处输入图像描述

最终的 Compose 输出:-

{
  "shipmentLines": [
    {
      "pickedQuantity": "1",
      "shipmentDetails": [
        {
          "shipmentLines": [
            {
              "articleNo": "2",
              "customerOderNo": "347",
              "lineNumber": "298"
            }
          ]
        },
        {
          "shipmentLines": [
            {
              "articleNo": "1",
              "customerOderNo": "30",
              "lineNumber": "20"
            }
          ]
        }
      ]
    }
  ]
}
于 2022-02-15T06:36:13.120 回答
0

要从对象中删除属性,您可以使用

removeProperty 函数 https://docs.microsoft.com/en-us/azure/logic-apps/workflow-definition-language-functions-reference#removeProperty

但不确定这在您的循环中是如何实现的。如果您总是想在第一次运行后将其删除,为什么不在循环之外进行第一次“运行”,然后循环其余部分呢?

于 2022-02-11T08:08:40.320 回答