OData JSON反序列化

2020-08-22 02:59发布

         点击此处--->   EasySAP.com群内免费提供SAP练习系统(在群公告中)

加入QQ群:457200227(SAP S4 HANA技术交流) 群内免费提供SAP练习系统(在群公告中)


大家好,

我正在尝试使用类/UI2/CL_JSON反序列化简单JSON数据。 但是,输出内部表是初始的。 你能让我知道我在这里想念什么吗?

类型:
       ty_ekko的开头,
         ebeln型ebeln,
         bukrs型bukrs,
         bstyp类型bstyp,
         ktwrt类型的字符串,
       ty_ekko的结尾。
     数据:
       lt_ekko类型ty_ekko的标准表。
   

   /ui2/cl_json =>反序列化(
       出口
         json = lv_json
       改变
         数据= lt_ekko)。
    检查lt_ekko不是初始的。

我们使用的是SAP_ABA-740 SP级-0009

谢谢

(19.0 kB)

         点击此处--->   EasySAP.com群内免费提供SAP练习系统(在群公告中)

加入QQ群:457200227(SAP S4 HANA技术交流) 群内免费提供SAP练习系统(在群公告中)


大家好,

我正在尝试使用类/UI2/CL_JSON反序列化简单JSON数据。 但是,输出内部表是初始的。 你能让我知道我在这里想念什么吗?

类型:
       ty_ekko的开头,
         ebeln型ebeln,
         bukrs型bukrs,
         bstyp类型bstyp,
         ktwrt类型的字符串,
       ty_ekko的结尾。
     数据:
       lt_ekko类型ty_ekko的标准表。
   

   /ui2/cl_json =>反序列化(
       出口
         json = lv_json
       改变
         数据= lt_ekko)。
    检查lt_ekko不是初始的。

我们使用的是SAP_ABA-740 SP级-0009

谢谢

(19.0 kB)
付费偷看设置
发送
6条回答
Bunny_CDM
1楼 · 2020-08-22 03:32.采纳回答

您好 S Nalluri

您使用的是错误/不完整的接收 ABAP结构,这就是为什么它不起作用的原因。

尝试以下一种方法:

类型:
   ty_ekko的开头,
     ebeln型ebeln,
     bukrs型bukrs,
     bstyp类型bstyp,
     ktwrt类型的字符串,
   ty_ekko的结尾,
   ty_odata_results的开头,
     ty_ekko的结果类型标准表,
   ty_odata_results的结尾,
   ty_odata的开头,
     d类型ty_odata_results,
   ty_odata的结尾。
 数据:
    ls_odata类型ty_odata。

/ui2/cl_json =>反序列化(导出json = lv_json
                            更改数据= ls_odata)。
 检查ls_odata不是初始的。

您也不需要使用GENERATE方法。 仅在您不知道JSON结构的情况下才有用。

BR,Alexey。

DafaDDDa
2楼-- · 2020-08-22 03:37

您最好将JSON作为代码而不是图像发布,因为通常人们不会花时间将JSON从图像重新键入到 重现问题并提出解决方案。 抱歉。

Tong__Ming
3楼-- · 2020-08-22 03:35

嗨,

您不能总是将内部表分配给更改的参数数据。 这取决于您的JSON文件的结构。 可以在以下Wiki中找到有关如何使用类/ui2/cl_json反序列化JSON字符串的完整指南: https://wiki.scn.sap.com/wiki/display/Snippets/One+more+ABAP+to+JSON+Serializer+and+Deserializer

最诚挚的问候,

Geert-Jan Klaps

Climb_Ma
4楼-- · 2020-08-22 03:31
 {" d":{" results":[{" __ metadata":{  " id":" http://xxxxxx.com:8000/sap/opu/odata/SAP/ZSN_TEST_REST_SERVICE_SRV/POHeaderDataSet('4100353003')"," uri":" http://xxxxxx.com:8000/sap/ opu/odata/SAP/ZSN_TEST_REST_SERVICE_SRV/POHeaderDataSet('4100353003')","类型":" ZSN_TEST_REST_SERVICE_SRV.POHeaderData"}," Ebeln":" 4100353003"," Bukrs":" 0010"," Bstyp":" F"  ," Bsart":" NB"," Ktwrt":" 0.000"},{" __metadata":{" id":" http://xxxxxx.com:8000/sap/opu/odata/SAP/ZSN_TEST_REST_SERVICE_SRV/POHeaderDataSet  ('4100353103')"," uri":" http://xxxxxx.com:8000/sap/opu/odata/SAP/ZSN_TEST_REST_SERVICE_SRV/POHeaderDataSet('4100353103')"," type":" ZSN_TEST_REST_SERVICE_SRV.POHeade  rData"}," Ebeln":" 4100353103"," Bukrs":" 0010"," Bstyp":" F"," Bsart":" NB"," Ktwrt":" 0.000"}]}}} 
>

JSON文件

吹牛啤
5楼-- · 2020-08-22 03:30

感谢Alexey,您的博客对我有很大帮助

SAP小黑
6楼-- · 2020-08-22 03:34

感谢Geert-Jan Klaps ,很遗憾,我们没有类-/UI2/CL_DATA_ACCESS,并且反序列化方法中不断变化的参数永远不会返回 就我而言。 但是我使用了链接中提供的class-ZCL_JSON,它确实具有generate方法。

一周热门 更多>