SSRS条件格式

时间:2015-12-17 06:09:36

标签: sql-server reporting-services ssrs-2008-r2 conditional-formatting ssrs-tablix

我正在制作SSRS排名报告,其中Rank 1应该具有Green的背景,而last Rank应该具有Red的背景。

以下示例:

SSRS Conditional Formatting

我尝试使用自定义代码,但这对我不起作用如下:

SSRS表达式如下所示:

=Code.RankColour(me.value, 1, Fields!RankName.Value)

和RankColor代码如下:

Public Function RankColourTotals(ByVal Value As Decimal, ByVal MinValue As Decimal, ByVal MaxValue As Decimal) As String
    Dim strColor As String

    Select Case Value
        Case MaxValue
            strColor = "Salmon"
        Case MinValue
            strColor = "LightGreen"
        Case Else
            strColor = "Gainsboro"
    End Select
    Return strColor
End Function

注意:我使用的是SQL 2008 R2

2 个答案:

答案 0 :(得分:1)

您可以从文本框中的单个表达式执行此操作。

将文本框的BackgroundColour设置为

=iif(Fields!myRank.Value = min(Fields!myRank.Value, "DataSet3"),
    "Green",
    iif(Fields!myRank.Value = max(Fields!myRank.Value, "DataSet3"),
        "Red",
        "White"
    )
 )

会给出结果

enter image description here

这是因为您在整个数据集myRank内搜索myRank的当前值与DataSet3的最大值和最小值。

如果这可以解决您的问题,或者您需要进一步的帮助,请告诉我。

答案 1 :(得分:0)

我在' Font / FontWeight '属性中使用了此简单表达式,以便将所有非零值切换为 Bold

=iif(Fields!ingresos.Value > 0, "Bold", "Default" )

有效!