Java 像Jasper Reports/report generator这样的工具给了我什么?

Java 像Jasper Reports/report generator这样的工具给了我什么?,java,php,crystal-reports,jasper-reports,business-intelligence,Java,Php,Crystal Reports,Jasper Reports,Business Intelligence,好的,所以我必须从数据库生成非常复杂的报告。 如果我要用SQL进行查询,查询本身将很复杂,我将不得不在以后的代码级对结果进行更多的操作。 Jasper Reports/Crystal Reports和friends等库在开发此类报告时如何为我节省时间? 他们会给我什么?这些工具可能不一定会为您节省编写SQL的时间,但它们会为您的客户提供一个清晰的数据表示。在编写查询时,他们不会给您太多。有些商业智能工具(尽管我所知道的开源工具都没有)为点击式查询提供了基础设施。开发人员仍然需要进行艰苦的设置工作

好的,所以我必须从数据库生成非常复杂的报告。
如果我要用SQL进行查询,查询本身将很复杂,我将不得不在以后的代码级对结果进行更多的操作。
Jasper Reports/Crystal Reports和friends等库在开发此类报告时如何为我节省时间?

他们会给我什么?

这些工具可能不一定会为您节省编写SQL的时间,但它们会为您的客户提供一个清晰的数据表示。

在编写查询时,他们不会给您太多。有些商业智能工具(尽管我所知道的开源工具都没有)为点击式查询提供了基础设施。开发人员仍然需要进行艰苦的设置工作,特别是对于复杂的查询,以便为用户提供足够简单的数据视图


这些工具为您提供了一个引擎,可以处理许多演示问题,例如格式设置、分页符、转换为多种格式(HTML、PDF等)、运行、存储和检索报告以及该区域的其他内容。

您使用什么工具生成报告,您需要编写复杂的SQL或从数据中定义视图来生成报告。使用这些工具的好处是

  • 可以生成多种类型的报告格式(PDF、EXCEL、文本..)
  • 消除了许多日常琐事,如设置日期/时间戳、标题格式
  • 保持多个报告页面之间的一致性,这通常有点难以实现
  • 创建一个可重用的模板布局,以及一些奇特的功能,如子报表和简单的类型转换
  • 等等

    • 很难说您提供的信息不够详细,但我有14年的Crystal Reports经验,可以告诉您它非常强大。您可以通过多种方式操纵Crystal Reports中的结果数据集。Crystal Report有一种非常不错的内部程序语言来实现这一点。然后你会有子报告,这将节省你的一天,如果它变得困难


      我从来没有找到一个报表生成器可以计算Crystal报表,尤其是考虑到它的低价格。如果钱不是问题,那么您也可以查看List&Labels,www.combit.net。

      Crystal Reports为您提供的一个主要功能是能够生成子报表,即返回嵌套结果集的多个相关查询。这确实可以简化您编写的单个查询。看看

      如果我要用SQL进行查询,那么查询本身将非常复杂,我将不得不在以后的代码级别对结果进行更多的操作

      Jasper在生成报告之前/期间可以非常有效地处理数据。通过设计,JasperReports中的每个变量、参数或字段都可以是一个Java表达式,想象一下可能的情况

      Jasper Reports/Crystal Reports和friends等库在开发此类报告时如何为我节省时间

      Jasper和Crystal都可以从查询中提取字段,Jasper还可以从XML或JavaBeans中提取字段。(我不知道水晶的事)

      他们会给我什么


      这两个工具是制作报告的非常好的工具,我在Jasper上制作了非常复杂的报告,因此这些工具本身非常先进,重要的是你如何使用它们。

      正如其他人所说,这些工具给你的是你的数据和你想如何显示数据之间的链接——可以是列表、图表、交叉表(汇总值网格)等,以及您自己的参数、计算和查询选项

      如果您要将报表嵌入到应用程序中,我想说,您选择的报表平台取决于您喜欢哪种技术。对于Microsoft,请看Crystal。对于Java,请看JasperReports和iReport

      JasperReports确实有子报告

      谢尔曼


      Jaspersoft(JasperReports背后的公司)

      如果您的意思是数据和操作的复杂性,那么像Jasper和Docmosis这样的代码级系统将允许您在代码和查询中操作数据。您可以将最好的SQL与最好的代码算法结合起来,以准备好报表数据。如果在你的环境比维护复杂的SQL更重要。

      这取决于你的公司和你的技能。如果你在一个小环境中,你可以控制一切,可以访问任何东西,可以下载和安装任何你想要的东西,而你是一个程序员,报告更令人烦恼,Jasper有很多选择。你需要做艰苦的工作你自己努力工作,但你有能力做到这一点

      但是,如果你在一家公司,像许多人一样,DBA控制数据库,系统管理员控制服务器,你不能下载和安装任何你想要的东西,需要签入、测试、批准等等,报告是人们现在需要的东西,而不是在你找到一种编写Jasper没有提供的东西的方法之后你的工作更多的是报告和分析,而不是编程,那么Jasper是一个可怕的工具

      另外,不管你喜欢与否,其他工具都有更多的支持和帮助。Jasper在简单的帮助方面有点无用。搜索所有Jasper论坛。查看任何其他关于Jasper的论坛。大多数问题都没有答案。如果你发布了一些东西,很可能你的问题永远不会得到回答。或者答案与你需要的不太接近d

      这是一把双刃剑。贾斯珀给了你很多自由,但在现实的企业世界中,很多自由都是一个不好的工具。除非你有一份整天做得不多的工作,否则贾斯珀会花太长时间来完成简单的事情。如果是为了在一个合适的时间把报告交给合适的人