SAP 内表数据转换为JSON格式

DATA: lv_json TYPE string.

DATA: lt_mapping_items TYPE /ui2/cl_json=>name_mappings.

DATA: BEGIN OF ls_detail,

code TYPE string,

name TYPE string,

age TYPE string,

END OF ls_detail,

lt_detail LIKE TABLE OF ls_detail,

BEGIN OF ls_header,

origh TYPE string,

orname TYPE string,

details LIKE lt_detail,

END OF ls_header.

ls_detail-code = 'A001'.

ls_detail-name = '张三'.

ls_detail-age = '18'.

APPEND ls_detail TO lt_detail.

ls_detail-code = 'A002'.

ls_detail-name = '李四'.

ls_detail-age = '25'.

APPEND ls_detail TO lt_detail.

ls_header-origh = 'C0001'.

ls_header-orname = '测试'.

ls_header-details = lt_detail.

"ABAP对应JSON字段映射

lt_mapping_items = VALUE #( ( abap = 'origh' json = 'orgid' )

( abap = 'orname' json = 'orname' )

( abap = 'details' json = 'details' )

( abap = 'code' json = 'id' )

( abap = 'name' json = 'name' )

( abap = 'age' json = 'age' )

).

"ABAP结构转JSON

lv_json = /ui2/cl_json=>serialize(

data = ls_header

compress = abap_false

pretty_name = /ui2/cl_json=>pretty_mode-camel_case

name_mappings = lt_mapping_items ).

WRITE: / 'ABAP转JSON结果:',lv_json.

相关推荐
alikami3 小时前
【若依】用 post 请求传 json 格式的数据下载文件
前端·javascript·json
dingdingfish6 小时前
JSON 系列之1:将 JSON 数据存储在 Oracle 数据库中
oracle·json·database
糖朝7 小时前
c#读取json
c#·json
dingdingfish10 小时前
JSON 系列之2:JSON简单查询
oracle·json·database·19c·23ai
_oP_i16 小时前
HTTP 请求Media typetext/plain application/json text/json区别
网络协议·http·json
fkdw20 小时前
C# Newtonsoft.Json 反序列化派生类数据丢失问题
c#·json
Kiros_Jiang1 天前
开源低代码平台-Microi吾码 打印引擎使用
javascript·开源·json·.net·pip
nbsaas-boot2 天前
探索 JSON 数据在关系型数据库中的应用:MySQL 与 SQL Server 的对比
数据库·mysql·json
疯一样的码农2 天前
Jackson 的@JsonRawValue
json
Web打印2 天前
web打印插件 HttpPrinter 使用半年评测
javascript·json·firefox·jquery·html5