逻辑应用程序 - 努力编写 JSON 并追加到数组
Logic App - Struggling with Compose JSON and Append to Array
我正在构建一个逻辑应用程序,它将从源获取 JSON 数据,然后转换数据,然后 POST 将转换后的数据发送到目标。
我正在努力的部分是,我有一个源数据,如下所示:
{
"Project_Number": "1",
"Employee_ID": "123"
},
{
"Project_Number": "1",
"Employee_ID": "456"
},
{
"Project_Number": "2",
"Employee_ID": "789"
},
{
"Project_Number": "2",
"Employee_ID": "123"
}
...我想将其转换成这种格式:
{
"Project_ID": "1",
"Project_Assignment":
[
{
"Employee_Number": "123",
"Employee_Number": "456"
}
]
},
{
"Project_ID": "2",
"Project_Assignment":
[
{
"Employee_Number": "789",
"Employee_Number": "123"
}
]
}
有人可以帮助我在逻辑应用程序中使用的步骤吗?
提前感谢任何帮助。
您可以使用 Inline Code action 通过 JS 代码根据需要处理您的 JSON 对象。
我也做了一些测试,这是我的逻辑应用程序,用于快速测试:
我的 js 代码:
var source=[{
"Project_Number": "1",
"Employee_ID": "123"
},
{
"Project_Number": "1",
"Employee_ID": "456"
},
{
"Project_Number": "2",
"Employee_ID": "789"
},
{
"Project_Number": "2",
"Employee_ID": "123"
}];
var allPjNumbers =[];
var result=[];
source.forEach(sitem=>{
if(!allPjNumbers.includes(sitem["Project_Number"])){
allPjNumbers.push(sitem["Project_Number"]);
}
});
allPjNumbers.forEach(pjNumber => {
var item = {
"Project_ID":pjNumber,
"Project_Assignment":[]
};
source.forEach(sitem=>{
if(sitem.Project_Number == pjNumber){
item.Project_Assignment.push({"Employee_Number": sitem.Employee_ID})
}
});
result.push(item);
});
return result
结果:
我正在构建一个逻辑应用程序,它将从源获取 JSON 数据,然后转换数据,然后 POST 将转换后的数据发送到目标。
我正在努力的部分是,我有一个源数据,如下所示:
{
"Project_Number": "1",
"Employee_ID": "123"
},
{
"Project_Number": "1",
"Employee_ID": "456"
},
{
"Project_Number": "2",
"Employee_ID": "789"
},
{
"Project_Number": "2",
"Employee_ID": "123"
}
...我想将其转换成这种格式:
{
"Project_ID": "1",
"Project_Assignment":
[
{
"Employee_Number": "123",
"Employee_Number": "456"
}
]
},
{
"Project_ID": "2",
"Project_Assignment":
[
{
"Employee_Number": "789",
"Employee_Number": "123"
}
]
}
有人可以帮助我在逻辑应用程序中使用的步骤吗?
提前感谢任何帮助。
您可以使用 Inline Code action 通过 JS 代码根据需要处理您的 JSON 对象。
我也做了一些测试,这是我的逻辑应用程序,用于快速测试:
我的 js 代码:
var source=[{
"Project_Number": "1",
"Employee_ID": "123"
},
{
"Project_Number": "1",
"Employee_ID": "456"
},
{
"Project_Number": "2",
"Employee_ID": "789"
},
{
"Project_Number": "2",
"Employee_ID": "123"
}];
var allPjNumbers =[];
var result=[];
source.forEach(sitem=>{
if(!allPjNumbers.includes(sitem["Project_Number"])){
allPjNumbers.push(sitem["Project_Number"]);
}
});
allPjNumbers.forEach(pjNumber => {
var item = {
"Project_ID":pjNumber,
"Project_Assignment":[]
};
source.forEach(sitem=>{
if(sitem.Project_Number == pjNumber){
item.Project_Assignment.push({"Employee_Number": sitem.Employee_ID})
}
});
result.push(item);
});
return result
结果: