处理数组中的单个元素或多个元素时的动态抖动
如果我们在PartnerFunction嵌套数组中接收数组,我的Jolt规范工作得非常好,但如果他们发送的JSON只涉及PartnerFunction中的一个元素,那么它就失败了
输入1
{
"CustomerMaster": {
"Rootnode": {
"KUNNR": "123",
"NAME1": "XXXX",
"LAND1": "SE",
"SalesArea": {
"VKORG": "1301",
"VTWEG": "10",
"SPART": "00",
"AUFSD": "",
"FAKSD": "",
"LIFSD": "",
"PartnerFunction": [
{
"PARVW": "RE",
"PARZA": "000",
"KUNN2": "1231"
},
{
"PARVW": "RE",
"PARZA": "000",
"KUNN2": "1232"
}
]
}
}
}
}
输入2输入2
{
"CustomerMaster": {
"Rootnode": {
"KUNNR": "123",
"NAME1": "XXXX",
"LAND1": "SE",
"SalesArea": {
"VKORG": "1301",
"VTWEG": "10",
"SPART": "00",
"AUFSD": "",
"FAKSD": "",
"LIFSD": "",
"PartnerFunction": {
"PARVW": "RE",
"PARZA": "000",
"KUNN2": "1231"
}
}
}
}
}
Jolt Spec I正在使用
[
{
"operation": "shift",
"spec": {
"CustomerMaster": {
"Rootnode": {
"SalesArea": {
"PartnerFunction": {
"*": {
"@(3,KUNNR)": "[&1].KUNNR",
"@(3,NAME1)": "[&1].NAME1",
"@(3,NAME2)": "[&1].NAME2",
"@(3,NAME3)": "[&1].NAME3",
"@(3,NAME4)": "[&1].NAME4",
"@(3,LAND1)": "[&1].LAND1",
"@(2,VKORG)": "[&1].VKORG",
"@(2,VTWEG)": "[&1].VTWEG",
"@(2,SPART)": "[&1].SPART",
"PARVW": "[&1].PARVW",
"PARZA": "[&1].PARZA",
"KUNN2": "[&1].KUNN2"
}
}
}
}
}
}
}
]
如有任何帮助,不胜感激