历史版本3 :定时任务之月报与年报 返回文档
编辑时间: 内容长度:图片数:目录数: 修改原因:

目录:

1. 问题描述编辑

每月在固定某个时间段统计各个分公司的销售业绩,还可在年底统计各个分公司的销售业绩,这些数据可以以pdf、word、cpt、xls等格式保存在自己设定的目录当中,进而备份数据,这样就需要对一个模板设置多个定时器任务。

2. 实现原理编辑

首先做一个可根据年份与月份查询的报表统计各分公司的销售业绩,然后定义两个定时器,一个统计每月定时调用报表,另一个在一个汇总各分公司的销售额,并保存至数据库中。

3. 模板示例编辑

3.1 报表制作
首先制作一张报表用于统计数据,可以通过年份与月份查询订单金额跨年累计信息,而且设置当月份为空时,查询年内所有月份的数据,如下图:
可打开模板%FR_HOME%\WebReport\WEB-INF\reportlets\doc\Advanced\Cacuate_Between_Cells\Accumulative_2.cpt,设置年报表和月报表。
3.2 参数设置
给报表添加两个参数year和month,默认值分别用公式来表示,获取当前年与当期月,year的控件值是=year(today()),month的控件值是=month(today()),并在参数页面也把控件附上默认值,如下图所示:
3.3 过滤设置
双击单元格A3进行过滤设置,然后根据如下图示添加过滤条件,当月份为空时查询所在年的所有月份数据使用公式if(len($month)==0,nofilter,$month)
到此模板制作完毕,下面来添加定时任务。
已完成模板请参照%FR_HOME%\WebReport\WEB-INF\reportlets\doc\Advanced\Cacuate_Between_Cells\Accumulative_4.cpt

4. 定时任务编辑编辑

在浏览器中输入http://localhost:8075/WebReport/ReportServer?op=fs,登陆FR报表平台界面,选择平台管理>定时调度,点击添加定时任务按钮。
4.1 给模板添加月报定时任务
  • 第一步——基本属性
带*的不能为空,输入任务名称:定时月报,然后选择模板以及模板预览方式,并刷新参数,将模板中的参数添加进来,我们设置的是每个月最后一天进行汇总,统计当前月的数据,参数值使用公式求出当前年与当前月份。
参数year的值为=year(today())
参数month的值为=month(today())
  • 第二步——调度周期
月报表的任务执行频率选择表达式设定,每个月最后一天19点50分执行任务,把当前月数据进行汇总备份了:
表达式设定详细请参照表达式设定
点击提交定时月报任务就设置成功了,页面会跳转到任务管理界面。
任务管理面板中,每条任务记录最后一栏显示任务完成状态,如下图,定时月报状态为运行中,表示该定时任务还没有执行,要到每个月最后一天的19点50分才会执行,并且执行完成后就会将上个月信息自动备份到指定文件夹下面了。
4.2 给模板添加年报定时任务
  • 第一步——基本属性
任务名称中输入定时年报,参数设置处月份参数值为空,其他设置同上,在执行定时器时生成“定时年报”对应文件夹。
  • 第二步——调度周期
年报表可选择第12月的31号12点0分执行任务,把这一年的数据进行汇总备份,即执行频率选择明细频率设置,执行时间为12时0分,执行日为每月31号,执行月为十二月,如下图:
点击提交定时年报任务就设置成功了,一个模板设置多定时任务就完成了,如下图执行效果: