数据操作 - Select (Json 数组)

Data Operation - Select (Json Array)

我有一个 JSON 数组,其结构如下:

  {
    "InvoiceNumber": "11111",
    "AccountName": "Hospital",
    "items": {
      "item": [
        {
          "Quantity": "48.000000",
          "Rate": "0.330667",
          "Total": "15.87"

        },
        {
          "Quantity": "1.000000",
          "Rate": "25.000000",
          "Total": "25.00"
        }
      ]
    }
  }
  

我想将数据操作“Select”用于 select 发票编号和发票详细信息。

Select:

来自正文('Parse_Json')?['invoices']?['invoice']

Key: Invoice Number;Map:item()['InvoiceNumber'] - 这一行有效 键:速率;地图:item()['InvoiceNumber']?['items']?['item']?['Rate']- 这条线不起作用。 错误消息显示“数组元素只能使用整数索引 selected”。是否可以 select 发票编号和所有发票详细信息(例如费率等)?先感谢您!另外,我尽量不使用“应用于每个”

您必须以某种形式使用循环,数据驻留在数组中。避免循环的唯一方法是,如果您知道数组中的项目数将始终具有一定的长度。

如果没有循环,您将无法确定是否处理了每一项。

不过,要回答您的问题,如果您想 select 数组中的特定项目,如错误所述,您需要提供索引。

这就是您需要的表达方式。在这一个中,我 selecting 位置 1 的项目(数组从 0 开始)...

body('Parse_JSON')?['items']?['item'][1]['rate']

使用您的 JSON ...

您始终可以单独提取项目对象,但如果长度永远不是静态的两个项目(例如),您仍然需要循环处理每个项目。

要提取项目,您 select 来自动态内容的对象 ...

结果...