Cognos - 按日期范围(从星期日开始的一周)细分的交叉表报告



我已经为此工作了一段时间,但我在网上没有找到太多可以帮助的人,所以希望有人可以提供帮助。

我正在使用带有SQL Server的Cognos 8.4.1作为数据源。我有一个保存日期和时间的日期字段。

我们的客户希望看到全年按周划分的报告,但一周从星期日开始,而不是星期一。为了增加复杂性,我需要将日期范围显示为数据标签。

因此,例如,交叉表的标题类似于下面的细分,即每列中的总计。

第 11 周 1/5-1/1 | 1/

12-1/18 | 1/19-1/25 | 1/25-2/1 |

任何帮助不胜感激,谢谢!

因此,理想的方法是实际上有一个包含日历数据的表,以便正确执行此操作。这不是我可以在一夜之间添加到我们的 Cognos 环境中的东西,所以在此期间,我想出了一个临时解决方案。我不显示周范围,而是显示每周(星期日)的开始。

我创建了一个新的数据元素,称为[DayOfWeek]:

_day_of_week([mydatefield], 7)

然后我创建了另一个数据元素,称为[StartOfWeek]:

cast(CASE [DayofWeek] 
WHEN 1 THEN [mydatefield] 
ELSE _add_days([mydatefield], -1 * ([DayofWeek] - 1)) 
END,date)

我最大的挑战是使用添加天数函数,因为我从 DATEADD 开始,这是 SQL 的本机函数,但它不起作用。

感谢大家的投入!

最新更新