1. 概述
1.1 应用场景
在大多数企业当中,邮件沟通是一个非常常见并且重要的沟通工具,经常性,某个员工完成了某一件事件需要用邮件通知各个相关人员,那么在 FineReport 该怎么实现这种,比如说填报一条数据进数据库的时候就用邮件通知相关人员呢?
1.2 功能简介
用户可使用「发送邮件」事件,在填报成功后给模板负责人发送邮件。
1.3 注意事项
1、定时调度自动填报后,不支持自动执行「发送邮件」事件。
2、发送邮件设置中使用到单元格值或者控件值时,不支持动态获取填报值,只能获取到初始化的值。
2. 示例
本文示例:
系统中存在模板:%FR_HOME%\webapps\webroot\WEB-INF\reportlets\doc\Form\LineForm\行式填报表.cpt
填报人填报成功后,会自动发送邮件通知模板责任人 Lisa,抄送填报人,抄送供应商邮箱 。
2.1 设置发件人
发邮件,需要有一个发件人,否则发送动作无法完成。每个数据决策系统的发件人只需要设置一次即可。
管理员登录数据决策系统,点击「管理系统>系统管理>邮箱」,添加发件人,配置系统默认发件人,点击「保存」,如下图所示:
注1:发件人邮箱类型不同,配置步骤可能不完全相同,具体请参见:邮箱。
注2:配置完成后,请点击「发送测试邮件」,确保邮箱可使用。
注3:若不配置系统默认发件人,2.3节设置发送邮件事件时,无法进行设置,并提示「您尚未配置发件邮箱,请登录平台进行配置或联系管理员」。
2.2 设置收件人
在事件中,需要给 Lisa 和 填报人的邮箱发送邮件,因此需要给这些人绑定邮箱
管理员登录数据决策系统,点击「管理系统>用户管理>所有用户」,编辑销售部主管 Lisa 的用户信息,填入邮箱信息,点击「确定」。如下图所示:
注:本示例仅演示如何对系统内的用户配置邮箱,管理员也可在同步/手动添加用户时配置好邮箱,详情请参见:添加用户、导入用户、同步用户。
邮箱完全配置好后,如下图所示:
2.3 设置发送邮件事件
打开模板:%FR_HOME%\webapps\webroot\WEB-INF\reportlets\doc\Form\LineForm\行式填报表.cpt
1)点击菜单栏「模板>模板Web属性」,按照模板预览方式,选择「填报页面设置」,切换为「为该模板单独设置」。
2)点击「+」,添加「填报成功」事件,事件类型选择「发送邮件」。
3)JS设置如下图所示,保存设置,保存模板。
「发送邮件」事件JS设置如下表所示:
设置项 | 说明 | 示例 |
---|---|---|
收件人 抄送 密送 | 手动输入收件人,多个收件人用「,」隔开 支持三种写法: 1)数据决策系统的用户名,发送给该用户绑定的邮箱 2)具体的邮箱地址 3)参数${abc},abc为参数名称,发送给该参数对应的邮箱地址 | Lisa:发送给用户Lisa绑定的邮箱 ${fine_username}:发送给当前登录用户所在邮箱 |
邮件标题 | 邮件的标题,支持公式${today()} | ${today()}库存更新 |
邮件正文 | 邮件的正文 支持公式${today()} 支持参数${abc},abc为参数名称 | 各位同仁: 库存有变化,请悉知。 更新日期:${today()} 更新人员:${fine_username} 更新详情:如下 |
正文预览报表内容 | 将报表内容在邮件正文中展示 | - |
2.4 挂载目录
管理员登录数据决策系统,点击「管理系统>目录管理>管理目录」,点击「添加模板」,如下图所示:
添加模板对话框中勾选 2.3 节制作的模板,点击下一步。
设置目录名称为「填报成功发送邮件」、挂载类型为「填报」,点击「确定」,模板就被挂载到了数据决策系统主目录下。
2.5 分配目录查看权限
管理员登录数据决策系统,点击「管理系统>权限管理>普通权限配置」,选择权限载体「部门/角色/用户」,本示例选择部门「销售部」。
选择「目录权限」Tab,为「销售部」配置目录「填报成功发送邮件」的「查看」权限,如下图所示:
2.6 效果预览
销售部用户hanwen(hanwen,123456)登录数据决策系统,打开目录「填报成功发送邮件」。
填报库存信息后,点击「提交」按钮。
1)弹出「成功」弹窗,代表填报成功。
2)弹出「邮件已发送」弹窗,代表邮件发送成功。
此时 hanwen、Lisa、供应商的邮箱收到邮件,如下图所示: