2017-09-12 26 views
1

我已经创建了自己的Java类(类型)显示货币(欧元)时 - 值在碧玉报告有生命只是一个更容易一些。JasperReport的服务器 - 用自己的Java数据类型交互过滤不起作用

public class Euro extends Number implements Comparable<Euro> { 

    @Override 
    public String toString() {...} 

    @Override 
    public boolean equals(Object obj) {...} 

    @Override 
    public int hashCode() {...} 

} 

数据显示在表中,一切工作正常。即使对整个柱子进行分类也很有效。但是,如果我想过滤像“大于”一样的列 - 过滤后没有数据显示。

当我改变的数据为BigDecimal排序作品的类型。

什么,我做错了什么?或者任何人都可以告诉我,当它试图过滤数据时,碧雅做了什么?

+1

你是问关于JasperReports的服务器? –

+0

@AlexK是的,交互式筛选是JasperReport的服务器上完成。 [链接](https://community.jaspersoft.com/documentation/tibco-jasperreports-server-user-guide/v630/interactively-filtering-report-output)。我改变了标题。感谢提示 – Dirk

+0

创建自定义Number实现的原因是什么? – Narcis

回答

0

问题是帽子碧玉不知道正确的数据类型的列,它应该被过滤的。

所以,你必须定义哪些字段或变量应该被过滤:

表中既不排序,也不过滤包含在他们的详细文本字段表达式复杂的公式列。 JIVE查看详细文本字段中的表达式,以了解它需要对数据源字段或变量进行排序和过滤。当文本字段只使用一个简单的表达式,只有一个字段或变量的名称时,事情就会顺利进行。

另一种方法是在表格组件的列级别指定用于排序和筛选的字段或变量,使用列中可以设置的以下两个自定义属性之一标签/对象:

net.sf.jasperreports.components.table.column.field 
net.sf.jasperreports.components.table.column.variable 

How to make JIVE filtering/soring feature work on column in the table that contains expression