DATA: BEGIN OF ITAB OCCURS 0,
PERNR LIKE PA0001-PERNR,
ENAME LIKE PA0001-ENAME,
END OF ITAB.
DATA: MESSAGE_CONTENT LIKE SOLI OCCURS 10 WITH HEADER LINE,
RECEIVER_LIST LIKE SOOS1 OCCURS 5 WITH HEADER LINE,
PACKING_LIST LIKE SOXPL OCCURS 2 WITH HEADER LINE,
LISTOBJECT LIKE ABAPLIST OCCURS 10,
COMPRESSED_ATTACHMENT LIKE SOLI OCCURS 100 WITH HEADER LINE,
W_OBJECT_HD_CHANGE LIKE SOOD1 OCCURS 100 WITH HEADER LINE,
COMPRESSED_SIZE LIKE SY-INDEX.
START-OF-SELECTION.
SELECT PERNR ENAME
INTO CORRESPONDING FIELDS OF TABLE ITAB
FROM PA0001
WHERE PERNR < 50.
LOOP AT ITAB.
WRITE: /02 SY-VLINE, ITAB-PERNR, 15 SY-VLINE, ITAB-ENAME, 50
SY-VLINE.
ENDLOOP.
*receivers
RECEIVER_LIST-RECEXTNAM = 'chfeijj@sina.com'.
RECEIVER_LIST-RECESC = 'U'.
RECEIVER_LIST-SNDART = 'MAIL'.
RECEIVER_LIST-SNDPRI = '1'.
APPEND RECEIVER_LIST.
*general data
W_OBJECT_HD_CHANGE-OBJLA = SY-LANGU.
W_OBJECT_HD_CHANGE-OBJNAM = 'Object name'.
W_OBJECT_HD_CHANGE-OBJSNS = 'F'.
W_OBJECT_HD_CHANGE-OBJDES = 'Message subject'.
APPEND W_OBJECT_HD_CHANGE.
*content
MESSAGE_CONTENT-LINE = 'Message content'.
APPEND MESSAGE_CONTENT.
CALL FUNCTION 'SO_OBJECT_SEND'
EXPORTING
OBJECT_HD_CHANGE = W_OBJECT_HD_CHANGE
OBJECT_TYPE = 'RAW'
OUTBOX_FLAG = 'X'
OWNER = SY-UNAME
TABLES
OBJCONT = MESSAGE_CONTENT
RECEIVERS = RECEIVER_LIST
ATT_CONT = COMPRESSED_ATTACHMENT.
//==================================================
功能:外发邮件
实例:
REPORT ztmail02 .
DATA: BEGIN OF itab OCCURS 0,
pernr LIKE pa0001-pernr,
ename LIKE pa0001-ename,
END OF itab.
DATA: message_content LIKE soli OCCURS 10 WITH HEADER LINE,
receiver_list LIKE soos1 OCCURS 5 WITH HEADER LINE,
packing_list LIKE soxpl OCCURS 2 WITH HEADER LINE,
listobject LIKE abaplist OCCURS 10,
compressed_attachment LIKE soli occurs 100 WITH HEADER LINE,
w_object_hd_change LIKE sood1 occurs 100 WITH HEADER LINE,
compressed_size LIKE sy-index.
START-OF-SELECTION.
SELECT pernr ename
INTO CORRESPONDING FIELDS OF TABLE itab
FROM pa0001
WHERE pernr <50.
LOOP AT itab.
WRITE: /02 sy-vline, itab-pernr, 15 sy-vline, itab-ename, 50
sy-vline.
ENDLOOP.
*receivers
receiver_list-recextnam = 'eric.guh@sina.com'. “直接外部地址作为接收方”
receiver_list-recesc = ‘U’. “收件人类型的说明; U 互联网地址”
receiver_list-sndart = ‘MAIL'. “输出设备; MAIL 邮件”
receiver_list-sndpri = '1'. “发送:优先级; 1 最高优先权”
APPEND receiver_list.
*general data
w_object_hd_change-objla = sy-langu. “创建文档使用的语言”
w_object_hd_change-objnam = 'Object name'. “文档,文件夹或分配清单的名称”
w_object_hd_change-objsns = 'F'. “对象:灵敏度(个人的,功能的,...)” F: 功能
w_object_hd_change -OBJDES = ‘Message subject’. “Mail的标题”
APPEND w_object_hd_change.
*content
message_content-line = 'Message content'. “发送的内容”
APPEND message_content.
CALL FUNCTION 'SO_OBJECT_SEND'
EXPORTING
object_hd_change = w_object_hd_change “通常头数据”
object_type = 'RAW' “对象类型”
OUTBOX_FLAG = 'X' “标志:发送后将文档移到outbox
owner = sy-uname “负责传送的用户”
TABLES
objcont = message_content “发送的内容”
receivers = receiver_list “接收对象属性”
att_cont = compressed_attachment.