1、使用实例
参数说明:
DOCUMENT_DATA 邮件属性
PUT_IN_OUTBOX 发送后将文档移动到发件箱
COMMIT_WORK 提交事务
PACKING_LIST 数据结构信息
CONTENTS_BIN 文件二进制数据
CONTENTS_TXT 邮件内容
RECEIVERS 收件人
DATA: GS_DOC_DATA TYPE SODOCCHGI1,
GV_LINES_TXT TYPE I,
GT_PACKING_LIST TYPE STANDARD TABLE OF SOPCKLSTI1,
GS_PACKING_LIST TYPE SOPCKLSTI1,
GT_OBJECT_HEADER TYPE STANDARD TABLE OF SOLISTI1,
GS_OBJECT_HEADER TYPE SOLISTI1,
GT_CONTENTS_BIN TYPE STANDARD TABLE OF SOLISTI1,
GS_CONTENTS_BIN TYPE SOLISTI1,
GT_CONTENTS_TXT TYPE STANDARD TABLE OF SOLISTI1,
GS_CONTENTS_TXT TYPE SOLISTI1,
GT_RECEIVERS TYPE STANDARD TABLE OF SOMLRECI1,
GS_RECEIVERS TYPE SOMLRECI1,
GV_START_POS TYPE I,
GV_OFFSET_POS TYPE I,
GV_CONTENT_EXIST TYPE C.
GS_DOC_DATA-OBJ_NAME = 'TEXT'.
GS_DOC_DATA-SENSITIVTY = 'O'.
GS_DOC_DATA-OBJ_DESCR = '标题'.
CONCATENATE '<TABLE BORDER="1">' '<TR>'
'<TD>' 'CONTENT1' '</TD>'
'<TD>' 'CONTENT2' '</TD>'
'</TR>' '</TABLE>'
INTO GS_CONTENTS_TXT.
APPEND GS_CONTENTS_TXT TO GT_CONTENTS_TXT.
DESCRIBE TABLE GT_CONTENTS_TXT LINES GV_LINES_TXT.
READ TABLE GT_CONTENTS_TXT INTO GS_CONTENTS_TXT INDEX GV_LINES_TXT.
GS_DOC_DATA-DOC_SIZE = GV_LINES_TXT * 255.
CLEAR:GS_PACKING_LIST-TRANSF_BIN.
GS_PACKING_LIST-TRANSF_BIN = SPACE.
GS_PACKING_LIST-HEAD_START = 1.
GS_PACKING_LIST-HEAD_NUM = 0.
GS_PACKING_LIST-BODY_START = 1.
GS_PACKING_LIST-BODY_NUM = GV_LINES_TXT.
GS_PACKING_LIST-DOC_TYPE = 'HTM'. "RAW
APPEND GS_PACKING_LIST TO GT_PACKING_LIST.
*收件人
CLEAR:GT_RECEIVERS,GS_RECEIVERS.
GS_RECEIVERS-RECEIVER = 'XXX@XXX.COM'."EMAIL ADDRESS
GS_RECEIVERS-EXPRESS = 'X'.
GS_RECEIVERS-REC_TYPE = 'U'.
GS_RECEIVERS-COPY = ''."是否抄送
APPEND GS_RECEIVERS TO GT_RECEIVERS.
CALL FUNCTION 'SO_NEW_DOCUMENT_ATT_SEND_API1'
EXPORTING
DOCUMENT_DATA = GS_DOC_DATA
PUT_IN_OUTBOX = 'X'
COMMIT_WORK = 'X'
TABLES
PACKING_LIST = GT_PACKING_LIST
OBJECT_HEADER = GT_OBJECT_HEADER
CONTENTS_BIN = GT_CONTENTS_BIN
CONTENTS_TXT = GT_CONTENTS_TXT
RECEIVERS = GT_RECEIVERS
EXCEPTIONS
TOO_MANY_RECEIVERS = 1
DOCUMENT_NOT_SENT = 2
DOCUMENT_TYPE_NOT_EXIST = 3
OPERATION_NO_AUTHORIZATION = 4
PARAMETER_ERROR = 5
X_ERROR = 6
ENQUEUE_ERROR = 7
OTHERS = 8.
IF SY-SUBRC = 0.
WAIT UP TO 2 SECONDS.
SUBMIT RSCONN01 WITH MODE = 'INT' AND RETURN.
ENDIF.
2、注意事项
1、PACKING_LIST-DOC_TYPE为HTM时邮件内容以html超文本形式,为RAW时邮件内容以普通文本形式
2、DOCUMENT_DATA-SENSITIVTY为文件灵敏度,域固定值有所有灵敏选项
3、SUBMIT RSCONN01 WITH MODE = 'INT' AND RETURN.可手动触发立即发送邮件