创建用户生成的报告

时间:2010-06-14 17:10:31

标签: java report

我需要用户创建自定义报告。这些用户不懂任何技术技能,如SQL。我们目前有一个自定义数据库报告设计。因此,无论用户在GUI上做什么,应用程序都必须生成适当的SQL来生成报告结构。

以前有人这样做过吗?我知道有报告解决方案,但我们已经拥有自己的报告数据库表。我们已经有一个部分,用户可以在其中查看以HTML格式显示的报告。

例如,如果用户从GUI中选择“UserID”和“Accounts”字段,我怎么知道我的SQL必须加入USER和ACCOUNTS表?

我想我只是想找点帮助我解决这个问题的想法。

感谢。

3 个答案:

答案 0 :(得分:1)

您列出的问题是一个相当广泛和开放的问题,没有一个简单的答案。您拥有的报告和GUI界面的复杂性将决定您必须执行的操作。我必须从零开始为一个项目编写一个报告系统,这是一个8个月的3人开发工作。您想要的基本基础是将GUI字段映射到数据库字段的方法。在过去我曾经使用过的两个报告系统中,我们都使用XML来实现这一点(XML可能变得非常复杂,因为生成动态查询需要很多部分)。

我的建议是作为JasperReports的起点。特别是您可能会发现iReport(用于生成静态报告)很有用。该堆栈中还有一些技术(DynamicReports和WebReportBuilder),我没有经验但可能对您有用。

答案 1 :(得分:0)

有许多报告解决方案,例如Business Objects或Oracle Discoverer,它们使最终用户能够根据预先设计的数据视图拖放字段,过滤条件等。

这些最适合用于报告目的的数据模式(例如星型模式),因为它听起来像是你的。我会谨慎地尝试使用这些工具从规范化的操作模式进行报告。

答案 2 :(得分:0)

Jasper已经商业化了,但是这个版本使用了社区版本(虽然我不认为社区版本已经更新了)

http://www.dynamicreports.org/