如何使字段可选?

时间:2019-01-10 14:05:42

标签: plsql jasper-reports

我在jrxml报告中使用Oracle存储过程。结果返回游标。我希望能够返回不同的列集,因此光标中的某些列可能会出现或消失。

但是当我将其描述为字段的列

<field name="MY_COLUMN" class="java.lang.String"/> 

光标中不存在它会引发如下错误:

error while rendering
net.sf.jasperreports.engine.JRException: Unknown column name MY_COLUMN in result set

是否有任何方法可以将JRXML中的字段声明为可选字段?如果结果集中不存在该列。

1 个答案:

答案 0 :(得分:1)

AFIK:您不能在字段声明中设置任何设置/属性。

您的选择是:

  1. 即使使用sql alias也不能返回列名,例如:

    SELECT column1, null as MY_COLUMN from myTable.
    
  2. 创建自己的 JRDatasource 可以全部从将数据加载到Bean并传递一个 JRBeanCollectionDataSource 创建自己的JRQueryExecuter并将其注册到工厂。