历史版本9 :查询某个日期所在周的周报 返回文档
编辑时间: 内容长度:图片数:目录数: 修改原因:

目录:

1. 问题描述编辑

若数据库中存在一列数据是日期型的,希望输入某个日期的时候,查询出当前日期所在周的数据即周报查询如下图所示,此时要如何实现呢?
222

2. 示例编辑

2.1 打开模板
打开模板:%FR_HOME%\WebReport\WEB-INF\reportlets\doc\Parameter\TimeScale\TimeScale.cpt
2.2 报表参数设置
将报表参数删除,然后重新增加一个名为Date的报表参数。
2.3 修改参数界面
将参数界面设置为如下样式:
222
参数Date的控件类型为日期型,返回值类型为默认的字符串型。
2.4 过滤条件设置
将原来A2单元格的过滤条件删除,然后重新给A2单元格设置过滤条件,条件处选择公式,如下图所示:
222
第一个公式:=DATEDELTA($Date, if(tointeger(WEEKDAY($Date)) == 0, -7, 0 - WEEKDAY($Date)))即返回查询日期所在周的第一天。
第二个公式:=DATEDELTA($Date, if(tointeger(WEEKDAY($Date)) == 0, -1, 6 - WEEKDAY($Date)))返回查询日期所在周的最后一天。
注:公式的具体含义可以在公式输入框查看其意义,datedelta()的含义请查看日期的加减函数
另:一周的第一天为星期天,一周的最后一天为星期六
2.5 保存模板
点击分页预览,选择某个日期后则只查询该日期所在周的数据,效果如上图。在线查看模板效果请点击TimeScale1.cpt

具体的设置可参考模板:%FR_HOME%\WebReport\WEB-INF\reportlets\doc\Parameter\TimeScale\TimeScale1.cpt