我是Java开发人员已经有两年了但是我是Jasper的新手,所以我需要一些帮助,我知道如何处理来自某个类或实体的字段的简单报告,但现在我必须更加努力
我有这3个实体:
组 功能 特权
该组可能有一个功能列表,一个功能有一个列表oc权限,这是最简单的方案,但一个组可能有一个其他组的列表而不是一个功能列表。
简单示例:Group1 - > (Function1 [Privilege1,Privilege2],Function2 [Privilege3,Privilege4] - Group1得到一个包含2个函数的列表,每个函数有2个权限。
复杂的例子:Group2 - > (Group1 - > [Function1 {Privilege1,Privilege2},Function2 {Privilege3,Privilege4}],Group3 - > [FunctionX {Privilege1,Privilege2},FunctionY ... - Group 2得到一个包含2个子组的列表,每个子组小组得到了功能等等。
要构建报告,我以前只向Jasper发送一个对象,在这种情况下是父组,所以我相信我需要一种方法来遍历其列表,但我不知道什么是最好的方法。
我对小组和子报告进行了一些研究,但我找不到任何类似的情况,我无法弄清楚什么是我需要做的最好的。
一些帮助将不胜感激!
答案 0 :(得分:1)
我创建jasper报告,将一个对象作为参数或字段传递。 假设一个文件结构
com.project.MyClass,我们传递MyClass的对象 无论你想要什么,这个对象都作为参数或数据源传递。
假设myClass是对象
如果传递一个单个对象,则必须将表达式类java.lang.String更改为jasper中的com.project.MyClass。
现在您可以以$ F {myClass} .getMethodName()
的形式访问您的对象你也可以使用$ F {myClass} .getMethodName()。getSubmethodName()
这是100%的工作。我将它用于我的所有报告。如果您需要任何帮助,请询问。