BIRT jdbc数据集。动态最大行提取

时间:2011-01-05 20:29:58

标签: birt rhino fetch

BIRT报告可以限制数据集设置中jdbc数据集的最大行提取大小。 这是一个手动输入的Integer。我正在寻找一种方法将它从ReportParameter动态传递到jdbc数据集,以限制检索到的行。

我更喜欢这样做,例如在带有JavaScript的beforeOpen()钩子中,因为直接在SQL中设置限制是特定于DBMS的,我希望报告在多个DBMS(Oracle,MySQL,DB2,Sybase,...)上运行

1 个答案:

答案 0 :(得分:2)

beforeFactory()钩子中:

reportContext.getReportRunnable().designHandle.getDesignHandle().findDataSet("Data Set").setRowFetchLimit(params["my_limit"].value);

通常,很多beforeFactory()内容以reportContext.getReportRunnable().designHandle.getDesignHandle()开头。您可以在此处找到任何报告元素,甚至可以在必要时遍历所有元素。

当你find()元素时,ctrl + space帮助中没有列出所有方法。更多包含Eclipse帮助: BIRT程序员参考 - >参考 - > API参考 - >报告对象模型API参考。类模块句柄是开始的好地方。

我不确定,如果有一个较短的点链来访问报表设计句柄。如果是这样,请纠正我。