【发布时间】:2013-03-04 12:09:24
【问题描述】:
希望有人能告诉我这份 BIRT 报告有什么问题。我正在尝试使用嵌套的脚本数据集,其中外部数据集通过报表变量将数据传递给内部数据集。
我发现报告的行为与我想象的不一样。似乎报告变量正在输出每行的最后一个值。对于以下报告,我看到的输出如下:
key0
value[9][0]
value[9][1]
value[9][2]
value[9][3]
value[9][4]
key1
value[9][0]
value[9][1]
value[9][2]
value[9][3]
value[9][4]
....
key9
value[9][0]
value[9][1]
value[9][2]
value[9][3]
value[9][4]
而我希望看到这个:
key0
value[0][0]
value[0][1]
value[0][2]
value[0][3]
value[0][4]
key1
value[1][0]
value[1][1]
value[1][2]
value[1][3]
value[1][4]
....
key9
value[9][0]
value[9][1]
value[9][2]
value[9][3]
value[9][4]
我的(完全独立的)示例报告在这里:click to see report xml in pastebin。
关键思想是在外层数据集的fetch中,我设置了report变量:
vars["values"] = value;
而内部数据集的fetch会抓取它:
values = vars["values"].iterator();
内部数据集的 fetch 将从报告变量中获取数据:
row["value"] = values.next();
【问题讨论】: