C#-[祈福]天佑中华 众志成城 抗震救灾 重建家园

你的苦难就是我们的苦难,你的希望就是我们的希望。当灾难来临时,我们与你在一起,一起为逝者默念安息、一起为伤者祈祷平安。而更多的关怀和力量,正悄悄在汇集:天佑中华,众志成城;抗震救灾、重建家园......
  博客园  :: 首页  :: 新随笔  :: 联系 :: 订阅 订阅  :: 管理

VS2005水晶报表学习-ReportViewer Web 服务器控件

Posted on 2008-05-18 19:59  尹合磊  阅读(1425)  评论(0编辑  收藏  举报

ReportViewer 控件用于驻留在 Microsoft Visual Studio 2005 中创建的报表。控件有两种版本:用于 ASP.NET 页的 ReportViewer Web 服务器控件和用于 Windows 窗体应用程序的 ReportViewer Windows 窗体控件。Visual Studio 根据用来嵌入控件的项目类型确定要使用的版本。如果在 ASP.NET 项目中嵌入 ReportViewer 控件,则自动获得 Web 服务器控件。

ReportViewer 功能

ReportViewer 控件的两种版本都支持以下功能:

  • 用于显示报表、工具栏和文档结构图的视图区域。工具栏是可配置的,它提供了运行时功能以支持多页报表中的导航、缩放、搜索、打印和导出功能。如果将一个文档结构图显式添加到报表中,它将显示出来。

  • 允许配置处理模式、视图区域和工具栏的属性。

  • 支持本地处理模式和远程处理模式,以便可以控制处理报表的位置和方式。本地处理模式将检索现有数据集,再将现有数据集合并到报表布局中,然后使用控件内部的处理功能呈现报表。远程处理呈现 Microsoft SQL Server Reporting Services 报表服务器上发布的报表。

  • 编程接口,以便可以自定义控件、配置控件,以及通过代码与控件进行交互,包括更改在运行时 ReportViewer 使用的数据源。

Web 服务器控件和 Windows 窗体控件之间的功能差异

您使用的控件类型可确定报表默认的显示格式和工具栏的可视化特征。Web 服务器控件使用 HTML 格式显示报表,而 Windows 窗体控件使用图形设备界面 (GDI) 来提供与 Windows 用户界面样式一致的视觉体验。这两个版本的 ReportViewer 控件提供了的功能几乎是相同的。但是,在报表处理和部署方面存在差异。

  • Web 服务器控件对浏览器有要求。若要使用 Web 服务器控件中提供的所有报表功能,应使用启用了脚本的 Microsoft Internet Explorer 6.0。您可以使用其他浏览器,但是可能遇到报表功能方面的功能限制。有关详细信息,请参阅 ReportViewer Web 服务器控件的浏览器支持

  • 从 Windows 窗体控件打印报表使用了操作系统的打印功能。在远程服务器上处理报表时,从 Web 服务器控件打印报表使用了 ActiveX 打印控件。如果想要从 Web 服务器控件打印本地处理的报表,可以在打印之前将报表导出到其他输出格式。

  • 在 ASP.NET 应用程序的 Web 服务器控件中驻留的报表部署战略必须考虑会话状态和 Web 场配置。如果使用 Web 服务器控件处理远程报表服务器上的报表,则必须考虑如何对应用程序用户进行身份验证才能访问向报表提供数据的服务器和任何外部数据源。

  • 本地报表处理始终在 Windows 窗体控件中作为后台进程来执行。对于 Web 服务器控件,可以为异步处理配置本地报表处理。

除了了解控件之间的差异外,更重要的是了解处理模式的效果。所使用的处理模式的类型将确定控件的使用方式,以及报表的创建、处理和部署方式。客户端上的本地处理适用于具有一组相对较小的预定义报表和对于应用程序是本地的数据源的应用程序。如果需要的处理功能比本地控件提供的处理功能更多,则建议使用报表服务器上的远程处理。远程处理需要访问 SQL Server 2005 的许可副本。有关处理模式的详细信息,请参阅将 ReportViewer 配置为进行远程处理将 ReportViewer 配置为进行本地处理