我试图在SSRS中为我的折线图添加@interval,因此最终用户可以从@interval中选择日,周,月。如果使用的结尾选择@interval = Week,则该行每周仅显示1个数字,因此该行看起来更好,数量更少。 我想在报表参数中创建@interval,然后为"图表数据值"创建表达式。 这是我写的表达,但它没有用。
=switch (Parameters!Interval.Value='Day', sum(Fields!DealPerActiveDealer.Value),
Parameters!Interval.Value='Month', Avg (sum(Fields!DealPerActiveDealer.Value)),
Parameters!Interval.Value='Week', Avg (sum(Fields!DealPerActiveDealer.Value))
有谁知道如何解决这个问题?非常感谢!
答案 0 :(得分:0)
我很少使用Switch,但语法看起来是正确的。您应该在表达式中使用双引号而不是单引号。
=SWITCH(PARAMETERS!INTERVAL.VALUE = "DAY", SUM(FIELDS!DEALPERACTIVEDEALER.VALUE),
PARAMETERS!INTERVAL.VALUE = "MONTH", AVG(SUM(FIELDS!DEALPERACTIVEDEALER.VALUE)),
PARAMETERS!INTERVAL.VALUE = "WEEK", AVG(SUM(FIELDS!DEALPERACTIVEDEALER.VALUE))
对于您的图表,您可能还需要使用时间线更改轴。我认为它现在每天都显示,但也应该是动态的。您的分组表达式类似于:
=DATEPART(SWITCH(Parameters!Interval.Value = "Day", "d"
Parameters!Interval.Value = "Month", "m",
Parameters!Interval.Value = "Week", "ww"), Fields!DATEFIELD.Value)