Birt-onCreate

Birt - onCreate

我有两张图片要根据报告中 dataset/dynamic 文本中的值显示。 我在尝试这样做时遇到错误。

if(this.getRowData().getExpressionValue("row[price]") == "" )
this.imageName = "check.JPG";  
else
this.imageName = "unchecked.JPG"; 

错误:

org.eclipse.birt.report.engine.api.EngineException: There are errors evaluating script "if(this.getRowData().getExpressionValue("row[price]") == "" ) this.imageName = "check.JPG"; else this.imageName = "unchecked.JPG";": TypeError: Cannot call method "getExpressionValue" of null (/report/body/image[@id="84"]/method[@name="onCreate"]#1)

我不知道脚本有什么问题 - 显然 getRowData() returns 为空,但我不知道为什么。

无论如何,我会以不同的方式解决这个问题,并使用带有“共享资源中的图像文件”的图像,“资源文件”是您的文件名。文件名必须是绝对路径或相对于“共享资源”文件夹的路径。所以你的文件名表达式将是

row["price"] == "" ? "check.JPG" : "unchecked.JPG"