ABAP - 将PDF文件内容转换成Base64

前提:该PDF文件存在于表 SOOD里,如下:

然后就可以将SAP里的PDF文件,转换为BASE64位的内容了

再来可以用这种简单前端UI的方式,将该文件下载下来:

简单的JavaScript去下载转换为Base64的PDF文件

源代码如下:

DATA lv_obj_id            TYPE sx_obj_id.
DATA ls_content           TYPE sx_content.
DATA lt_binary_data       TYPE solix_tab.
DATA lv_len               TYPE i.
DATA lv_xstring           TYPE xstring.
DATA lv_base64            TYPE string.

lv_obj_id = 'EXT48000000103932'.

CALL FUNCTION 'SO_OBJECT_DATA_FOR_SEND_GET'
  EXPORTING
    object_id            = lv_obj_id
  IMPORTING
    content              = ls_content
  EXCEPTIONS
    err_obj_not_found    = 1
    err_no_authorization = 2
    err_wrong_reference  = 3
    OTHERS               = 4.

lt_binary_data = ls_content-linesx.
lv_len         = ls_content-len.

CALL FUNCTION 'SCMS_BINARY_TO_XSTRING'
  EXPORTING
    input_length = lv_len
  IMPORTING
    buffer       = lv_xstring
  TABLES
    binary_tab   = lt_binary_data
  EXCEPTIONS
    failed       = 1
    OTHERS       = 2.


CALL FUNCTION 'SCMS_BASE64_ENCODE_STR'
  EXPORTING
    input  = lv_xstring
  IMPORTING
    output = lv_base64.

WRITE lv_base64.

  • 11
    点赞
  • 7
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值