【问题标题】:How can I get Boomi to return valid JSON如何让 Boomi 返回有效的 JSON
【发布时间】:2021-01-05 10:21:59
【问题描述】:

我正在从 Salesforce 查询记录并尝试将记录集作为 JSON 记录数组返回。

不幸的是,它将每条记录都作为完整 JSON 的单个记录返回,而不是同一 JSON 对象中的数组元素。

{
  "AppointmentID": "a046g00000Nyk6oAAB"
}{
  "AppointmentID": "a046g00000NyjhfAAB"
}{
  "AppointmentID": "a046g00000NygSfAAJ"
}

记录之间没有逗号。所以我将数组构建到 JSON 响应中并得到:

{
  "Appointments": [
    {
      "AppointmentID": "a046g00000Nyk6oAAB"
    }
  ]
}{
  "Appointments": [
    {
      "AppointmentID": "a046g00000NyjhfAAB"
    }
  ]
}{
  "Appointments": [
    {
      "AppointmentID": "a046g00000NygSfAAJ"
    }
  ]
}

它会将每条记录作为整个 JSON 模板而不是数组的一个元素发送。同样,它也不会在元素之间发送回逗号。我可以使用不太理想的结构,但我需要返回有效的 JSON。

最后,我尝试使用 s Search and Replace 修改数据处理形状的结果

searching for: \}\{ 
replacing with \}\,\{ 

尝试在大括号之间强制使用逗号,但搜索从未找到任何匹配项,即使这是有效的 Javascript 正则表达式搜索。

任何建议将不胜感激。

最终/固定地图

【问题讨论】:

    标签: json boomi


    【解决方案1】:

    很可能目标配置文件不正确,并且您手动创建了 JSON 配置文件。我会用所有字段写出你期望的 JSON,然后导入(当你打开 JSON 配置文件时,它是右上角的一个蓝色按钮)。

    此外,Salesforce 通常将每条记录作为 1 个文档返回,而不是合并。因此,地图中可能会出现多个文档,您需要进行合并(数据处理形状)。

    【讨论】:

    • "Salesforce 通常将每条记录作为 1 个文档返回,而不是合并" 就是这样,所以我在 Salesforce 操作形状的高级选项卡上选择了批处理结果,并在响应 XML 配置文件周围添加了一个包装器元素。这使得到 JSON 目标配置文件的映射正常工作。 TY
    猜你喜欢
    • 2021-09-27
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 2019-03-21
    • 2016-09-04
    • 2021-04-03
    • 1970-01-01
    • 1970-01-01
    相关资源
    最近更新 更多