`

sap abap发送email

    博客分类:
  • abap
阅读更多

 例子1.

http://blog.chinaunix.net/u1/44070/showart_1069899.html

例子2.

http://jgtang82.iteye.com/blog/186430

demo 3

http://www.sapdev.co.uk/reporting/email/email_sapmail.htm

demo4

http://blog.chinaunix.net/u1/40527/showart_453984.html

 

 

  我在程序中使用的send email 的 function

 

 call function 'SO_NEW_DOCUMENT_SEND_API1'
    exporting
      document_data              = ls_docdata
      document_type              = 'RAW'
      put_in_outbox              = 'X'
      commit_work                = 'X'
    tables
      object_content             = lt_objcont
      receivers                  = lt_reclist
    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.

 

 

 

 

2.15 例子  为了是在email中保持格式   使用html来显示

    由于wa_html-line  一行只能255字符 

  我在sap 界面设置中开启了 70个字符换行    造成wa_html-line一遍遍添加到html表中

最后用于传输

 

*&---------------------------------------------------------------------*
*& Report  ZTEST_EMAIL1
*&
*&---------------------------------------------------------------------*
*&
*&
*&---------------------------------------------------------------------*

REPORT  ZTEST_EMAIL1.

DATA: lv_title          TYPE so_obj_des,
      send_request   TYPE REF TO CL_BCS,
      document         TYPE REF TO CL_DOCUMENT_BCS,
      conlengths        TYPE so_obj_len,
*      html                  TYPE STANDARD TABLE OF w3html,
      html                  TYPE STANDARD TABLE OF solisti1,
*      wa_html           TYPE w3html,
      wa_html           TYPE solisti1,
      sender_id         TYPE REF TO IF_SENDER_BCS,
      recipient           TYPE REF TO IF_RECIPIENT_BCS,
      sent_to_all       TYPE os_boolean,
      bcs_exception  TYPE REF TO cx_bcs,
      bcs_message   TYPE string.



lv_title = 'This is the title'.

*wa_html-line = '<html><body>'.
*APPEND wa_html TO html.
wa_html-line = '<table border=14 borderColor=#cccccc width=100%>'.
APPEND wa_html to html.
CLEAR wa_html.
wa_html-line = '<tr><td>&nbsp;序号</td>' .
APPEND wa_html to html.
wa_html-line = '<td>&nbsp;员工号</td>'.
APPEND wa_html to html.
wa_html-line = '<td>&nbsp;员工姓名</td>'.
APPEND wa_html to html.
wa_html-line = '<td>&nbsp;工具编码</td>'.
APPEND wa_html to html.
wa_html-line = '<td>&nbsp;序列号</td>'.
APPEND wa_html to html.
wa_html-line = '<td>&nbsp;工具描述</td>'.
APPEND wa_html to html.
wa_html-line = '<td>&nbsp;规格型号</td>'.
APPEND wa_html to html.
wa_html-line = '<td>&nbsp;数量</td>'.
APPEND wa_html to html.
wa_html-line = '<td>&nbsp;工厂</td>'.
APPEND wa_html to html.
wa_html-line = '<td>&nbsp;仓库</td>'.
APPEND wa_html to html.
wa_html-line = '<td>&nbsp;应归还日期</td>'.
APPEND wa_html to html.
wa_html-line = '<td>&nbsp;提醒次数</td>'.
APPEND wa_html to html.
wa_html-line = '<td>&nbsp;部门</td>'.
APPEND wa_html to html.
wa_html-line = '<td>&nbsp;所属专业</td>'.
APPEND wa_html to html.
wa_html-line = '</tr></table>'.
append wa_html to html.

*wa_html-line = '</body></html>'.
*APPEND wa_html TO html.

TRY.
    CLEAR send_request.
    send_request = cl_bcs=>create_persistent( ).

    CLEAR document .
    document =  cl_document_bcs=>create_document(
                    i_type =    'HTM'
                    i_text =     html
                    i_length =  conlengths
                    i_subject = lv_title ).


*   Add document to send request
    CALL METHOD send_request->set_document( document ).



*   Construct sender and receiver
    CLEAR: sender_id , recipient .
    sender_id = cl_cam_address_bcs=>create_internet_address(
'*****@****.com.cn' ).
    recipient = cl_cam_address_bcs=>create_internet_address(
'*****@*****.com.cn' ).

*   Set sender
    CALL METHOD send_request->set_sender
      EXPORTING
        i_sender = sender_id.



*   Add recipient with its respective attributes to send request
    CALL METHOD send_request->add_recipient
      EXPORTING
        i_recipient = recipient
        i_express   = 'X'.



*   Set E-mail sending options
    CALL METHOD send_request->set_status_attributes
      EXPORTING
        i_requested_status = 'E'
        i_status_mail      = 'E'.
    CALL METHOD send_request->set_send_immediately( 'X' ).

*   Send document
    CALL METHOD send_request->send(
     EXPORTING
       i_with_error_screen = 'X'
     RECEIVING
       result = sent_to_all ).

    IF sent_to_all = 'X'.
      MESSAGE 'Mail sent successfully ' TYPE 'S'.
    ENDIF.
    COMMIT WORK.

  CATCH cx_bcs INTO bcs_exception.
    bcs_message = bcs_exception->get_text( ).
    MESSAGE bcs_exception TYPE 'E'.
    EXIT.
ENDTRY.


******************************************
* get sender email address.
*
* CALL FUNCTION 'SUSR_USER_ADDRESS_READ'
*    EXPORTING
*        USER_NAME              = 'fuwuqi'
**       READ_DB_DIRECTLY       = ' '
**    IMPORTING
**        USER_ADDRESS           = FS_ADDR
**        USER_USR03             = FS_USR03
*    EXCEPTIONS
*        USER_ADDRESS_NOT_FOUND = 1
*        OTHERS                 = 2.

 

2011.04.22 PS:在运行functions后面加上这句 可以立即处理邮件  是邮件快速发送 减少处理的延时

          TCODE:SCOT  可以查看系统是否挤压邮件

if sy-subrc = 0.
    commit work and wait.
    "send immediatly
    submit rsconn01 with mode = 'INT' and return.
分享到:
评论

相关推荐

    sapabap开发从入门到精通

    资源名称:sap abap开发从入门到精通 内容简介: 《SAP ABAP开发从入门到精通》以应用实例的形式,讲解了SAPABAP开发的相关知识点,详细介绍了SAPABAP开发者必须掌握的包与变更传输系统(CTS)、数据类型、数据库...

    SAP ABAP启动OUTLOOK发邮件.docx

    针对这种需求,我们可以利用SAP的ABAP编程环境,通过OLE(Object Linking and Embedding)技术来启动Outlook并发送邮件。以下是实现这一功能的关键知识点: 1. **SAP OLE配置**: 在SAP系统中,首先需要进行OLE...

    SAP ABAP 电子书

    SAP ABAP(Advanced Business Application Programming)是SAP公司推出的一种高级业务应用编程语言,用于开发在SAP R/3和SAP NetWeaver平台上的应用程序。这些电子书提供了全面的资源,帮助学习者深入理解并掌握SAP ...

    SAP ABAP开发从入门到精通

    《SAP ABAP开发从入门到精通》以应用实例的形式,讲解了SAP ABAP开发的相关知识点,详细介绍了SAP ABAP开发者必须掌握的包与变更传输系统(CTS)、数据类型、数据库、模块化程序、内表、调试、ABAP数据字典、锁对象...

    实战SAP程序开发——从实例学SAP ABAP编程.rar

    SAP ABAP(Advanced Business Application Programming)是SAP系统中的编程语言,用于开发和定制企业应用程序。对于想要深入理解SAP编程的初学者,实战SAP程序开发——从实例学SAP ABAP编程这个资源提供了宝贵的实践...

    SAP ABAP开发学习——第9课:ALV2(视频教程)

    SAP ABAP开发学习——第9课:ALV2(视频教程) 1.SAP ABAP开发入门学习 2.含视频教程学习、PPT、作业 3.视频非常清晰

    SAP ABAP 1.4.4代码下载

    SAP ABAP(Advanced Business Application Programming)是SAP公司开发的一种编程语言,主要用于在其ERP(企业资源规划)系统中创建和定制业务逻辑。在SAP ABAP 1.4.4版本的代码下载中,我们可以深入探讨这个版本的...

    ABAP开发从入门到精通-高清自学版 SAP+ABAP开发从入门到精通 SAP开发自学必读 SAP SAP开发自学入门到精通

    ABAP(Advanced Business Application Programming)是SAP公司推出的一种编程语言,主要用于开发SAP系统中的业务应用程序。SAP系统在全球企业资源规划(ERP)领域有着广泛的应用,而ABAP则是其核心开发语言,使得...

    SAP ABAP 发送邮件功能开发

    1.SAP ABAP 发送邮件功能开发2.用户可以填写发送人员的地址3.用户可以选择发送的数据行

    SAP ABAP 代码备份下载到本地程序代码

    SAP ABAP 代码备份下载到本地程序代码

    《SAP ABAP开发技术详解(实例篇)(第二版)mobi 版

    《SAP ABAP开发技术详解(实例篇)(第二版) [1] 》除了对对SAP ABAP开发所需的常用技术(SAP报表、批量导入、对话程序、函数)做了详尽的介绍,包括基本报表、交互式报表、复杂报表、ALV(SAP List Viewer)报表、...

    《SAP ABAP开发详解与高端应用》.zip

    《SAP ABAP开发详解与高端应用》这本书深入探讨了SAP ABAP(Advanced Business Application Programming)编程语言,这是SAP系统中用于开发业务应用程序的关键技术。ABAP是SAP平台上的核心编程语言,用于创建自定义...

    sap abap query高级功能

    SAP ABAP Query 是 SAP 系统中一种用于创建自定义报表的强大工具,尤其适合那些对 SQL 不太熟悉或者没有数据库直接访问权限的用户。它提供了丰富的功能,使得开发人员可以构建复杂的数据查询,而无需编写大量的 ABAP...

    SAP ABAP官方教程

    《SAP ABAP官方教程》是一份针对SAP ABAP编程语言的重要学习资源,适合对这个领域感兴趣的初学者和有经验的开发者。ABAP(Advanced Business Application Programming)是SAP系统中的主要编程语言,用于开发企业级...

    SAP ABAP培训练习题

    在IT领域,SAP ABAP(Advanced Business Application Programming)是一种专为SAP系统设计的编程语言,用于开发企业级的应用程序。本资料包是针对SAP ABAP初学者的培训练习题,旨在帮助学习者掌握基本概念和技能,...

    SAP ABAP开发学习——第19课:实战讲解(视频教程)

    在本课程“SAP ABAP开发学习——第19课:实战讲解”中,我们将深入探讨SAP ABAP(Advanced Business Application Programming)编程语言在实际项目中的应用。ABAP是SAP系统的核心开发语言,用于构建企业级业务应用...

    SAPABAP常用函数清单.pdf

    SAP ABAP常用函数清单 SAP ABAP是一种高级程序设计语言,用于开发SAP R/3系统中的应用程序。ABAP语言提供了许多实用的函数,可以帮助开发者快速、高效地开发应用程序。本文将对SAP ABAP常用函数进行总结,涵盖文档...

    SAP abap 开发教程

    该SAP abap教程有中文和英文的 本SAP abap教程包含了:基本语法;数据类型;循环控制;格式化数据;日期时间;异常处理;字段;域;表;数据元素;结构;视图;搜索帮助;锁定对象;模块化;子例程;功能模块;包含程序;SQL;内表及创建...

    SAP ABAP初级培训手册

    SAP ABAP初级培训手册 本手册旨在为初级学员提供SAP ABAP的基本知识和实践经验,帮助他们快速掌握ABAP语言的基本语法和开发技术。以下是本手册的知识点概要: 一、ABAP基础语法 * ABAP语言的基本结构和组成 * ...

Global site tag (gtag.js) - Google Analytics