为SSRS报表添加交替行颜色

在本文中,我们将向您展示如何为SSRS报表添加交替行颜色。这是用户经常提出的问题之一。因此,在这里,我们将通过一个例子,向您展示使用表达式为报表添加交替行颜色的分步方法。

我们将使用下面显示的DataSet来解释这一点。请参考嵌入式数据源数据集文章,以了解创建我们用于此SSRS报表的嵌入式数据源和数据集所涉及的步骤。我们在上述数据集中使用的自定义SQL查询是

SELECT [FirstName] +  ' ' + [LastName] AS FullName
      ,[Education]
      ,[Occupation]
      ,[YearlyIncome]
      ,[Sales]
      ,[HireDate]
  FROM [Employee]

如何为SSRS报表添加交替行颜色

我们将使用先前设计的报表,如下所示。请参考表格格式表格文章,以了解创建表格和格式的步骤。接下来,请访问页眉和页脚文章以添加页眉和页脚。让我向您展示预览。

选择详细信息行时,属性窗格中有一个名为“背景颜色”的选项。如果您想为报表返回的所有记录设置标准颜色,可以使用所有预定义的颜色。

为SSRS报表添加交替行颜色

在这里,我们的任务是为SSRS报表添加交替行颜色。这意味着我们需要使用一些条件来检查交替行。

为此,请单击“背景颜色”属性下的“表达式”超链接。

Add Alternative Row Color to a SSRS Report 4

单击“表达式”超链接后,将打开一个名为“表达式”的新窗口。使用此表达式窗口来查找它们。

在“表达式”窗口中,我们将使用IIF条件来检查行号是偶数还是奇数。如果是偶数,则为浅绿色,否则为淡紫色。通过这种方式,我们可以为SSRS报表添加交替行颜色。

=IIF(RowNumber(Nothing) MOD 2 = 0, "PaleTurquoise", "Plum")
Expression for alternative background color to a report 6

完成后,单击“确定”关闭窗口。正如您所见,我们的报表预览在报表中显示了指定的颜色作为交替行颜色。

Add Alternative Row Color to Report 8

为SSRS表格报表组行添加交替背景颜色

本报表文章展示了如何使用IIF条件或表达式更改表格组行的交替背景颜色。它会根据组显示颜色。

右键单击“数据集”文件夹以创建新的数据集。下图显示了我们用于此示例的数据集。我们在上述SSRS示例中使用的Sql查询是

SELECT [FirstName] +  ' ' + [LastName] AS FullName
      ,[Education]
      ,[Occupation]
      ,[YearlyIncome]
      ,[Sales]
      ,[HireDate]
  FROM [Employee]

我们设计了一个简单的员工表格报表,并格式化了字体和颜色。要为SSRS表格报表组行添加交替背景颜色,请在“行组”部分,单击详细信息旁边的向下箭头,然后选择“添加组”和“父组”。接下来,选择“职业”列作为分组选项,然后单击“确定”按钮。请检查报表预览,因为员工表已按“职业”列分组(4组)。

选择详细信息行,转到“背景颜色”属性,然后单击“表达式”超链接。

下面的iif语句使用RunningVlaue函数,该函数为每个组分配一个唯一的数字。接下来,我们使用MOD函数来查找余数。如果余数为零,则为偶数组,因此分配浅绿色。否则,为淡紫色。

=IIF(RunningValue(Fields!Occupation.Value, CountDistinct, "DataSet1") MOD 2 = 0, "PaleTurquoise", "Plum")
Expression to Add Alternative Background Colors to Table Group Rows

单击“确定”关闭“表达式”窗口。如果您观察报表预览,每个组都有两种不同的或交替的背景颜色。

让我将“为表格组行添加交替背景颜色”的表达式更改为下面的表达式。

=IIF(RunningValue(Fields!Occupation.Value, CountDistinct, "DataSet1") MOD 2 = 1, "PaleTurquoise", "Plum")

预览报表。