ABAP - 下载ALV内表 - download ALV internal table

DATA gt_contract       TYPE tty_contract.

DATA gr_table          TYPE REF TO cl_salv_table.

DATA gv_xstring        TYPE xstring.

DATA gv_xlen           TYPE int4.

DATA gv_size           TYPE so_obj_len.

DATA gt_binary_table   TYPE solix_tab.

 

DATA  filename TYPE string,

        path     TYPE string,

        fullpath TYPE string.

  

TRY.

      cl_salv_table=>factory(

        IMPORTING

          r_salv_table gr_table

        CHANGING

          t_table      gt_contract ).    "gt_contract是自定义的内表数据

      gv_xstring gr_table->to_xmlif_salv_bs_xml=>c_type_xlsx ).

      CALL FUNCTION 'SCMS_XSTRING_TO_BINARY'

        EXPORTING

          buffer        gv_xstring

        IMPORTING

          output_length gv_xlen

        TABLES

          binary_tab    gt_binary_table.

      gv_size gv_xlen.

    CATCH cx_salv_msg.

  ENDTRY.

“下载

CALL METHOD cl_gui_frontend_services=>file_save_dialog

    EXPORTING

      window_title      'Save'

      default_extension 'xlsx'

      default_file_name 'Summary_Certified Statement Submission'

      file_filter       'Excel(*.XLS;*.XLSX)'

      initial_directory 'C:\'

    CHANGING

      filename       filename

      path              path

      fullpath          fullpath.

  " Save the file

  CALL METHOD cl_gui_frontend_services=>gui_download

    EXPORTING

      bin_filesize gv_xlen

      filename     fullpath

      filetype     'BIN'

    CHANGING

      data_tab     gt_binary_table

    EXCEPTIONS

      OTHERS       1.

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值