当前位置: 首页 > news >正文

ABAP 怎样将XML和JSON格式转换为HTML格式显示

ABAP 怎样将XML和JSON格式转换为HTML格式显示

一、将JSON格式转换为HTML格式
  1. BAP接口程序开发中时常会用到JSON格式来传输数据,在监控传输的JSON串内容时,把JSON转换为HTML格式来显示会很便利。
  2. 下面提供一个简单例子来实现JSON转化为HTML并显示的功能。
    • 使用 /ui2/cl_json=>serialize来生成JSON串,
    • 调用 TRANSFORMATION sjson2html来转换HTML,
    • 使用 cl_abap_browser=>show_html显示HTML。
  3. 代码:
    *&---------------------------------------------------------------------*
    *& Report ZDEMO_TEST
    *&---------------------------------------------------------------------*
    *&*&---------------------------------------------------------------------*
    REPORT zdemo_test.DATA:lv_json     TYPE string,lv_convert  TYPE string,lo_json_ser TYPE REF TO cl_trex_json_serializer,lv_err_text TYPE string,lt_ekpo     TYPE STANDARD TABLE OF ekpo.SELECT *INTO CORRESPONDING FIELDS OF TABLE lt_ekpoFROM ekpoUP TO 10 ROWS.* 将内表转化为JSON
    lv_json = /ui2/cl_json=>serialize( data = lt_ekpo[] ).TRY.
    *   将JSON转换为HTMLCALL TRANSFORMATION sjson2html SOURCE XML lv_jsonRESULT XML DATA(lv_html).CATCH cx_xslt_runtime_error INTO DATA(lo_err).lv_err_text = lo_err->get_text( ).WRITE: lv_err_text.RETURN.
    ENDTRY.* 显示HTML
    lv_convert = cl_abap_codepage=>convert_from( lv_html ).
    cl_abap_browser=>show_html( html_string = lv_convert ).
    
  4. 运行后弹出一个窗口显示HTML也可以通过‘+’‘—’来收起或展开JSON,很方便。
    [外链图片转存失败,源站可能有防盗链机制,建议将图片保存下来直接上传(img-FKjyGOxg-1678545843233)(D:\学习计划笔记\问题解决办法\IMAGE\image-20230223103014282.png)]
二、将HTML格式转换为XML格式
  1. 将xml字符串展示为格式化的XML格式

     SELECT *FROM maktINTO TABLE @DATA(carriers) up to 10 rows.CALL TRANSFORMATION id SOURCE carriers = carriersRESULT XML DATA(xml).cl_demo_output=>begin_section( `Some Text` ).cl_demo_output=>write_text( |blah blah blah \n| &&|blah blah blah| ).cl_demo_output=>next_section( `Some Data` ).cl_demo_output=>begin_section( `Elementary Object` ).cl_demo_output=>write_data( carriers[ 1 ]-matnr ).cl_demo_output=>next_section( `Internal Table` ).cl_demo_output=>write_data( carriers ).cl_demo_output=>end_section( ).cl_demo_output=>next_section( `XML` ).cl_demo_output=>write_xml( xml ).cl_demo_output=>display( ).“或者写为下列格式也可cl_demo_output=>new()->begin_section( `Some Text`)->write_text( |blah blah blah \n| &&|blah blah blah|)->next_section( `Some Data`)->begin_section( `Elementary Object`)->write_data( carriers[ 1 ]-matnr)->next_section( `Internal Table`)->write_data( carriers)->end_section()->next_section( `XML`)->write_xml( xml)->display( ).
    
  2. 展示效果
    [外链图片转存失败,源站可能有防盗链机制,建议将图片保存下来直接上传(img-aJccjCd8-1678545843233)(D:\学习计划笔记\问题解决办法\IMAGE\image-20230307111724625.png)]

  3. 显示为默认的颜色的弹窗

    cl_demo_output=>new( 'TEXT')->display( carriers ).
    
  4. 展示效果
    [外链图片转存失败,源站可能有防盗链机制,建议将图片保存下来直接上传(img-ZYgCqH4l-1678545843234)(D:\学习计划笔记\问题解决办法\IMAGE\image-20230307112110949.png)]**

http://www.lryc.cn/news/38876.html

相关文章:

  • 基础课DP
  • 基于支持向量机SVM的风电场NWP数据预测,SVM的详细原理
  • webRtc概念
  • 数据结构与算法基础(王卓)(16):KMP算法详解(代码实现)
  • 九龙证券|盘前直接腰斩,银行巨头紧急“拔网线”!美股银行股又崩了?
  • 接口优化常用思路
  • 【SpringCloud】SpringCloud面试题整理
  • 一些数据库知识点总结
  • Python unittest 模块
  • Spring - Spring IoC 容器相关面试题总结
  • 顺序表来喏!!!
  • 【H2实践】之 SpringBoot 与 H2 数据交互
  • LeetCode 424. Longest Repeating Character Replacement
  • 建立自己的博客(记录-不推荐)
  • hashmap存储方式 hash碰撞及其解决方式
  • Amazon GuardDuty 的新增功能 – Amazon EBS 卷的恶意软件检测
  • YOLOv7 pytorch
  • JDK自带JVM分析工具
  • IO多路复用--[select | poll | epoll | Reactor]
  • pod的requests、limits解读、LimitRange资源配额、Qos服务质量等级、资源配额管理 Resource Quotas
  • R语言基础(六):函数
  • [C++] 简单序列化
  • Autosar Configuration(十三)SomeIP之配置TCP/IP
  • 滤波算法 | 无迹卡尔曼滤波(UKF)算法及其Python实现
  • IMU 积分的误差状态空间方程推导
  • VirtualBox的克隆与复制
  • 每天5分钟玩转机器学习算法:逆向概率的问题是什么?贝叶斯公式是如何解决的?
  • 游戏闲聊之游戏是怎么赚钱的
  • Redis高频面试题汇总(下)
  • Windows修改Docker安装目录修改Docker镜像目录,镜像默认存储位置存放到其它盘