【发布时间】:2021-05-26 14:58:11
【问题描述】:
我需要使用 BIRT 为报告表中的某些行着色。 已经有类似的讨论了,但对我来说还不够。
我想做的是像 Excel 那样使用条件格式为单元格着色,即我有几行,我想根据其“强度”为它们着色。例如,r1= 10, r2= 20, r3= 100。我会看到 r3 的颜色最饱和,而 r1 的颜色最少。
干杯!
【问题讨论】:
标签: javascript reporting birt
我需要使用 BIRT 为报告表中的某些行着色。 已经有类似的讨论了,但对我来说还不够。
我想做的是像 Excel 那样使用条件格式为单元格着色,即我有几行,我想根据其“强度”为它们着色。例如,r1= 10, r2= 20, r3= 100。我会看到 r3 的颜色最饱和,而 r1 的颜色最少。
干杯!
【问题讨论】:
标签: javascript reporting birt
您可以在 onCreate 事件中使用 Javascript 执行此操作。 可能对数据项本身更好,而不是对包含该项的单元格。
至少这对于表格项目很容易,但您似乎正在使用交叉表。 以下指南适用于 TABLEs: 您可以在 onCreate 事件中使用通常的 row["NAME"] 语法访问该值,即使调色板不提供它。 因此,例如(未经测试):
var cell_value = row["NAME"];
var intensity = do_something_to_compute_this_from(cell_value);
// should be in the range 0.0 to 1.0
// Now compute RGB values from a "base" RGB ( 0 .. 255 )
var white = [255, 255, 255];
var base = [ 0, 60, 0 ]; // some green
var result = [];
for (var i=0; i<3; i++) {
var w = white[i];
var b = base[i];
var r = int( intensity * b + (1-intensity) * w );
result.push(r);
}
this.getStyle().backgroundColor = "RGB(" + result[0] + "," + result[1] + "," + result[2] + ")";
【讨论】:
您是否尝试过使用与突出显示功能相关的条件格式?
您可以单击要设置条件格式的单元格。 单击突出显示选项卡 点击添加 设置你的条件 设置您的首选格式
enter image description here。我尝试发送设置条件格式的屏幕截图,但我想我对这种格式太陌生了。如果您需要更多信息,请告诉我。
【讨论】: