ABAP ALV展示时将内表转换成为XML格式
使用方法CL_SALV_EX_UTIL=>FACTORY_RESULT_DATA_TABLE以及CL_SALV_BS_TT_UTIL=>IF_SALV_BS_TT_UTIL~TRANSFORM可以将ALV展示的内表转换成XML格式,熟悉ABAP开发的各位朋友应该对传入的参数都不陌生,其中FIELDCATLG和DATA属于必输项,其他内容按需填入即可。这边推荐使用函数LVC_FIELDCATALOG_MERGE获取结构的FIELDCATLOG。
LR_RESULT_DATA = CL_SALV_EX_UTIL=>FACTORY_RESULT_DATA_TABLE( T_SELECTED_ROWS = LT_SEL_ROWS T_SELECTED_COLUMNS = LT_SEL_COLS T_SELECTED_CELLS = LT_SEL_CELLS R_DATA = LR_DATA S_LAYOUT = LS_LAYOUT T_FIELDCATALOG = IT_FIELDCATELOG[] T_SORT = LT_SORT T_FILTER = LT_FILTER T_HYPERLINKS = LT_HYPERLINKS S_CURRENT_CELL = LS_CURRENT_CELL HYPERLINK_ENTRY_COLUMN = HYPERLINK_ENTRY_COLUMN DROPDOWN_ENTRY_COLUMN = DROPDOWN_ENTRY_COLUMN R_TOP_OF_LIST = LR_TOP_OF_LIST R_END_OF_LIST = LR_END_OF_LIST T_DROPDOWN_VALUES = LT_DROPDOWN_VALUES ). CASE CL_SALV_BS_A_XML_BASE=>GET_VERSION( ). WHEN IF_SALV_BS_XML=>VERSION_25. L_VERSION = IF_SALV_BS_XML=>VERSION_25. WHEN IF_SALV_BS_XML=>VERSION_26. L_VERSION = IF_SALV_BS_XML=>VERSION_26. ENDCASE. XML_FLAVOUR = IF_SALV_BS_C_TT=>C_TT_XML_FLAVOUR_EXPORT. LS_XML_CHOICE-XML_TYPE = '04'. CALL METHOD CL_SALV_BS_TT_UTIL=>IF_SALV_BS_TT_UTIL~TRANSFORM EXPORTING XML_TYPE = LS_XML_CHOICE-XML_TYPE XML_VERSION = L_VERSION R_RESULT_DATA = LR_RESULT_DATA XML_FLAVOUR = XML_FLAVOUR GUI_TYPE = IF_SALV_BS_XML=>C_GUI_TYPE_GUI IMPORTING XML = XML.
获取之后可以使用函数组SCMS_CONV内的转换函数转成各种其他格式
【推荐】国内首个AI IDE,深度理解中文开发场景,立即下载体验Trae
【推荐】编程新体验,更懂你的AI,立即体验豆包MarsCode编程助手
【推荐】抖音旗下AI助手豆包,你的智能百科全书,全免费不限次数
【推荐】轻量又高性能的 SSH 工具 IShell:AI 加持,快人一步
· 无需6万激活码!GitHub神秘组织3小时极速复刻Manus,手把手教你使用OpenManus搭建本
· C#/.NET/.NET Core优秀项目和框架2025年2月简报
· 什么是nginx的强缓存和协商缓存
· 一文读懂知识蒸馏
· Manus爆火,是硬核还是营销?