以PDF附件形式发送smartform…

程序要点:1、显示smartform时,获取对应的OTF数据,然后转换为PDF对象

2、使用function module SO_NEW_DOCUMENT_ATT_SEND_API1 发送邮件,设置 PUT_IN_OUTBOX              = 'X' 可以在工作台outbox查看邮件的发送状态及内容

3、调用程序 RSCONN01 立即发送;上述function module 执行之后,并不能立即发送出去,需要执行 RSCONN01 才能立即发送。此程序一般在basis配置SAP邮件时设置成后台作业,参考事务码SCOT

以下是程序源码及SAP outbox截图:

 *&---------------------------------------------------------------------*
*& Report  YZ_TEST13
*&
*&---------------------------------------------------------------------*
*&
*&
*&---------------------------------------------------------------------*

REPORT  YZ_TEST13.


DATA I_TLINE TYPE TABLE OF TLINE WITH HEADER LINE.
DATA WA_BUFFER TYPE STRING. "To convert from 132 to 255

DATA: I_RECORD TYPE TABLE OF SOLISTI1 WITH HEADER LINE,
      WA_DOC TYPE SODOCCHGI1,
      I_RECLIST TYPE TABLE OF SOMLRECI1 WITH HEADER LINE,

* Objects to send mail.
    I_OBJPACK TYPE TABLE OF SOPCKLSTI1 WITH HEADER LINE,
    I_OBJTXT TYPE  TABLE OF SOLISTI1 WITH HEADER LINE,
    I_OBJBIN TYPE TABLE OF SOLISTI1 WITH HEADER LINE,

* Work Area declarations
    WA_OBJHEAD TYPE SOLI_TAB,

* Variables declarations
    V_LEN_IN TYPE SOOD-OBJLEN,
    V_LINES_TXT TYPE I,
    V_LINES_BIN TYPE I.

DATA OUTPUT_OPTIONS TYPE SSFCOMPOP .

DATA CONTROL_PARAMETERS TYPE SSFCTRLOP.

DATA JOB_OUTPUT_INFO TYPE SSFCRESCL.

DATA LV_FNAME(30).


PARAMETERS P_MAILTO(30) 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       

转载于:https://www.cnblogs.com/senlinmu110/p/3802058.html

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

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

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

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值