我正在制作SSRS排名报告,其中Rank 1应该具有Green的背景,而last Rank应该具有Red的背景。
以下示例:
我尝试使用自定义代码,但这对我不起作用如下:
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
答案 0 :(得分:1)
您可以从文本框中的单个表达式执行此操作。
将文本框的BackgroundColour
设置为
=iif(Fields!myRank.Value = min(Fields!myRank.Value, "DataSet3"),
"Green",
iif(Fields!myRank.Value = max(Fields!myRank.Value, "DataSet3"),
"Red",
"White"
)
)
会给出结果
这是因为您在整个数据集myRank
内搜索myRank
的当前值与DataSet3
的最大值和最小值。
如果这可以解决您的问题,或者您需要进一步的帮助,请告诉我。
答案 1 :(得分:0)
我在' Font / FontWeight '属性中使用了此简单表达式,以便将所有非零值切换为 Bold :
=iif(Fields!ingresos.Value > 0, "Bold", "Default" )
有效!