关于脚本:根据组更改 birt 报告的背景颜色

Changing background color of birt report according to groups

enter image description here

我正在生成如嵌入图像所示的 BIRT 报告,我正在按客户分组,例如 ACM、AFL 等...

如您所见,我使用背景替代颜色作为蓝色和白色,为此我只需使用详细信息行的突出显示选项卡 as(row["__rownum"] % 2 Equal to 0)。

现在,如果我进入更复杂的阶段,例如不同组的不同颜色组合,例如组(在这种情况下为客户)黄白色,组 2 红白等......

我正在使用 this.getStyle().backgroundColor =\\'color\\',但问题在于选择各个组,可能是某种条件可以解决问题,但我迷路了


在 BIRT 中设置行背景颜色的最简单方法是在行的属性编辑器中的突出显示选项卡中将条件添加到列表中。看起来好像您已经将替代线设置为蓝色 - 通过添加具有其他颜色的额外条件,您可以相应地设置背景。这种方法在只需要少量颜色的情况下最有用,因为您必须为每种颜色设置不同的条件。

在可能需要更多颜色选择的情况下,在事件脚本中进行条件格式化会更有意义 - 您可以在此处找到示例。

编辑:在 BIRT 中添加运行组计数:

  • 将聚合项添加到您的表中 - 例如,您可以通过从调色板的"快速工具"部分拖动聚合项来执行此操作。
  • 在 Aggregation Builder 对话框中,将 Function 设置为 COUNT,将表达式设置为 1,将 Aggregate On 设置为要计数的组(例如 Customer)
  • 插入第二个聚合项,其中 Function 设置为 RUNNINGCOUNT,表达式为 1/row[first aggregation name],Aggregate On 为 Table。

第二个聚合项将是报告中组的运行计数。