ABAP Json格式<->内表(结构)互相转换
最近项目上对接外围系统,要求把下传的数据转换成json格式,如下FM:
1./ui2/cl_json=>deserialize 内表(结构)转json
*"----------------------------------------------------------------------
*"*"本地接口:
*" IMPORTING
*" REFERENCE(IV_JSON)
*" VALUE(IV_MODE) TYPE CHAR1 DEFAULT 'X'
*" CHANGING
*" REFERENCE(CS_DATA)
*"----------------------------------------------------------------------
DATA:
lv_json TYPE string,
lv_pretty_name TYPE char1.
CLEAR cs_data.
CHECK iv_json IS NOT INITIAL.
lv_json = iv_json.
IF iv_mode IS NOT INITIAL."驼峰
lv_pretty_name = iv_mode.
ELSE.
lv_pretty_name = /ui2/cl_json=>pretty_mode-camel_case.
ENDIF.
CALL METHOD /ui2/cl_json=>deserialize
EXPORTING
json = lv_json
pretty_name = lv_pretty_name
CHANGING
data = cs_data.
2./ui2/cl_json=>serialize json转内表(结构)
*"----------------------------------------------------------------------
*"*"本地接口:
*" IMPORTING
*" REFERENCE(IS_DATA)
*" VALUE(IV_MODE) TYPE CHAR1 DEFAULT 'X'
*" EXPORTING
*" REFERENCE(EV_JSON)
*"----------------------------------------------------------------------
DATA:
lv_json TYPE string,
lv_pretty_name TYPE char1.
CLEAR ev_json.
IF iv_mode IS NOT INITIAL."驼峰
lv_pretty_name = iv_mode.
ELSE.
lv_pretty_name = /ui2/cl_json=>pretty_mode-camel_case.
ENDIF.
CALL METHOD /ui2/cl_json=>serialize
EXPORTING
data = is_data
compress = abap_false
pretty_name = lv_pretty_name
RECEIVING
r_json = lv_json.
ev_json = lv_json.
post SAP-Garson
原文链接:https://blog.csdn.net/weixin_44911062/article/details/114981149文章来自于网络,如果侵犯了您的权益,请联系站长删除!