【问题标题】:How to convert a list of Array Values into a Map in Dataweave如何将数组值列表转换为 Dataweave 中的映射
【发布时间】:2021-04-08 09:50:29
【问题描述】:

您好,我有一个采用这种格式的有效载荷。尝试编写 dataweave 函数来转换此有效负载,但我无法满足确切的期望。

{
"OUT_ORDER_CONTENTS_TAB": [
    [
        776665544,
        100,
        "Limited C/O",
        "loanPurpose"
    ],
    [
        776665544,
         100,
        "THE PURPOSE OF PURCHASE ",
        "loanPurpose"
    ],
    [
        776665544,
         100,
        "contains blank space",
        "borrower/2/borrowerPhone"
    ]
]
}

预期的输出格式是

{
"/loanPurpose": ["Limited C/O","THE PURPOSE OF PURCHASE "],
"/borrower/2/borrowerPhone": ["contains blank space"]
}

【问题讨论】:

    标签: dataweave mule4


    【解决方案1】:

    这比将数组转换为映射要复杂一些,因为数组的元素内部是数组,您需要按一个索引(第 4 个元素)分组并从另一个(第 3 个元素)收集值)。

    可以通过 groupBy() 和 mapObject() 来完成:

    %dw 2.0
    output application/json
    ---
    (payload.OUT_ORDER_CONTENTS_TAB 
        groupBy ((item, index) -> item[3] ) )
        mapObject ((value, key, index) -> ("/"++(key)):value map $[2])
    

    【讨论】:

    • 谢谢,它有效,同意像我这样的新手很难。谢谢
    • 感谢@Salim Khan 添加我错过的斜线。
    猜你喜欢
    • 1970-01-01
    • 2021-04-30
    • 1970-01-01
    • 1970-01-01
    • 2017-12-23
    • 2017-08-24
    • 1970-01-01
    • 2021-05-10
    • 2011-10-23
    相关资源
    最近更新 更多