iReport和外部对象

时间:2012-02-09 07:26:50

标签: java jasper-reports ireport

我正在尝试在报告中使用外部对象。

  1. 我将带有外部对象的jar文件添加到iReport类路径(在设置中)
  2. 静态文本(使用I18n)
  3. msg($R{pdf.invoice.finalTitle}, $P{invoice.number})
    
    1. 我已将这些定义添加到xml:
    2. <import value="crm.object.objects.Invoice"/>
      
      <parameter name="invoice" class="crm.object.objects.Invoice" isForPrompting="false">
              <property name="number" value=""/>
              <defaultValueExpression><![CDATA[]]></defaultValueExpression>
      </parameter>
      ...
      

      但是在编译过程中它仍然失败:net.sf.jasperreports.engine.design.JRValidationException: Report design not valid :       1. Parameter not found : invoice.number

      我做错了什么? 谢谢

1 个答案:

答案 0 :(得分:2)

您定义的参数是“invoice”,而不是“invoice.number”。所以,它应该是$ P {invoice}。然后你可以访问它的变量,如果它有足够的访问权限......或者它的getter,如$ P {invoice} .getNumber()