将JSON反序列化到表

将JSON反序列化到表,json,deserialization,abap,Json,Deserialization,Abap,我需要从通过API接收的数据填充ABAP中的表 我使用下面的ABAP函数从json填充现有的ABAP表 JSON是正确的,表中包含相应的表 /ui2/cl_json=>deserialize( EXPORTING json = lv_json CHANGING data = lt_abap ). 运行此命令将返回一个空白的lt_abap表 当将输出更改为结构时,这可以正常工作。但问题是需要一个表,而不是后续调用的结构 /ui2/

我需要从通过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:


表结构完全匹配。

您发布的不是表。这是一个结构。可以映射到表的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.

解决方案再简单不过了

我简单地反序列化到我的结构中,然后附加到我的表中

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


APPEND LS_abap TO lt_abap.

请添加:缺少最小JSON和内部表的类型(最终,最小表示您创建了一个包含非常简单JSON和相应的非常简单表类型的最小程序)。您发布的不是表。这是一个结构。可以映射到表的JSON应该以
[
开头,以
]
结尾@Jagger你能把你的评论转换成一个答案吗,这样我就可以投赞成票了?“谢谢。”桑德拉罗西这样做了。SAP在
屏幕上循环时的任何更新(
?:)@贾格尔Thx。自6月28日以来没有SAP新闻,仍在“进行中”;请不要不耐烦,它在我的SAP支持收件箱中,我会在收到消息后立即发布好消息或坏消息。事实上,你问的完全是其他问题,但可能我理解错了。:)
/ui2/cl_json=>deserialize( EXPORTING json = lv_json
                             CHANGING data = lS_abap  ).


APPEND LS_abap TO lt_abap.