【问题标题】:Mapping values in jolt颠簸中的映射值
【发布时间】:2022-11-24 03:45:50
【问题描述】:

我正在尝试在 JOLT 中映射三个字段。

以下是我想要映射值的字段和路径

PO_IDintegration-inbound:IntegrationDetails.integrationEntities.integrationEntity.integrationEntityDetails.poDetails.externalId

WG_REQ_IDintegration-inbound:IntegrationDetails.integrationEntities.integrationEntity.integrationEntityDetails.poDetails.poHeader.poDescription

FREIGHT_TERMSintegration-inbound:IntegrationDetails.integrationEntities.integrationEntity.integrationEntityDetails.poDetails.poHeader.deliveryTermCode

我想知道 JOLT 规格会是什么样子。

输入 JSON

{
  "PURCHASE_ORDER_DISPATCH": {
    "MsgData": {
      "Transaction": {
        "PO_POD_HDR_EVW1": {
          "VENDOR_SETID": "WCOS",
          "PO_ID": 25052,
          "PO_POD_LN_EVW1": {
            "WG_REQ_ID": 25694,
            "PO_POD_SHP_EVW1": {
              "FREIGHT_TERMS": "FOBDEST",
              "BUSINESS_UNIT": "OFIC"
            }
          }
        }
      }
    }
  }
}

预期产出

{
  "integration-inbound:IntegrationDetails": {
    "integrationEntities": {
      "integrationEntity": {
        "integrationEntityHeader": {
          "action": "UPSERT"
        },
        "integrationEntityDetails": {
          "poDetails": {
            "poHeader": {
              "poDescription": 25694,
              "deliveryTermCode": "FOBDEST",
              "externalId": 25052
            }
          }
        }
      }
    }
  }
}

【问题讨论】:

  • 您问题中的 PO_ID 地图与您想要的输出不同。我根据你想要的输出 json 添加了一个答案。

标签: json mapping transformation jolt


【解决方案1】:

您可以使用这个简单的规范:

[
  {
    "operation": "shift",
    "spec": {
      "#UPSERT": "integration-inbound:IntegrationDetails.integrationEntities.integrationEntity.integrationEntityHeader.action",
      "*": {
        "*": {
          "*": {
            "*": {
              "PO_ID": "integration-inbound:IntegrationDetails.integrationEntities.integrationEntity.integrationEntityDetails.poDetails.poHeader.externalId",
              "*": {
                "WG_REQ_ID": "integration-inbound:IntegrationDetails.integrationEntities.integrationEntity.integrationEntityDetails.poDetails.poHeader.poDescription",
                "*": {
                  "FREIGHT_TERMS": "integration-inbound:IntegrationDetails.integrationEntities.integrationEntity.integrationEntityDetails.poDetails.poHeader.deliveryTermCode"
                }
              }
            }
          }
        }
      }
    }
  }
]

【讨论】:

    猜你喜欢
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 2022-12-11
    • 2014-09-12
    • 1970-01-01
    • 1970-01-01
    相关资源
    最近更新 更多