我想使用 Power Automate 调用 TSheet 时间表 API 来获取数据并进行处理。但我在循环遍历 TSheet 的响应数据时遇到了困难。因此,下面是响应的 json 的示例:
{
"results": {
"timesheets": {
"1234567": {
"id": 1234567,
"state": "CLOSED",
"user_id": 123456
},
"2345678": {
"id": 415628812,
"state": "APPROVED",
"user_id": 234567
}
}
}
}
我曾使用“解析 JSON”和“编写”操作尝试将此 JSON 格式化为数组,以便可以在“应用于每个”操作中使用它,但我还不知道该怎么做。将此 JSON 对象传递给“应用于每个”操作将失败,因为它需要数组。
任何帮助都将受到感谢。
好吧,这不是太友好但会给你一个结果。
本质上,您需要将 JSON 转换为 XML,然后以此方式执行。
这些是步骤...
撰写数据
这是您提供的 JSON,只需粘贴到该操作中即可。
撰写 XML
在这里,我们将 JSON 转换为 XML。您可以通过以下表达式执行此操作...
撰写时间表项目
这是一个 XPath 查询,用于将项目分离到数组中,以便您可以循环访问它们。
对于每个元素
正在循环上一个操作的结果。
撰写項目
在这里,我们对项目的内容进行解码,因为它当前存储为 base64。
撰写 JSON 项目
在这里我们可以编写一个小型 JSON 对象,其中包含每个项目所需的数据。它使用 XPath 提取每个属性。
从这里,您可以对对象执行所需的操作。您可以将其添加到数组或在线处理数据。
我还应该注意,所有这些都可以在不循环的情况下完成。
如果使用
Select
操作而不是循环,则可以更快地完成。这是的定义Select
,您需要挑选出要设置的部分...