Как написать HTML код в ABAP для отправки почты - PullRequest
0 голосов
/ 04 февраля 2019

Может ли кто-нибудь помочь мне написать этот код в HTML с указанными пробелами и условиями, если он указан в ABAP.Я включаю HTML в ABAP для отправки почты через ABAP.

Здесь мне нужно напечатать flds-fieldname после 10 пробелов, как указано в приведенном ниже операторе записи.Мне нужно написать в 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 голосов
/ 17 февраля 2019

Если вы хотите подходящий и поддерживаемый код, я советую вам разделить 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 Repository с транзакцией SMW0


Наконец загрузите 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

...