SAP ABAP 标准导出excel功能实现 您所在的位置:网站首页 sap表格设置 SAP ABAP 标准导出excel功能实现

SAP ABAP 标准导出excel功能实现

2024-07-13 04:32| 来源: 网络整理| 查看: 265

前言:SAP支持的excel导出方式很多,其中用的比较多的就是OLE和DOI导出,优点是使用方便,可根据模板导出,缺点很明显:不兼容WEB端,对WEB端很不友好(导出的数据是空的),基于这个问题,个人感觉还是用SAP的标准导出功能,可以实现复杂度一般的excel导出,优点是兼容性强,毕竟是SAP的标准导出功能。实现方式如下:

FORM frm_download_data2. DATA:gt_fieldcat TYPE lvc_t_fcat. DATA:lo_table TYPE REF TO data. DATA:lv_xstr TYPE xstring. DATA:lt_rawdata TYPE solix_tab. DATA:lo_result_data_table TYPE REF TO cl_salv_ex_result_data_table. DATA:lo_bs_ex_office2007 TYPE REF TO cl_salv_bs_ex_office2007. DATA:lv_version TYPE string. DATA:lv_flavour TYPE string. "将要导出的内表放入lo_table中 GET REFERENCE OF gt_tree INTO lo_table. "按照展示ALV字段一样设置字段信息 PERFORM build_fieldcatalog. "获取cl_salv_ex_result_data_table类对象 lo_result_data_table = cl_salv_ex_util=>factory_result_data_table( r_data = lo_table t_fieldcatalog = gt_fieldcat ). "获取xml版本信息 lv_version = cl_salv_bs_a_xml_base=>get_version( ). IF lv_version = if_salv_bs_xml=>version_25. lv_version = if_salv_bs_xml=>version_25. ELSEIF lv_version = if_salv_bs_xml=>version_26. lv_version = if_salv_bs_xml=>version_26. ENDIF. lv_flavour = if_salv_bs_c_tt=>c_tt_xml_flavour_export. CREATE OBJECT lo_bs_ex_office2007 EXPORTING r_result_data = lo_result_data_table. lv_xstr = lo_bs_ex_office2007->transform( ). lt_rawdata = cl_bcs_convert=>xstring_to_solix( iv_xstring = lv_xstr ). "弹窗下载XML PERFORM f_dialog_xml USING lv_xstr. ENDFORM. "弹窗下载xml FORM f_dialog_xml USING iv_xml TYPE xstring. DATA:lv_extension TYPE string. DATA:lv_directory TYPE string VALUE 'D:/'. DATA:lv_filename TYPE string . DATA:lv_mask TYPE string VALUE 'Excel (*.XLSX)|*.XLSX'. CALL FUNCTION 'XML_EXPORT_DIALOG' EXPORTING I_XML = iv_xml I_DEFAULT_EXTENSION = lv_extension I_INITIAL_DIRECTORY = lv_directory I_DEFAULT_FILE_NAME = lv_filename I_MASK = lv_mask * I_APPLICATION = * EXCEPTIONS * APPLICATION_NOT_EXECUTABLE = 1 * OTHERS = 2 . IF SY-SUBRC 0. * Implement suitable error handling here ENDIF. ENDFORM.

代码也很简单,兼容性强。



【本文地址】

公司简介

联系我们

今日新闻

    推荐新闻

    专题文章
      CopyRight 2018-2019 实验室设备网 版权所有