SAP 灵活工作流(Flexible Workflow)邮件通知设置

12 篇文章 6 订阅

         1. 配置邮件通知模板

2. 逻辑分析

3. 增强示例

        设置发件人

        邮件主题及内容增强

        附加邮件发送增强(非标准模板邮件发送)

        收件人增强

        其它增强可根据需求自行判断

4. 附加

        邮件模版传输

        邮件模版可用变量

        邮件模版表

        收件人邮箱为SAP账号邮箱,语言为用户默认语言


1. 配置邮件通知模板

        Fiori应用维护电子邮件模板(Maintain Email Templates)

        以PO为例,参考链接

SAP Help Portalhttps://help.sap.com/docs/SAP_S4HANA_ON-PREMISE/af9ef57f504840d2b81be8667206d485/40c92fe9016a4e6dba80316f01377eef.html?locale=en-US

        参照官方说明配置邮件模版(模版内可维护各语言对应的主题及内容,以及一些可用的流程数据变量,但是如果通知中需要显示业务端数据,则需要结合增强使用)

        参考配置:

                预定义待办通知模版SWF_CRT_NOTIFY_RECIPIENTS

                ZZ1_00800238_CRT_19 采购订单待办通知

                预定义审批流完成模版SWF_WORKFLOW_COMPLETE_NOTIFY

                ZZ1_00800238_COMPLETE_NEGATIVE 采购订单审批拒绝通知申请人

                ZZ1_00800238_COMPLETE_POSITIVE 采购订单审批通过通知申请人

                预定义截止日期通知模版MMPUR_PO_WFL_DEADLINE_EMAIL

                ZZ1_MMPUR_PO_WFL_DEADLINE_EMAIL 采购订单审批催办审批人

2. 逻辑分析

        程序RSWF_OUTPUT_MANAGEMENT定时执行,读取表SWW_WIREGISTER数据来触发邮件发送。

        CL_SWF_RUN_OM_SERVICE  工作流:通过输出管理的邮件服务

                方法REGISTER 将发送邮件通知的场景保存到表SWW_WIREGISTER中,在灵活工作流控制类的方法IF_SWF_FLEX_IFS_RUN_APPL_STEP~AFTER_COMPLETION_CALLBACK(工作流项目完成后回调方法) 中调用。

                方法SEND_MAIL_WITH_JOB根据表SWW_WIREGISTER中条目发送邮件,也是选择增强处理的位置。

        类中常量标识了邮件发送的场景,可以用作邮件发送的判断。

3. 增强示例

        设置发件人

        CL_SWF_RUN_OM_MAIL->SEND_INTERNAL 开头or结尾

        邮件主题及内容增强

        CL_SMTG_EMAIL_RENDERER->APPLY 结尾

        {{TaskLeadingObjectInstance}} 邮件内容中预定义变量--工作流实例ID,即流程关联业务单据主键,在邮件模版中使用可替换变量如&&LIFNR&&,此处取得对应数据后替换。

        示例代码:

    DATA: lv_name TYPE name2.
    FIELD-symbols <fs_value> TYPE ANY.

    IF <ls_data> IS ASSIGNED.
      ASSIGN COMPONENT 'TaskLeadingObjectInstance' OF STRUCTURE <ls_data> TO <fs_value>.
      IF sy-subrc = 0.
        " custom logic
       REPLACE ALL OCCURRENCES OF &&LIFNR&& IN ev_subject   WITH lv_name.
     ENDIF.
    ENDIF.

        其它邮件发送增强(非标准模板邮件发送)

        CL_SWF_RUN_OM_SERVICE->SEND_MAIL 开头or结尾

        参数:

                iv_template_id 邮件Template ID 用来判断标准邮件触发时的应用类型和场景。

                iv_use_case 用户场景 用来判断标准邮件触发时的场景。

                iv_wi_id 流程实例ID,可用来获取流程数据和流程关联的业务数据

                流程ID关联单据ID

    SELECT SINGLE instid
      FROM sww_wi2obj
      INTO @DATA(lv_instid)
      WHERE wi_id = @iv_wi_id
      AND   catid = 'XX'
      AND   typeid = 'XXXXXXXX'.

        收件人增强

        CL_SWF_RUN_OM_MAIL->DETERMINE_SMTP_ADDRESS 结尾

        如下语句可获取流程id,判断逻辑,对收件人进行调整

DATA(lv_id) = get_workitem_id( it_data_key ).

        其它增强可根据需求自行判断

4. 附加

        邮件模版传输

        标准方案是在注册扩展传输app中操作传输;

        邮件模版不可传输是由于维护的邮件模板存储在本地包 Package TEST_YY_KEY_USER_LOCAL中,如果需要传输则更改到可传输包(更改到可传输包后不可编辑,更改回本地包可编辑)

        邮件模版可用变量

        邮件模版表

SMTG_TMPL_HDR

电子邮件模板标题

SMTG_TMPL_HDR_T

电子邮件模板名称和说明

        收件人邮箱为SAP账号邮箱,语言为用户默认语言

https://blog.csdn.net/xiefireworks/article/details/125568694

https://blog.csdn.net/xiefireworks/article/details/125568694

  • 3
    点赞
  • 8
    收藏
    觉得还不错? 一键收藏
  • 2
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论 2
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值