ABAP 应用Smartforms发送HTML邮件怎么解决

Posted

tags:

篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了ABAP 应用Smartforms发送HTML邮件怎么解决相关的知识,希望对你有一定的参考价值。

1.首先,通过Smartforms创建电子邮件模板,架构架构,创建新的文件夹,新的条件。

2.在条件选项卡中,可以决定哪些内容显示

3.可以使用html标记来写HTML邮件的内容,例如<BR/>线,<A>标签的URL


4.需要激活Smartform在WebDynpro侧。设定援助类的方法,调用Smartform。传递参数的模板,把有必要的内容写入邮件

After calling the Smartforms,it will return a structure of type SSFCRESCL thatkeeps the content in a OTF field.

后调用的Smartforms的,它会返回一个结构,保持内容的类型SSFCRESCL一个OTF领域中。

5.调试模式下,可以看到,OTF数据是可读的,内容的电子邮件和一些奇怪的数字。


6.发送HTML格式的电子邮件,使用方法cl_document_bcs=> create_document。 i_text参数是一个表型SOLI_TAB的,底层的数据结构是一个字符。

Our job now is to convert from OTF to SOLI while still keeping the correct content of theemail.

现在的任务是从OTF转换到SOLI,同时仍然保持正确的内容.

First we will convert the OTF table to TLINE

 首先,将转换为OTF表TLINE


1.       call function 'CONVERT_OTF'  
2.          exporting  
3.            format                = 'ASCII'  
4.            max_linewidth    = 132  
5.          tables  
6.            otf                    = ls_job_output-otfdata  
7.            lines                = lt_lines  
8.          exceptions  
9.            err_max_linewidth         = 1  
10.         err_format                     = 2  
11.         err_conv_not_possible = 3  
12.         err_bad_otf                   = 4  
13.         others                           = 5.  
14.     if sy-subrc <> 0.  
15.     * Implement suitable error handling here  
16.     endif.  

7.将其转换为SOLI删除一些多余的线条。


1.       DELETE lt_lines WHERE tdline EQ space.  
2.       LOOP AT lt_lines INTO ls_line.  
3.          ls_soli = ls_line-tdline.  
4.          APPEND ls_soli TO lt_soli.  
5.          CLEAR ls_soli.  
6.       ENDLOOP.  

8.现在可以使用这些内容发送电子邮件了 

1.            lo_document = cl_document_bcs=>create_document(  
2.                i_type        = 'HTM'  
3.                i_subject   = 'Mail Subject'  
4.                i_text         = lt_soli ).  

参考技术A   在项目中,我们需要写一个自定义的Web Dynpro应用程序,以方便用户的业务流程。此业务流程的活动大多是有关批准,与不同层次的审批者。每个审批人(批准/拒绝)后,通过电子邮件发送到相关人士。
  The total different emails willhave to be sent is morethan 10. I have to find an effective way to sendout the emails.
  完全不同的电子邮件将被发送超过10次。我们必须要找到一个有效的方式来发送电子邮件。

ABAP系列SAP ABAP 开发中的SMARTFORMS 参数

公众号:SAP Technical
本文作者:matinal
 

技术图片

 

前言部分

大家可以关注我的公众号,公众号里的排版更好,阅读更舒适。

正文部分

&symbol& (括号中,小写字母为变量)
&symbol&  屏蔽从第一位开始的N位
&symbol (n)&   只显示前N位
&symbol (S)&   忽略正负号
&symbol (<)&   符号在左边
&symbol (>)&   符号在右边
&symbol (Z)&   不输出前导零
&symbol (C)&   空格压缩
&symbol (.n)&   显示n 位的小数位
&symbol (T)&   忽略千位分隔符
&symbol (En)&  浮点数的幂指数为n
&symbol (nR)&  n位显示,居右
&symbol (Ff)&  fill character,用f 填充字段至完整位数显示
&symbol (I)&   如果该字段是INITIAL,不输出
&symbol (K)&   禁止系统类型转换
&‘pre-text‘ symbol ‘post-text‘&   在字段输出前后加入文本内容
SET DATE MASK = ‘date_mask‘设置日期显示模版
SET TIME MASK = ‘time_mask‘设置时间显示模版

以上是关于ABAP 应用Smartforms发送HTML邮件怎么解决的主要内容,如果未能解决你的问题,请参考以下文章

ABAP系列SAP ABAP smartforms设备类型CNSAPWIN不支持页格式ZXXX

ABAP系列SAP S/4 HANA的SMARTFORMS如何切换到非word编辑器

sap/abap smartforms中流水号的打印问题

SAP ABAP 我在SMARTFORM的时候输出QUAN类型字段,SMARTFORMS就没效果。 取消输出就没有问题。

如何用ABAP实现自动发送外部邮件

abap 给用户发送邮件或消息(系统内)