1. 描述编辑
设置发件人和收件人,在定时任务完成后进行邮件提醒,发送邮件将结果告知收件人。
2. 操作步骤编辑
2.1 发件人设置
以管理员身份进入数据决策系统,点击管理系统>系统管理>邮箱,配置邮箱服务器,可参考 邮箱
如下图所示:
2.2 收件人设置
收件人设置就是指设置收件人邮箱;
收件人邮箱设置在 用户管理添加用户 的时候进行手动添加或者 用户同步数据集 时导入。
如下图所示:
2.3 定时发送邮件
2.3.1 添加任务
在数据决策系统中,点击管理系统>定时调度>添加任务,添加一个定时调度任务。如下图所示:
2.3.2 基本设置
填写「任务名称」为测试定时任务邮件通知,用户为本文 2.2 章节收件人test,点击确定。如下图所示:
2.3.3 调度对象
点击下一步,「选择模板」为 GettingStarted.cpt,「文件名称」为 ${now()}的${A1}汇总 ,「附件存档」勾选excel03、excel07、word、pdf,如下图所示:
2.3.4 调度周期
点击下一步,默认,不做修改。
2.3.5 文件处理
注:「收件人」和「抄送人」邮箱会按照用户选择的顺序在邮件中依次显示。
点击下一步,勾选邮件通知,抄送给本文 2.2 章添加的收件人;
主题为${today()}的${A1} ,邮件内容为${D3} ,勾选正文预览报表内容、正文加上结果链接、使用附件,点击保存。
如下图所示:
注1:.cpr 文件是不会作为邮件的附件发送的,但是会在 schedule 对应的目录下生成 .cpr 格式的文件。
注2:邮件收件人支持自定义用户从 2019-05-20 日开始应用。
邮件通知设置如下:
收件人 | 默认用户组 |
自定义邮箱(自定义邮箱支持多个邮箱,邮箱之间用「,」隔开) | |
抄送、密送 | 选择平台用户 |
自定义邮箱(自定义邮箱支持多个邮箱,邮箱之间用「,」隔开) | |
邮件主题、正文 | 可自定义且支持公式 |
2.3.6 收到的邮件
如下图所示:
注:邮件以 HTML 显示,可复制内容。
3. 注意事项编辑
3.1 邮件正文空格显示问题
问题描述:
邮件正文内容中的多个空格被合并为一个,行首空格不显示。
解决方案:
邮件正文中若需在行首输入空格,或在行内连续输入多个空格时,要将这些空格替换为同等数量的「 」。如下图所示:
3.2 结果链接无法正常跳转
问题描述:
设置定时任务发送邮件时,在「邮件通知」中勾选了正文加上结果链接,点击邮件中的结果链接,出现图一或图二的报错,报错内容:非常抱歉,您无法查看该页面。
如下图所示:
原因:
可能是用户在「调度对象」步骤中勾选了任务结束即清理 。
解决方案:
取消勾选任务结束即清理,勾选仅保留最近一次、仅保留最近5次、不清理、自定义中任意一个即可。
3.3 SMTP 服务器报错
问题描述:
定时任务发送邮件,收件人数量较多时,SMTP 服务器报错,报错内容中含 too many recipients 字样, 如下图所示:
原因:
平台负责将邮件信息(收件人、抄送、密送、主题、正文等)发送给 SMTP 服务器,由 SMTP 服务器根据这些信息发送邮件,平台本身并不进行实际邮件的发送;
造成该报错的实际原因为「收件人」或「抄送」或「密送」的邮箱数量超过了 SMTP 服务器的限制,不同的 SMTP 服务器所限制的数量可能不一样。
解决方案:
方案一:减少默认用户组中用户的数量,由于不同的 SMTP 服务器所限制的数量可能不一样,建议用户数量在 500 以内。
方案二:提高 SMTP 服务器对收件人的限制,需要客户方的 SMTP 服务器管理人员做修改,由于不同的 SMTP 服务器修改方式不相同,本文暂不提供修改方法。
3.4 迁移 FineDB 数据库后邮件发送失败
问题描述:
定时任务发送邮件,没有「运行监控」,也没有收到短信,后台报错:
couldn't store job:Packet for query is too large (35045785>4194304).You can change this value on the server by setting the max_allowed_packet' variable.
如下图所示:
原因:
用户将内置 FineDB 数据库迁移到本地 MySQL 数据库中,本地 MySQL 数据库中 max_allowed_packet 值设置过小导致单个记录超过限制后写入数据库失败,且后续记录写入也会失败。
解决方案:
方案一:
MySQL 安装目录下的「my.ini」文件中的 [mysqld] 段中的「max_allowed_packet = 1M」修改为 500M ,重启 MySQL 即可。
方案二:
1)使用 set global max_allowed_packet = 524288000; 语句将max_allowed_packet 的值设置为 500 M;
2)使用 show VARIABLES like '%max_allowed_packet%'; 语句查看是否修改成功。
3.5 超时报错
问题描述:
定时调度发送邮件失败,报错如下所示:
com.fr.restriction.MemoryAlarmException:很抱歉,sql 执行时间过长触发保护机制,请稍后重试。若您是管理员,可于智能运维-内存管理-模板限制中更改此项限制。
解决方案:
关闭所有 模板限制