按day_of_week /工作日的Cognos结果

问题描述

我正在研究一个非常基本的列表,以便根据星期几的日期按日期检索记录。

我不知道如何使表达式正常工作。

我想要完成的是 安排周一至周五。

如果day_of_week(current_date)= Monday,则获取上一个星期五的[记录日期](星期一提取星期五的记录)

否则,如果day_of_week(current_date)= Tuesday,则获取周六-周一(周二拉周六-周一记录)之间的几天的[记录日期]

否则获取[记录日期] =当前日期-1(所有其他工作日提取以前的记录)

我尝试根据查询表达式[data item1]在[记录日期]创建过滤器,以获取星期几。 day_of_week(current_date,1)

但是没有运气。感谢任何可能的帮助。谢谢!

解决方法

从数据库中的数据开始,然后计算要显示数据的日期。

以下是使用蛮力方法的示例过滤器表达式:

current_date = 
case
    when _day_of_week ([Sales (query)].[Time].[Date],1) in (6,7)
        then _add_days ([Sales (query)].[Time].[Date],9 - _day_of_week ([Sales (query)].[Time].[Date],1))
    when _day_of_week ([Sales (query)].[Time].[Date],1) in (5)
        then _add_days ([Sales (query)].[Time].[Date],3)
    else _add_days([Sales (query)].[Time].[Date],1)
end

您绝对可以为此使用IF-THEN-ELSE。我通常使用CASE-WHEN-THEN,因为我通常在处理SQL数据库,并且以相同的方式进行操作更容易。

相关问答

错误1:Request method ‘DELETE‘ not supported 错误还原:...
错误1:启动docker镜像时报错:Error response from daemon:...
错误1:private field ‘xxx‘ is never assigned 按Alt...
报错如下,通过源不能下载,最后警告pip需升级版本 Requirem...