[转载]以PDF附件形式发送smartform到邮箱(三)_SAP刘梦_新浪博客

程序要点:1、使用OO方式发送邮件,参考class CL_BCS
2、调用FM显示smartform时,获取对应的OTF数据,然后转换为PDF对象
2、使用类CL_BCS的属性SEND_REQUEST的方法SET_LINK_TO_OUTBOX,将邮件置于发件箱,可以在工作台outbox查看邮件的发送状态及内容
3、使用类cl_bcs的方法SET_SEND_IMMEDIATELY设置邮件立即发送 .这样不必运行邮件发送的程序或后台作业就可以立即发送出去。

以下是程序源码及SAP outbox截图:
*&---------------------------------------------------------------------*
*& Report  YZ_TEST27
*&
*&---------------------------------------------------------------------*
*&
*&
*&---------------------------------------------------------------------*

REPORT  YZ_TEST27 .
* Variables declarations
DATA OUTPUT_OPTIONS  TYPE SSFCOMPOP  .

DATA CONTROL_PARAMETERS  TYPE SSFCTRLOP .

DATA JOB_OUTPUT_INFO  TYPE SSFCRESCL .

DATA LV_FNAME ( 30 ) .


PARAMETERS P_MAILTO  TYPE AD_SMTPADR  DEFAULT  'zyz_erp@163.com' .

*Smartforms
CALL  FUNCTION  'SSF_FUNCTION_MODULE_NAME'
   EXPORTING
    FORMNAME                  =  '/SAPDII/FINC_LIST'
*   VARIANT                  = ' '
*   DIRECT_CALL              = ' '
   IMPORTING
    FM_NAME                   = LV_FNAME
* EXCEPTIONS
*   NO_FORM                  = 1
*   NO_FUNCTION_MODULE       = 2
*   OTHERS                   = 3
           .
IF SY -SUBRC <>  0 .
* MESSAGE ID SY-MSGID TYPE SY-MSGTY NUMBER SY-MSGNO
*         WITH SY-MSGV1 SY-MSGV2 SY-MSGV3 SY-MSGV4.
ENDIF .

CONTROL_PARAMETERS -GETOTF  =  'X' .

CALL  FUNCTION LV_FNAME
   EXPORTING
*   ARCHIVE_INDEX              =
*   ARCHIVE_INDEX_TAB          =
*   ARCHIVE_PARAMETERS         =
   CONTROL_PARAMETERS          = CONTROL_PARAMETERS
*   MAIL_APPL_OBJ              =
*   MAIL_RECIPIENT             =
*   MAIL_SENDER                =
   OUTPUT_OPTIONS              = OUTPUT_OPTIONS
*   USER_SETTINGS              = 'X'
*   LINEITEMS                  =
   IMPORTING
*    DOCUMENT_OUTPUT_INFO       =
    JOB_OUTPUT_INFO             = JOB_OUTPUT_INFO
*   JOB_OUTPUT_OPTIONS         =
    EXCEPTIONS
     FORMATTING_ERROR            =  1
     INTERNAL_ERROR              =  2
     SEND_ERROR                  =  3
     USER_CANCELED               =  4
      OTHERS                      =  5
           .
IF SY -SUBRC <>  0 .
* MESSAGE ID SY-MSGID TYPE SY-MSGTY NUMBER SY-MSGNO
*         WITH SY-MSGV1 SY-MSGV2 SY-MSGV3 SY-MSGV4.
ENDIF .

DATA : LV_XSTRING  TYPE XSTRING ,
      LT_TLINE  TYPE  TABLE  OF TLINE .

CALL  FUNCTION  'CONVERT_OTF'
   EXPORTING
     FORMAT                     
  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值