处理表达式中值的递增和递减,并显示相应的指标SSRS报告服务

时间:2013-11-05 11:36:34

标签: sql-server-2008 reporting-services ssrs-2008

我有一个SSRS中显示的值表表。 该表包含字段metricID , currentmonth , preciousMonth

问题: - 1.我必须比较当前月份和上个月的2个值

Fields.PreviousMonth.Value < Fields.CurrentMonth.Value
  1. THEn检查指标ID是否为metricID,然后currentmonth的增加应该显示为红色的向上箭头,否则应该是绿色的向下箭头。

  2. 对于所有其他指标ID,它应为“带绿色的upp箭头”,否则为“带红色的向下箭头”

  3. 有没有人知道如何做到这一点

1 个答案:

答案 0 :(得分:1)

为此,您需要设置自定义指标并设置适当的表达式来设置指标。

我有一些简单的数据:

enter image description here

一个简单的报告,每行有一个指标:

enter image description here

指标设置为:

enter image description here

表达式为:

=Switch(Fields!MetricID.Value = 7 and Fields!CurrentMonth.Value - Fields!PreviousMonth.Value > 0, 1
    , Fields!MetricID.Value = 7, 2
    , Fields!MetricID.Value <> 7 and Fields!CurrentMonth.Value - Fields!PreviousMonth.Value > 0, 3
    , true, 4)

所以我正在做的是根据您的业务规则为每一行指定一个指定的状态,并为每个状态设置适当的图标。

报告按要求运作:

enter image description here

如果您需要在报表中的多个位置使用它,可以将上面的表达式移动到数据集中的计算字段中。