将 JSON 反序列化为表

2024-05-17

我需要根据通过 API 接收的数据填充 ABAP 中的表。

我正在使用以下 ABAP 函数从 json 填充现有的 ABAP 表。

JSON 是正确的,表中包含相应的表。

/ui2/cl_json=>deserialize( EXPORTING json = lv_json
                             CHANGING data = lt_abap  ).

运行此命令将返回一个空白的 lt_abap 表。

当将输出更改为结构时,效果很好。但问题是需要一个表,而不是后续调用的结构

/ui2/cl_json=>deserialize( EXPORTING json = lv_json
                             CHANGING data = ls_abap

谁能建议一个解决方案将 JSON 放入我的表中?

JSON:

{
    "Id": "1369130",
    "Venueid": "0005",
    "Userid": "1320625",
    "Menuid": "null",
    "Created": "2019-07-29T08:18:35.000+0000",
    "items": [
      {
        "Id": "4255354",
        "Total": "3.10",
        "Price": "2.80",
        "Qty": "1",
        "Orderid": "1369130",
        "Menuitemid": "1447268",
        "Externalid": "",
        "Name": "Breakfast Roll Deal",
        "modifiers": [
          {
            "Price": "0.00",
            "Qty": "1",
            "Id": "0000001",
            "Orderitemid": "4255354",
            "Externalid": "1000716",
            "Name": "Bacon and Sausage Corn Topped Roll"
          },
          {
            "Price": "0.30",
            "Qty": "1",
            "Id": "00000002",
            "Orderitemid": "4255354",
            "Externalid": "E1001587",
            "Name": "Extra Sausage"
          },
          {
            "Price": "0.00",
            "Qty": "1",
            "Id": "00000003",
            "Orderitemid": "4255354",
            "Externalid": "1000774",
            "Name": "Latte"
          },
          {
            "Price": "0.00",
            "Qty": "1",
            "Id": "00000004",
            "Orderitemid": "4255354",
            "Externalid": "E",
            "Name": "Spread"
          }
        ]
      }
]
  }

表结构完全匹配。


您发布的不是表格。它是一个结构。可以映射到表的 JSON 应该以[并结束于].

这是一个例子。

REPORT ZZZ.

DATA:
  g_tab_t000 TYPE STANDARD TABLE OF t000 WITH EMPTY KEY.

START-OF-SELECTION.
  /ui2/cl_json=>deserialize( EXPORTING json = '[ { "MANDT": "000" }, 
    { "MANDT": "001" }, { "MANDT": "002" } ]' CHANGING data = g_tab_t000 ).
  BREAK-POINT.
本文内容由网友自发贡献,版权归原作者所有,本站不承担相应法律责任。如您发现有涉嫌抄袭侵权的内容,请联系:hwhale#tublm.com(使用前将#替换为@)

将 JSON 反序列化为表 的相关文章

随机推荐

  • 未捕获的异常“Google_IO_Exception”,消息为“HTTP 错误:无法连接”

    我有一个任务 查询 运行一些从 gmail 邮箱检索数据的 php 代码 直到上周五 2015 年 4 月 10 日 它一直工作正常 现在我收到以下错误日志 E 11 58 26 094 2015 04 15 200 3 38 KB 14
  • 如何在 Sails.js 中正确抛出和处理 Promise 中的错误?

    我开始将回调代码转换为 Sails js 中的承诺 但我不明白如何引发自定义错误并在承诺链中处理它们 Sails js 使用 Q 作为其 Promise 库 User findOne email req param professorEma
  • Python中列表中两个连续元素的平均值

    我有一个偶数个浮点数的列表 2 34 3 45 4 56 1 23 2 34 7 89 我的任务是计算 1 和 2 个元素 3 和 4 5 和 6 等元素的平均值 在 Python 中执行此操作的快捷方法是什么 data 2 34 3 45
  • 在docker容器中运行Jenkins有什么优势

    我发现了很多关于如何运行你的博客Jenkins in Docker但没有人真正解释这样做的好处 这是我发现的唯一原因 使用 Docker 的理由 https twasink net 2016 08 01 setting up a jenki
  • java异常处理策略[关闭]

    就目前情况而言 这个问题不太适合我们的问答形式 我们希望答案得到事实 参考资料或专业知识的支持 但这个问题可能会引发辩论 争论 民意调查或扩展讨论 如果您觉得这个问题可以改进并可能重新开放 访问帮助中心 help reopen questi
  • 在azure pipelines yaml脚本中使用运行时表达式

    我试图通过从天蓝色管道传递变量来执行脚本 这是我的简单测试管道 trigger master pool vmImage windows latest variables major 1 2 minor counter variables m
  • Kotlin 未解决的参考:CLI 上 gradle 的 println

    放一个printlnkotlin 函数返回之前的语句会崩溃 堆栈跟踪 thufir dur NetBeansProjects kotlin thufir dur NetBeansProjects kotlin gradle clean bu
  • 从正则表达式对象中提取允许字符串的最大长度

    一旦加载到 C 中 是否可以从正则表达式模式中提取允许的字符串的最大长度Regex object 如果我有一个正则表达式字符串定义为 A Z0 9 0 20 我可以使用字符串操作来获取最大允许长度20 但是 有没有一种方法可以更轻松地实现这
  • 根据 Pandas 中的列表对多列进行排序

    感谢有关如何根据 pandas 中的倍数列表对给定多列进行排序的任何提示 如下所示 import pandas as pd sort a a d e sort b s1 s3 s6 sort c t1 t2 t3 df pd DataFra
  • 如何根据运行的 jar 的结果让我的 ant 任务通过或失败?

    我正在运行 CrossCheck 无浏览器 js 单元测试 作为 ant 脚本的一部分 如果 CrossCheck 测试失败 我希望 ant 报告失败 这是 build xml 中的相关部分
  • 使用PHP套接字发送和接收数据

    我正在尝试通过 PHP 套接字发送和接收数据 一切正常 但是当我尝试发送数据时 PHP 不发送任何内容 Wireshark 告诉我发送的数据长度为 0 我正在使用这段代码
  • 如何更新 pl/sql 中嵌套表的列? [复制]

    这个问题在这里已经有答案了 我正在尝试在表中创建一个可以存储多个值的列 如下所示 我有一个学生id std和一个名为marks可以采用几个值 例如2 3 4 我想更新此列表以添加另一个标记2 3 4 5但我不知道怎么做 我如何更新专栏mar
  • 加快 ImageView 中的缩放功能

    我目前正在处理非常大的图像 7 10mb 由于多种原因无法调整大小或压缩 现在 我们的想法是在自定义 ImageView 中显示它们 使用户能够进行双击缩放 捏合缩放等 我使用这个库来完成这项工作 https github com Mike
  • Android 改变 ImageView / Bitmap 的颜色

    我需要找到一种方法来改变 Android 中位图的颜色 我需要在我的应用程序中平滑地替换 更改椭圆形图像的颜色 具体取决于int价值 我需要类似的东西myValue 5比改变我的图像的颜色RED and if myValue 322将颜色更
  • 如何动态突出显示网页上的字符串?

    我想创建带有 url 的页面 例如 http xyzcorp schedules 2015Aug24 Aug28 Jim Hawkins http xyzcorp schedules 2015Aug24 Aug28 Billy Bones
  • 如何在android中的操作栏中创建Edittext?

    我们可以在操作栏中使用编辑文本吗 在阅读了 Google 中的大量资源后 我找不到如何在操作栏中创建编辑文本 谁能告诉我该怎么做 您可以设置自定义View为了ActionBar像这样 getActionBar setCustomView R
  • IIS 8.5 MVC5 客户端缓存被忽略

    TL DR 我希望服务器 IIS 8 5 返回 304 未针对 CSS 和 JS 包进行修改 我无法让 IIS 8 5 遵守 web config 中的 clientCache 设置 无论我做什么 我似乎都无法让它缓存静态内容 这是VS20
  • 搜索深度嵌套数组以更新对象

    我有一个深层嵌套的数据结构 我有兴趣匹配数组 和数组数组 中的某个值 然后将一些数据推送到随附的数组中 例如以下是我的数组colors并伴随着的是更多颜色数组可能存在也可能不存在 var myData color green moreCol
  • log4j.xml放置在哪里

    当尝试查找其 xml 配置文件时 我们如何指定 log4j 必须查看的位置 默认情况下 log4j 似乎会查找类文件夹的根目录 我可以说使用调试 log4j 功能并从 IDE 运行我的应用程序 但是 我的 jar 中不再有任何类文件夹 lo
  • 将 JSON 反序列化为表

    我需要根据通过 API 接收的数据填充 ABAP 中的表 我正在使用以下 ABAP 函数从 json 填充现有的 ABAP 表 JSON 是正确的 表中包含相应的表 ui2 cl json gt deserialize EXPORTING