我知道您可以将条件格式应用于报表生成器中的字段: http://technet.microsoft.com/en-us/library/dd220466%28v=sql.100%29.aspx
上面页面上的示例给出了此示例在属性框Color:
中设置表达式=IIF(Fields!Profit.Value < 0, "Red", "Black")
如果您知道该字段的名称,那么这是一个很好的例子。但是我想在派生的字段中应用条件格式,我不确定该字段的名称是什么。
例如,在我的SSRS报告中,我有一个矩阵,其中包含两个提供两个数字的文本框。然后我将计算放入引用前两个的第三个文本框中:
在Report Builder中,我的计算只显示为expr或expression。如何在IF语句中引用计算文本框以进行条件格式化?
我尝试使用计算字段而不是文本框之类的东西,但问题是矩阵想要对百分比求和,因此计算出的文本框比计算字段效果更好。
答案 0 :(得分:3)
根据范围,您可以使用ReportItems
引用文本框,因此如果包含您的计算的文本框的名称为&#34;百分比&#34;然后你可以在另一个表达式中引用它,如下所示:
=ReportItems!Percentage.Value
如果你想在包含计算的文本框上进行条件格式化,你也可以使用Me.Value
,虽然我有时会得到奇怪的结果。
此外,您可以重复计算中使用的表达式以提供条件格式,例如,如果您想要更改包含可以使用表达式的百分比的文本框的文本颜色:
=IIF((Fields.Numerator.Value / Fields.Denominator.Value) > 0.5, "Green", "Red")
答案 1 :(得分:1)
如果你在一个小组内,你就维持了范围。
您有两个选项......您可以使用表达式中其他字段的相同计算颜色(如之前的答案)。
在这种情况下,最好的解决方案是尝试对SQL进行计算。由于性能问题,我建议这样做。通常,由于解析,使用SQL引擎的que计算会快得多。
尝试将所有计算保留在SQL中。
答案 2 :(得分:0)
我认为首先你必须在dataSet中编写第三个文本框表达式添加“计算字段”
然后在IF条件中使用这些计算字段。