zcl_mdp_json
zcl_mdp_json copied to clipboard
Default mapper for ease of use
This library is very flexible. However there are times I only need to serialize an row with many columns. Right now I use field-symbol to read column names. This functionality can be added to library as a default mapper feature.
Hi imutlu, thank you for the suggestion. Can you please share an example of field-symbol usage with this library?
Hi Fatih,
DATA: lt_table TYPE slis_t_fieldcat_alv,
ls_table TYPE slis_fieldcat_alv,
lv_string TYPE string,
ls_kna1 TYPE kna1.
CALL FUNCTION 'REUSE_ALV_FIELDCATALOG_MERGE'
EXPORTING
i_structure_name = 'KNA1'
CHANGING
ct_fieldcat = lt_table.
SELECT SINGLE * FROM kna1 INTO ls_kna1 WHERE kunnr EQ '0001140013'.
FIELD-SYMBOLS: <fs> TYPE ANY.
LOOP AT lt_table INTO ls_table.
l_book_attr_string_node = zcl_mdp_json_node=>create_string_node( ).
lv_string = ls_table-fieldname.
CONCATENATE 'ls_kna1-' ls_table-fieldname INTO ls_table-fieldname.
ASSIGN (ls_table-fieldname) TO <fs>.
l_book_attr_string_node->value = <fs>.
l_root_object_node->object_add_child_node( child_key = lv_string child_node = l_book_attr_string_node ).
ENDLOOP.
l_string_1 = l_root_object_node->serialize( ).