1


    我是 Birt 的新手,我想根据带有 20 个标签(5 行 x 4 列)的 A4 打印在“打印标签纸”上打印标签的报告。我连续使用 4 个表格开发了报告,每个表格都有一个像这样的过滤器:

  1. row[0]%4 eq 0(表 1 的过滤器)
  2. row[0]%4 eq 1(表 2 的过滤器)
  3. row[0]%4 eq 2(表 3 的过滤器)
  4. row[0]%4 eq 3(表 4 的过滤器)

一切似乎都很好,但我需要插入一个输入参数,该参数将包含第一页的起始行。
例如:用户插入 5 作为起始行,报告将自动从第一页的第 5 行开始。如果标签多于 4 个,则报表将从第一行开始生成第二页,依此类推。
我试图在第一页上设置边距,但我在下一页也发现了相同的边距。

谢谢
           GG

4

1 回答 1

0

您可以在表格上方添加一个空标签,并在此标签的“onCreate”事件中添加一个脚本,以动态计算边距:

var rowHeight=15;
this.getStyle().marginTop=(params["rowSkipNumber"].value*rowHeight)+"px";

此外,您可能希望在参数为 0 时隐藏此标签,在其“可见性”属性中使用如下表达式:

params["rowSkipNumber"].value==0
于 2012-11-08T13:49:39.303 回答