You need to enable JavaScript to run this app.
优惠活动
大模型
产品
解决方案
定价
更多

基于DOC_TYPE/VENDOR/PLANT的Flat JSON转Nested JSON的Jolt配置求助

Jolt转换:基于DOC_TYPE、VENDOR、PLANT实现扁平JSON嵌套

原配置的核心问题是仅以DOC_TYPE作为分组键,未结合VENDOR和PLANT实现完整分组,同时Items数组的索引逻辑错误,导致无法正确聚合同组数据。以下是修正后的Jolt规格:

修正后的Jolt Spec

[
  {
    "operation": "shift",
    "spec": {
      "*": {
        // 用DOC_TYPE+VENDOR+PLANT作为复合分组键,确保三个字段匹配的记录归为一组
        "DOC_TYPE": "@(1,DOC_TYPE)_@(1,VENDOR)_@(1,PLANT).&",
        "VENDOR": "@(1,DOC_TYPE)_@(1,VENDOR)_@(1,PLANT).&",
        "PLANT": "@(1,DOC_TYPE)_@(1,VENDOR)_@(1,PLANT).&",
        "RSD": "@(1,DOC_TYPE)_@(1,VENDOR)_@(1,PLANT).&",
        "SALES_CHANNEL": "@(1,DOC_TYPE)_@(1,VENDOR)_@(1,PLANT).&",
        "DELIVERY_PRIORITY": "@(1,DOC_TYPE)_@(1,VENDOR)_@(1,PLANT).&",
        "ORDER_REASON": "@(1,DOC_TYPE)_@(1,VENDOR)_@(1,PLANT).&",
        // 将行级字段放入Items数组,用[]自动追加元素
        "PO_ITEM": "@(1,DOC_TYPE)_@(1,VENDOR)_@(1,PLANT).Items[].&",
        "MATERIAL": "@(1,DOC_TYPE)_@(1,VENDOR)_@(1,PLANT).Items[].&",
        "QUANTITY": "@(1,DOC_TYPE)_@(1,VENDOR)_@(1,PLANT).Items[].&",
        "GR_PROCESSING": "@(1,DOC_TYPE)_@(1,VENDOR)_@(1,PLANT).Items[].&"
      }
    }
  },
  {
    "operation": "modify-overwrite-beta",
    "spec": {
      "*": {
        "Items": {
          "*": "=recursivelySquashNulls"
        }
      }
    }
  },
  {
    "operation": "cardinality",
    "spec": {
      "*": {
        "DOC_TYPE": "ONE",
        "VENDOR": "ONE",
        "PLANT": "ONE",
        "RSD": "ONE",
        "SALES_CHANNEL": "ONE",
        "DELIVERY_PRIORITY": "ONE",
        "ORDER_REASON": "ONE"
      }
    }
  },
  {
    "operation": "shift",
    "spec": {
      "*": "[]"
    }
  }
]

关键修正点说明

  1. 复合分组键:使用@(1,DOC_TYPE)_@(1,VENDOR)_@(1,PLANT)作为分组标识,确保DOC_TYPE、VENDOR、PLANT三者完全匹配的记录被聚合到同一组。
  2. Items数组构建:用Items[]替代原配置的Items[&1],自动将同组的行级字段追加到数组中,避免索引混乱。
  3. 字段筛选:仅保留预期输出中的头部字段和行级字段,移除原配置中不必要的REF_1和HEADER_TEXT(若需保留可添加到头部字段列表)。
  4. 空值处理:仅对Items数组内的空值进行压缩,避免影响头部字段的保留逻辑。

转换结果

执行上述规格后,输出将与你提供的预期结构完全一致,实现按三个字段分组的嵌套JSON结构。

内容的提问来源于stack exchange,提问作者Thiyagaraj Narayanan

相关产品推荐
方舟 Agent Plan

超全模态模型 × Harness 升级,最新支持 Deepseek-V4.1-Flash、GLM-5.3 系列、Doubao-Seedream-5.0-pro、Kimi-K3 (部分), 限时 9.9 元起

最近更新时间:2026.07.27 10:04:54