技术开发 频道

如何用.NET简化创建报表

【IT168技术文档】

    开发人员经常因为创建报表而感到头痛,但实际上,在.NET中有众多选择可用来简化这一过程,Tony Patton将向您展示.NET中的这些报表选择。

    数据是企业的生命之源,几乎您所开发的每个应用软件都会在某种程度上和数据打交道,对于所有这些数据,用户最终都希望看到它们出现在报表当中。

    很多开发新手笨到创建自定义窗体来解决报表问题,其实这大可不必,因为在.NET中有众多报表可供选择,只需要简单的托拽或者是自定义一个对象模型即可实现。而且,报表方案提供了很多额外的功能,比如生成PDF格式的文件、绘制图表,这些功能很难用自己的代码实现,.NET的报表中提供了这些已经备好的可直接使用的选择第三方产品和开放源代码的解决方案。让我们按照分类来进一步看看这些可供选择的报表方案。

    内置工具

    当我第一次在.NET中遇到Visual Studio .NET的时候,我非常激动,我的激情源自该开发环境中内含的水晶报表(Crystal Reports)。这非常好,不需要在购买和安装这个产品了(尽管它拥有一个独立版本),但当我使用水晶报表来处理我的第一个产品的时候,我的热情被熄灭了,它的文档非常晦涩难懂,当所有的事物能正常工作的时候,头脑已经麻木了。随着时间的推进,已经出现了一些书来介绍这一个主题,而且互联网上也有众多的资源,在这些资料中,我比较推荐Brian Bischof.的Crystal Reports .NET Programming。

    除了水晶报表是直接可用的,微软的Office套件看上去也到处都是,您可以在Windows客户端程序中使用Excel或是Word的功能,或者在浏览器的客户端使用Office的网络组件(Office Web Components),不同的应用软件可以通过您的.NET代码直接访问,也许您所在的企业选择了StarOffice 或OpenOffice,无论那种产品,您都可以在您的软件中利用它,即使这些产品没有可行的选择,还有很多的三方产品可供使用。

    第三方产品

    以下是一些第三方报表方案,很多产品都有免费的试用版本,所以您可以在决定之前试运行,当然,还有很多开放源代码的方案可供选择。

    ActiveReports for .NET:基于流行的ActiveReports引擎和报表阅读器的一种可管理的实现,它提供在Visual Studio .NET环境中完整的代码整合,它同时支持Web和Windows客户端还可以输出为PDF、Excel、RTF、HTML文本和TIFF图片格式。文档非常详尽而且托拽方式的界面非常直观。

    ComponentOne Studio for .NET:它包含了两个工具:报表组件,可以用来生成Access样式的数据库报表,它的另一个同伴就是报表布局设计器(Report Designer),该产品还包括了将水晶报表移植到该环境的工具。

    OOReport.NET:此产品对基于Web的客户端提供报表服务,它还包括了组装报表的控件。

    Visual Reports:此可能已经应用在.NET之前的Visual Studio项目中,它还包含一个用于固定版式的报表设计器,报表属性和版式可以通过COM界面来访问。

    Windward Reports:利用此产品提供的功能,可以试用微软的Word来创建和设计报表。

    开放源代码报表方案

    过去,当讨论到基于微软产品的开发时,开放源代码这个词是不会出声的,但是现在随着对.NET框架的接受和一些标准的应用,也出现了很多基于.NET的开放源代码解决方案,报表服务也有了很多新选择。

    NPlot提供了报表功能,.NET的一大特色在于它并不依赖于某一种语言,因此您可以使用并非基于.NET的其它产品,当然,这可能远离了.NET的开发人员,诸如JasperReports等基于Java的开放源代码解决方案同样提供了简洁的报表功能。

    不要忽视SQL Server

    如果我没有提及SQL Server报表服务(SQL Server's Reporting Services),那将是我的失职,微软将它描述为“一个全面的、基于服务器的报表解决方案,意在帮助您创建、管理和传递纸面的和基于交互式网络的报表”。当使用了SQL Server之后,它将是非常出色的选择,最初,SQL Server报表服务是作为SQL Server 2000的扩展而引入的,现在已经是SQL Server 2005的一个组成部分了,同时还包含了一个报表创建器以简化这项工作,SQL Server 2005的报表服务并不像以前的版本一样需要Visual Studio .NET,但是它可以使用Visual Studio .NET。
 
    使数据易于表示

    哪里有数据,哪里就有解释数据意义的需要,报表正是这样一种工具来帮助用户完成这项工作。幸好.NET框架包含了多种选择,从自带的水晶报表到开放源代码的工具,您可以在价格的基础上做出选择,不过每款产品都提供了许多特色来增强您的应用软件。

0
相关文章