ABAP 上传文件成Xstring格式

35 篇文章 1 订阅

   最近有一个需求-通过ABAP发送邮件到邮箱,使用了内部封装好的方式。 但是遇到了如下问题

   在发送邮件的过程中,需要同时发送附件,附件要从本地上载,并转化为xstring的格式发送。

   怎么上载附件?

  通过两个function:WS_FILENAME_GET(选择文件上载目录)

                                 GUI_UPLOAD(上载文件)。

 

DATA:LV_FILE TYPE STRINT.   
DATA:BEGIN OF LS_XDATA,               
     RAW   TYPE XSTRING LENGTH 255,              
END OF LS_XDATA,              
    LT_XDATA  LIKE TABLE OF LS_XDATA.    
DATA:LV_XDATA  TYPE XSTRING.   

CLEAR:LV_FILE,LV_XDATA,LS_XDATA,LT_XDATA[]   
  
 CALL FUNCTION 'WS_FILENAME_GET'            
   IMPORTING                
    FILENAME                     =  LV_FILE           
   EXCEPTION               
    INV_WINSYS                   =  1               
    NO_BATCH                     =  2               
    SELECTION_CANCEL             =  3                
    SELECTION_ERROR              =  4                
    OTHERS                       =  5.          
 IF SY-SUBRC NE 0.             
  MESSAGE ID SY-MSGID TYPE SY-MSGTY NUMBER SY-MSGNO                     
     WITH  SY-MSGV1 SY-MSGV2 SY-MSGV3 SY-MSGV4.          
 ENDIF.        

CHECK LV_FILE IS NOT INITIAL.        
   
  CALL FUNCTION 'GUI_UPLOAD'                
   EXPORTION                 
    FILENAME                    =  LV_FILE                  
    FILETYPE                    = 'BIN'                
   TABLES                   
    DATA_TAB                    = LT_XDATA.  
      
LOOP AT LT_XDATA INTO LS_XDATA.           
   CONCATANATE LV_XDATA LS_XDATA-RAW INTO LV_XDATA IN BYTE MODE.          
   CLEAR LS_XDATA.        
ENDLOOP.

 

 

LV_XDATA 就是最终得到的XSTRING。

 

 

 

 

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

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值