1. 概述
1.1 版本
报表服务器版本 |
---|
11.0 |
1.2 应用场景
用户希望在定时调度中,通过公式或参数的形式,动态的将一个任务发送到不同的邮箱中。
1.3 功能简介
本文将通过具体的示例,演示定时调度中公式和参数的使用。
示例:根据工作日的值日安排,每天将库存盘点邮件发送到相应值班员的邮箱中。
2. 设计模板
管理员需要先准备一张模板,作为调度对象发送到不同邮箱中。
点击下载模板:库存盘点.cpt
2.1 数据准备
新建一张普通报表。新建数据集 ds1:SELECT * FROM S产品。如下图所示:
2.2 设计报表
模板样式如下图所示。
设置A1~D3单元格不扩展,左父格为无。
设置A4~D4单元格纵向扩展,B4~D4单元格的左父格为A4单元格。
B1、D1单元格插入公式:
单元格 | 公式 | 说明 |
---|---|---|
B1 | "周" + SWITCH(WEEKDAY(TODAY()),0,"日",1,"一",2,"二",3,"三",4,"四",5,"五",6,"六") + " " + TODAY() | 单元格内容为:「"星期数"+" "+"当前日期"」 |
D1 | SWITCH(WEEKDAY(TODAY()),0,"Alice@qq.com",1,"eoco@qq.com",2,"wangwei@outlook.com",3,"hanwen@outlook.com",4,"zhangshan@qq.com",5,"Lisa@qq.com",6,"Anna@qq.com") | 先获取当前日期并返回星期数,然后根据星期数返回不同的邮箱地址 注:该公式中邮箱地址仅为展示函数用法,用户在使用该公式时需自行填入正确的邮箱地址。 |
2.3 定义模板参数
菜单栏选择「模板>模板参数」,弹出模板参数设置对话框。
点击「+」按钮,新建一个模板参数,双击该参数将它重命名为「email」,设置默认值为公式「D1」。
点击「确定」,完成模板参数的定义。如下图所示:
3. 设置定时调度任务
3.1 设置发件人
发邮件,需要有一个发件人,否则发送动作无法完成。
管理员登录数据决策系统,点击「管理系统>系统管理>邮箱」,添加发件人,点击「确定」,如下图所示:
注1:发件人邮箱类型不同,配置步骤可能不完全相同,具体请参见:邮箱。
注2:配置完成后,请点击「发送测试邮件」,确保邮箱可使用。
3.2 添加任务
管理员登录数据决策系统,点击「管理系统>定时调度>任务管理」,点击「添加任务」,添加一个定时调度任务。如下图所示:
3.3 基本设置
「任务名称」设置为「库存盘点」。点击「下一步」,如下图所示:
3.4 调度对象
1)对象类型选择「报表模板」,选择模板为 2.2 节准备的「库存盘点.cpt」。
2)若已完成 2.3 节模板参数设置,点击「设置参数默认值」,系统会自动获取模板中的参数「email」和参数默认值。
3)文件名称设置为「${now()}的库存情况」。
4)附件存档勾选「pdf」。
注:本步骤中勾选了什么类型的「附件存档」,发送邮件时便可以选择什么类型的邮件附件。
点击「下一步」,如下图所示:
3.5 调度周期
设置调度周期,实现在工作日中,每天将调度对象发送到到值班员邮箱中。
1)执行频率选择「明细频率设置」,点击「添加」。
2)设置执行时间为「18时0分」,执行日为「每日」,执行月为「全选」,点击「确定」,成功添加明细频率。
3)勾选刚添加的明细频率。
4)执行条件选择「公式判断」,输入公式:ISWORKDAY(today()),实现只在工作日执行该调度任务。
点击「下一步」。如下图所示:
3.5 文件处理
注:收件人、抄送、密送可选择自定义邮箱,无需与数据决策系统的用户绑定。自定义邮箱支持手动填写和公式输入,支持的格式请参见:定时调度支持的公式。
1)处理方式勾选「邮件通知」。
2)设置收件人邮箱,实现根据工作日的安排发送邮件到对应值班员的邮箱中。
使用公式动态设置邮箱,设置收件人为:${SWITCH(WEEKDAY(TODAY()), 0, "Alice@qq.com", 1, "eoco@qq.com", 2, "wangwei@outlook.com",3,"hanwen@outlook.com",4,"zhangshan@qq.com",5,"Lisa@qq.com",6,"Anna@qq.com")}
注:该公式中邮箱地址仅为展示函数用法,用户在使用该公式时需自行填入正确的邮箱地址。
若已在 3.4 节中设置「email」参数,可以使用该参数动态设置邮箱,设置收件人为:${email}
3)主题为:${today()}的库存情况
4)邮件内容为:今天库存情况请查收
5)勾选「正文预览报表内容」、「正文加上结果链接」、「使用附件 pdf」
点击「保存」,如下图所示:
3.6 效果查看
由于该任务的执行频率是每天晚上 18 时执行一次,无法立刻看到任务效果。
为了立刻看到任务效果,可在「管理系统>定时调度>任务管理」界面找到该任务,选择「执行一次」。
当任务执行一次后,对应的值班员即可接收到邮件。在邮件中可以查看到对应的附件、链接和报表。如下图所示: