在tablix属性中使用switch过滤器选项卡

时间:2016-06-03 11:46:13

标签: reporting-services ssrs-2012 ssrs-tablix

我在过滤器窗格的tablix属性中有以下代码,

=Switch( Parameters!Year.Value = Fields!Calendar_Year.Value, "Include", Parameters!Year.Value-1 = Fields!Calendar_Year.Value, "Include", IIF(Parameters!Year.Value = Fields!Calendar_Year.Value, Fields!Calendar_Year.Value, Fields!Calendar_Year.Value - 2), "Include" )

这给我带来了3年的数据,即2016年,2015年和2014年。我的报告以月份分隔,如您所见,我将参数传递给年度报告。见下图:

enter image description here

因此,所有3年显示我有数据,但我没有2016年数据显示2015年和2014年(这是我想看到的)

我想知道在2016年有数据的情况下如何摆脱2014年专栏。

喜欢:(忽略下图中的排序) enter image description here

编辑:

enter image description here enter image description here

SELECT NON EMPTY { [Measures].[A], [Measures].[B - COUNT], [Measures].[C], [Measures].[D], [Measures].[E], [Measures].[F], [Measures].[G - COUNT],[Measures].[EMAIL], [Measures].[MAIL], [Measures].[RENT] } ON COLUMNS
, NON EMPTY { ([Order Date].[Calendar Year].[Calendar Year].ALLMEMBERS * [Order Date].[Month Number Of Year].[Month Number Of Year].ALLMEMBERS * [Order Date].[Month Name].[Month Name].ALLMEMBERS * [Dim Brand].[Brand Desc].[Brand Desc].ALLMEMBERS * [Dim Market].[Market Desc].[Market Desc].ALLMEMBERS ) } 
DIMENSION PROPERTIES MEMBER_CAPTION, MEMBER_UNIQUE_NAME ON ROWS FROM ( 
SELECT ( {[Order Date].[Calendar Year].&[2014], [Order Date].[Calendar Year].&[2015], [Order Date].[Calendar Year].&[2016] } ) ON COLUMNS 
FROM ( SELECT ( { [Dim Market].[Market Desc].&[UK], [Dim Market].[Market Desc].&[USA] } ) ON COLUMNS 
FROM ( SELECT ( { [Order Date].[Month Number Of Year].[All] } ) ON COLUMNS 
FROM [Cube]))) CELL PROPERTIES VALUE, BACK_COLOR, FORE_COLOR, FORMATTED_VALUE, FORMAT_STRING, FONT_NAME, FONT_SIZE, FONT_FLAGS

1 个答案:

答案 0 :(得分:1)

我认为您可以使用BOTTOM N运算符来实现所需的结果。

转到Year列组并右键单击它,选择Group Properties...

enter image description here

转到Filter标签并设置以下设置。如果您的排序属性为升序A-Z,请使用TOP N运算符和值2,否则降序(Z-A排序)使用BOTTOM N运算符

enter image description here

它只会过滤最后两年。

如果有帮助,请告诉我。