我有一个报告,它由在Event数据集中名为EventID的字段分组的表组成。用户已请求表格的背景在每个事件上交替。这曾经是Crystal Reports中的一项简单任务,我想知道这是否可以在SSRS中使用。
答案 0 :(得分:1)
使用背景颜色上的表达式更好的方法。如果选择行,请转到BackgroundColor
属性,然后选择表达式
如果您没有任何群组,请使用
= IIf(RowNumber(Nothing) Mod 2 = 0, "#EAEAEA", "Transparent")
如果您有单一组,请使用
= IIf(RowNumber("EventIDGroupName") Mod 2 = 0, "#EAEAEA", "Transparent")
您还可以使用它来“重置”每个组中的行颜色计数。如果您希望每个子组中的第一个详细信息行以White开头,并且此解决方案(在详细信息行上使用时)允许此操作发生
=IIF(RunningValue(Fields![Name].Value, CountDistinct, "NameOfPartnetGroup") Mod 2, "White", "#EAEAEA")
用于组页眉/页脚:
=IIF(RunningValue(*group on field*,CountDistinct,"*parent group name*") Mod 2,"White","AliceBlue")
答案 1 :(得分:0)
使用代码块和背景颜色表达式来实现这一点非常容易。
编写代码以检测要呈现的颜色,并将其放在“报告属性”页面上的“报告|代码”文本框中。 以下代码绝不完整。
Public _lastEventID As Integer = -1
公共函数GetBackgroundColor(eventID As Integer)AS String
昏暗的颜色As String =“White”
if(_eventID<> _lastEventID)然后
'改变些什么
_lastEventID = EVENTID
万一
返回颜色结束功能
在要绘制的项目的BackgroundColor中添加表达式,以重新创建为返回颜色而创建的函数。
<强>表达式强> = Code.GetBackgroundColor(字段!EventID.Value)