如何在ABAP中编写HTML代码以发送邮件

时间:2019-02-04 12:30:44

标签: html css sap abap

在ABAP中给定的空格和条件时,谁能帮我用HTML编写此代码。我在ABAP中包含HTML,以便通过ABAP发送邮件。

在这里,我需要在10个空格后打印flds-fieldname,如下面的write语句所述。我需要用HTML编写。

loop at flds .
  assign component flds-fieldname of structure l_det to <fl>.
  assign component flds-fieldname of structure r_det to <fr>.
  if <fl> ne <fr>.
    write : /10 flds-fieldname ,
            /20 'Local -' , 30 <fl> ,
            /20 'Remote -' , 30 <fr> .
  endif.
endloop.

uline.
skip.

谢谢。

1 个答案:

答案 0 :(得分:2)

如果您想要合适且可维护的代码,建议您将html内容和ABAP内容分开。为此,您可以使用SAP Web Repository


首先编写您的html

   <html>
    <head>
        <meta charset="utf-8"/>
    </head>
    <body>
        <p>
            <!var!>
            Local - fl
            ...
        </p>
    </body>
    </html>

您可以在驱动程序中插入<!var!>之类的占位符,并用ABAP变量替换它们。


通过事务SAP Web RepositorySMW0中第二次下载


最后在驱动程序中使用适当的功能模块加载html页面

call function 'WWW_HTML_MERGER'
      exporting
        template           = 'YOUR_SWR_HTML_ID_TEXT'
*       MERGE_TEXTPOOL     =
*       TEMPLATE_TABLE     =
      importing
        html_table         = lv_text
      changing
        merge_table        = lt_merge
      exceptions
        template_not_found = 1
        others             = 2.
    if sy-subrc <> 0.
      raise exception type cx_swf_mail_manager.
    endif.
由您的TEMPLATE中的template ID来更改参数SAP Web Repository html占位符已替换为内部表lt_merge