【问题标题】:Want to highlight every other row in a group想要突出显示组中的每一行
【发布时间】:2021-06-22 14:45:02
【问题描述】:

我正在尝试更改我的 SSRS 报告中每个组的每个奇数记录的背景颜色。

我知道这会改变报告中每条偶数记录的颜色。 =IIF(RowNumber(Nothing) Mod 2, "No Color", "Silver")

这将更改每个组的第一条记录。 =IIF(Fields!EvaluatorID.Value=previous(Fields!EvaluatorID.Value), "No Color", "Silver")

似乎将它们组合在 OR 中应该可以解决问题。 =IIF((Fields!EvaluatorID.Value=previous(Fields!EvaluatorID.Value)) or (RowNumber(Nothing) Mod 1), "No Color", "Silver")

但是当一个组中有 3 条记录时颜色不会改变。有没有人有关于如何改变表达的建议?

【问题讨论】:

  • 您的手术室中有 mod 1。
  • mod 2 突出显示偶数行。我只想要每个组的奇数行。
  • 调试您自己的代码并查看 mod 的工作原理。将两个字段(临时)添加到您的报告中。一个包含“RowNumber(Nothing) Mod 2”的值,另一个包含“RowNumber(Nothing) Mod 1”的值。
  • mod 2 = 0 是偶数,mod 2 = 1 是偶数。如果它是基于 0 的,我可能会倒退。
  • FYI => MOD 2 表示除以 2 后的余数。所以你的答案要么是 1 要么是 0。 MOD 1 将始终为 0。

标签: sql-server reporting-services grouping


【解决方案1】:

就用这个吧……

=IIF(RowNumber("myRowGroupName") Mod 2, "Silver", Nothing)

您需要指定行组名称(区分大小写并用双引号括起来)。这会评估每个组中的 rownumber(),因此它将再次从 1 开始。

然后翻转奇数和偶数突出显示,反转应用的颜色。我还使用了Nothing,因为这是 SSRS 中使用的实际默认值,“无颜色”只是属性窗口中显示的用户友好名称。

【讨论】:

    猜你喜欢
    • 1970-01-01
    • 1970-01-01
    • 2015-12-02
    • 1970-01-01
    • 1970-01-01
    • 2013-05-18
    • 1970-01-01
    • 1970-01-01
    • 2022-10-01
    相关资源
    最近更新 更多