以PDF附件形式发送smartform…

来源:互联网 发布:微型继电器型号 淘宝 编辑:程序博客网 时间:2024/05/17 07:20
原文地址:以PDF附件形式发送smartform到邮箱作者:sap侠之大者

以下程序参考http://wiki.scn.sap.com/wiki/display/Community/Sending+SMARTFORMS+as+an+EMAIL+to+Recipient

可以直接copy到SAP系统运行,功能是以PDF附件的形式发送smartform到外部邮箱zyz_erp@163.com,smartform使用系统自带的/SAPDII/FINC_LIST ,如系统中没有这个,请选择别的并修改一下代码。

也可以发给SAP user,修改recipient部分代码,邮件可在工作台 inbox中查看

源码如下:

 *&---------------------------------------------------------------------*
*& Report  YZ_TEST25
*&
*&---------------------------------------------------------------------*
*&
*&
*&---------------------------------------------------------------------*

REPORT  YZ_TEST25.

INCLUDE .


DATARECIPIENT TYPE SWC_OBJECT,
      SENDER TYPE SWC_OBJECT.

DATAMAIL_REC_OBJ TYPE SWOTOBJID,
            MAIL_SEN_OBJ TYPE SWOTOBJID.

DATA OUTPUT_OPTIONS TYPE SSFCOMPOP .

DATA CONTROL_PARAMETERS TYPE SSFCTRLOP.

DATA LV_FNAME(30).





*Sender
*This sender source code contains the sender information.
SWC_CONTAINER  CONTAINER.
SWC_CLEAR_CONTAINER  CONTAINER.
SWC_CREATE_OBJECT  SENDER 'RECIPIENT' SPACE.
SWC_SET_ELEMENT CONTAINER 'ADDRESSSTRING' SY-UNAME.
SWC_SET_ELEMENT CONTAINER  'TYPEID'  'B'.
SWC_CALL_METHOD SENDER 'CREATEADDRESS' CONTAINER.
IF SY-SUBRC NE 0.
  MESSAGE ID SY-MSGID TYPE 'E' NUMBER SY-MSGNO.
ENDIF.

SWC_OBJECT_TO_PERSISTENT SENDER MAIL_SEN_OBJ.

*Recipient
*This Recipient source code contains the Recipient information*.*

SWC_CLEAR_CONTAINER CONTAINER.
SWC_CREATE_OBJECT RECIPIENT 'RECIPIENT' SPACE.
SWC_CLEAR_CONTAINER CONTAINER.
SWC_SET_ELEMENT CONTAINER 'ADDRESSSTRING' 'zyz_erp@163.com'.
SWC_SET_ELEMENT CONTAINER 'TYPEID' 'U'.
SWC_CALL_METHOD RECIPIENT 'CREATEADDRESS' CONTAINER.
IF SY-SUBRC NE 0.
  MESSAGE ID SY-MSGID TYPE 'E' NUMBER SY-MSGNO.
ENDIF.

SWC_OBJECT_TO_PERSISTENT RECIPIENT MAIL_REC_OBJ.


OUTPUT_OPTIONS-TDTITLE 'SMARTFORMS TO MAIL'.
CONTROL_PARAMETERS-DEVICE 'MAIL'.

*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.

CALL FUNCTION LV_FNAME
  EXPORTING
  ARCHIVE_INDEX              =
  ARCHIVE_INDEX_TAB          =
  ARCHIVE_PARAMETERS         =
   CONTROL_PARAMETERS         CONTROL_PARAMETERS
  MAIL_APPL_OBJ              =
   MAIL_RECIPIENT             MAIL_REC_OBJ
   MAIL_SENDER                MAIL_SEN_OBJ
   OUTPUT_OPTIONS             OUTPUT_OPTIONS
   USER_SETTINGS              'X'
  LINEITEMS                  =
IMPORTING
  DOCUMENT_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.

*start SAPconnect process immediately
SUBMIT RSCONN01 WITH MODE EQ 'INT' AND RETURN.

COMMIT WORK.

 

邮件效果如下:

[转载]以PDF附件形式发送smartform到邮箱

0 0
原创粉丝点击