数据:it_msg_body TYPE bcsy_text, wa_msg_body TYPE soli, gv_sub TYPE so_obj_des, gr_send_request TYPE cl_bcs的参考, gv_sent_to_all TYPE os_boolean s, gvadd_mail, gp6-r > gr_recipient类型引用到if_recipient_bcs, gr_sender类型引用到cl_sapuser_bcs, gr_document类型引用到cl_document_bcs, gr_bcs_exception类型引用到cx_bcs。
为什么需要自定义程序? 有一些标准的解决方案可以达到相同的目的。
Hello Ankit,
下面是向用户发送自定义电子邮件的代码,您可以在流程链的末尾包含该程序。
数据:it_msg_body TYPE bcsy_text,
wa_msg_body TYPE soli,
gv_sub TYPE so_obj_des,
gr_send_request TYPE cl_bcs的参考,
gv_sent_to_all TYPE os_boolean s,
gvadd_mail,
gp6-r > gr_recipient类型引用到if_recipient_bcs,
gr_sender类型引用到cl_sapuser_bcs,
gr_document类型引用到cl_document_bcs,
gr_bcs_exception类型引用到cx_bcs。
常量:gc_raw(3) 。
尝试。
*-主题
gv_sub ='SUBJECT'。
*-消息:"亲爱的用户"
wa_msg_body ='亲爱的 用户'。
将wa_msg_body附加到it_msg_body。
清除wa_msg_body。
*-空行
将初始行添加到it_msg_body。
*-消息:
'消息正文'。
附加wa_msg_body到it_msg_body。
*-空行
附加初始行到it_msg_body。
*-注意事项
wa_msg_body ='问候'。
将wa_msg_body附加到it_msg_body。
*-创建发送请求
gr_send_request = cl_bcs => create_persistent( )。
*-使用SAP ID发送电子邮件
gr_sender = cl_sapuser_bcs => create(sy-uname)。
*-添加发件人邮件ID以发送请求
呼叫方法gr_send_request-> set_sender
导出
i_sender = gr_sender。
*-发送电子邮件给...
*-邮件ID
gv_email = 'abcd@xyz.com '。
gr_recipient = cl_cam_address_bcs => create_internet_address(gv_email)。
*-添加收件人邮件ID 发送请求
呼叫方法gr_send_request-> add_recipient
导出
i_recipient = gr_recipient
i_express = abap_true。 "'X'。
* ---电子邮件BODY
gr_document = cl_document_bcs => create_document(
i_type = gc_raw
i_text = it_msg_body" gv_text
i_length ='60'< br> i_subject = gv_sub)。" gc_subject)。
* ---添加文档以发送请求
调用方法gr_send_request-> set_document(gr_document)。
*-发送正文 text
gr_send_request-> set_document(gr_document)。
*-立即发送
gr_send_request-> set_send_immediately(abap_true)。
*-发送电子邮件
方法gr_send_request-> send(
导出
i_with_error_screen = abap_true
RECEIVING
result = gv_sent_to_all)。
* ---发送电子邮件
提交工作 。
* ---异常处理
捕获cx_bcs INTO gr_bcs_exception。
写:text-006,"'Error!',
text-007,''Error type:',
gr_bcs_exception->错误类型。
ENDTRY。
一周热门 更多>