ABAP JSON转换为HTML HTML进行展示JSON数据_json转html

文章目录


前言

有些人会比较疑问,为什么JSON要转HTML进行展示呢?直接用:CL_DEMO_OUTPUT=>DISPLAY_JSON( JSON = LV_JSON_STR )展示不好嘛。我也不反对哈,因为个人习惯嘛,看个人所好。

主要区别:把JSON转为HTML格式显示会更方便一些!

一、使用步骤

1.涉及方法

代码如下(示例):

  1. *将数据转化为JSON
  2. lv_json = /ui2/cl_json=>serialize( data = lt_ekpo ).
  3. *将JSON转换为HTML
  4. CALL TRANSFORMATION sjson2html
  5.      SOURCE XML lv_json
  6.      RESULT XML DATA(lv_html).

2.示例展示

代码如下(示例):

  1. *&---------------------------------------------------------------------*
  2. *& Report YTEST_002
  3. *&---------------------------------------------------------------------*
  4. *&
  5. *&---------------------------------------------------------------------*
  6. REPORT ytest_002.
  7. DATA:lv_json TYPE string,
  8. lv_convert TYPE string,
  9. lo_json_ser TYPE REF TO cl_trex_json_serializer,
  10. lv_err_text TYPE string,
  11. lt_sflight TYPE STANDARD TABLE OF sflight.
  12. SELECT *
  13. INTO TABLE lt_sflight
  14. FROM sflight
  15. UP TO 5 ROWS.
  16. * 将内表转化为JSON
  17. lv_json = /ui2/cl_json=>serialize( data = lt_sflight ).
  18. TRY.
  19. * 将JSON转换为HTML
  20. CALL TRANSFORMATION sjson2html
  21. SOURCE XML lv_json
  22. RESULT XML DATA(lv_html).
  23. CATCH cx_xslt_runtime_error INTO DATA(lo_err).
  24. lv_err_text = lo_err->get_text( ).
  25. RETURN.
  26. ENDTRY.
  27. * 显示HTML
  28. lv_convert = cl_abap_codepage=>convert_from( lv_html ).
  29. cl_abap_browser=>show_html( html_string = lv_convert ).

总结

总的来说HTML展示比较灵活一些。