BIRT记录数据集的onFetch步骤

时间:2010-03-08 04:06:59

标签: javascript logging dataset birt

我在BIRT报告中的数据集的onFetch步骤中遇到了一些问题。

我已经通过几种不同的方式在报告的初始化步骤中添加了日志记录。我正在使用的运行时是Tivoli Common Reporting,它们提供了一个日志框架。它初始化为

reportContext.setPersistentGlobalVariable("logfileName", "DateRangeParm.log");
setupLogging();
logInitialize();

debugLogger("Started logging in initialize step");
debugLogger("Date: " + new Date());

这可以很好地登录报告的步骤(即初始化,BeforeRender,AfterRender等)但我似乎无法在数据集步骤中记录任何内容,例如onFetch等。

我也试过

importPackage(Packages.java.util.logging);

var fileHandler = new FileHandler("/tmp/birt.log", true);
var rootLogger = Logger.getLogger("");
rootLogger.addHandler(fileHandler);

正如BIRT指示告诉我在BIRTFAQ

中所做的那样

再一次,这允许我在主报告(即BeforeRender等)中记录事物,但不在数据集onFetch Step中记录。我也尝试将以前的javascript放入onFetch中,这似乎也没有用。这有点神秘。

我在运行Ubuntu 9.04。 IBM java 1.5。 Eclipse 3.5.0和BIRT 2.5.1。

任何帮助都会很棒。

2 个答案:

答案 0 :(得分:2)

听起来像是没有调用onfetch方法。您的报告是否会返回数据?是报告设计中使用的数据集吗?

只是为了踢,试试这个记录器

http://www.lebirtexpert.com/wordpress/2010/03/03/using-a-popup-debug-window/

答案 1 :(得分:0)

可能存在一些运行时异常,因为我在beforeFactory()方法中遇到了类似的问题,它抛出异常并继续。