使用多维数据集数据从时间戳值中获取季度和年份的SSRS表达式



我正在尝试编写一个ssrs表达式,该表达式接受一个参数值,将其格式化为时间戳,然后从该时间戳显示监管年份和季度。例如,如果参数为2016年1月1日,则应将参数格式设置为2016-01-01 00:00:00,然后显示监管年度和季度,如2015年第4季度。我的数据存储在一个多维数据集中,该多维数据集使用时间戳来获取监管年份和季度。

一种更简单的方法是在一个完整的日期维度中拥有所需值的所有版本。这样就可以返回所需的不同格式。

如果这不是一个选项,我会尝试首先在SQL中构建日期部分。我只是发现这比SSRS表达式语法更容易编写。即使您必须将其创建为报表中的数据集,并将结果作为表达式传入。

例如:

SELECT
CASE 
WHEN DATEPART(M, GETDATE()) < '4' THEN CAST(YEAR(GETDATE()) -1 AS VARCHAR) + '/' + SUBSTRING(CAST(DATEPART(YYYY, GETDATE()) AS VARCHAR),3,2)
ELSE CAST(YEAR(GETDATE()) AS VARCHAR) + '/' + SUBSTRING(CAST(DATEPART(YYYY, GETDATE()) + 1 AS VARCHAR),3,2)
END

本财政年度业绩:

2016/17

最新更新