Telerik 通过 SSRS 进行报告?
-
22-07-2019 - |
题
广泛的问题是:Telerik Reporting 是否可以做 SSRS (2005) 不能做的事情?
规格:我们希望将当前的报告基础架构从内部 ASP.NET + Crystal(VS 版本)迁移到其他平台。
忽略成本因素(我们有 Telerik 许可证),与 SSRS 相比,使用 Telerik 有什么优点或缺点?
我们需要的关键要素是:
- 从自定义 ASP.NET 应用程序生成报告
- 安排报告
- 根据需要或按计划通过电子邮件发送报告
- pdf 输出,向下钻取 html
- 按摩数据集
C#
在将其传递给渲染引擎之前
任何指出优点或局限性(使用任一引擎)的经验或网站将不胜感激。
解决方案
SSRS 是一个 基于服务器的 报告系统,而 Telerik Reporting 纯粹是一个 嵌入式 报告工具。您应该将 Telerik Reporting 与 SSRS ReportViewer 控件进行比较 本地处理模式, ,而不是整个 SSRS 系统,除非您也打算使用 SSRS 服务器。我认为这是首先要回答的问题:您应该评估使用报表服务器的优缺点。
选择嵌入式报告的通常原因是 避免服务器依赖. 。如果您是应用程序开发人员并将应用程序部署到多个站点,则除了应用程序之外,您还必须支持多个 SSRS 安装。Telerik 报告编译为 dll,您可以轻松地将其与应用程序一起部署。
一般来说,基于服务器的 SSRS 比 Telerik 报告功能更丰富,尤其是 SSRS 2008 塔布利克斯 很方便。我认为 Telerik Reporting 仅从 2009 年第一季度开始支持交叉表。它不支持向下钻取等交互式功能。你应该看到 已知的限制 Telerik 报告以及 实质性改进 SSRS 2008 与 SSRS 2005 相比。另一方面,本地模式下的 ReportViewer 只能识别 RDL 2005,因此您只能使用 SSRS 2005 功能。
现在,可以更轻松地查看您的需求。
从自定义 ASP.NET 应用程序生成报告
- SSRS服务器:Microsoft ReportViewer Web 控件配置为 远程处理 查看 SSRS 服务器处理和呈现的报告
- SSRS本地模式:Microsoft ReportViewer 处理并呈现本地 RDL 2005 报表定义
- 泰勒里克:Telerik ReportViewer 处理并呈现报告。报告可以部署为嵌入所有资源(图像等)的单个 dll。这是 Telerik 报道的强项。
调度报告
- SSRS:服务器端功能,本地模式不支持
- 泰勒里克:不支持
根据需要或按计划通过电子邮件发送报告
- SSRS:服务器端功能,本地模式不支持
- 泰勒里克:不支持
PDF输出
- SSRS:服务器模式下的各种输出格式。在本地模式下,ReportViewer 仅支持 Excel 和 PDF
- 泰勒里克:多种输出格式,包括pdf
深入分析 html
- SSRS服务器:通过参数传递、报表元素中的静态 URL 深入到子报表(另一个 RDL 报表定义)
- SSRS本地模式:静态网址但没有交互功能
- 泰勒里克:静态网址但没有交互功能
在将数据集传递给渲染引擎之前,在 C# 中对其进行处理
- SSRS服务器:支持RDL,OLEDB兼容数据源,XML数据,集成服务软件包和标准.NET提供商中定义的报告数据集
- SSRS本地模式:这句话直接来自 Lachev 的书(第 525 页):
ReportViewer在本地处理模式下支持两种类型的数据源:包含 ADO.NET 的数据集 DataTable 对象或可枚举对象 业务对象的集合。ReportViewer Windows 窗体也是 支持绑定到 System.Windows.Forms.BindingSource 和 到 System.Type。报表查看器 Web 服务器支持绑定实例 System.Web.UI.IDataSource 的。
- 泰勒里克:任何 DataSet 或 DataView 都可以在运行时设置为数据源
鉴于您的关键要素,并假设您在公司防火墙内进行内部报告,我绝对建议使用 SSRS 服务器。尝试获取一个 SQL Server 2008 许可证或使用 SQL 2008 Express 作为报告服务器。但如果您绝对必须使用嵌入式报告,Telerik 可能是更好的选择,至少在 Microsoft ReportViewer 支持本地模式下的 RDL 2008 之前是这样。这个新的 ReportViewer 应随 Visual Studio 2010 一起提供。
对于 SSRS,我建议阅读 Teo Lachev 的 应用Microsoft SQL Server Reporting Services. 。样本章节可在 书的网站 的和在 谷歌图书.
其他提示
我想添加一些有关 Telerik 解决方案的新信息。
一些以前不支持的东西,例如 调度报告 和 根据需要或按计划通过电子邮件发送报告 现在作为 Telerik Report Server 产品的一部分提供。报表服务器附带了上面提到的报表设计器。有关是否可用的更多信息 这里.
我们停止使用 SSRS 并选择 Telerik 的主要原因之一是因为 Telerik 具有更好的跨浏览器支持。当然,在浏览器兼容性方面,人们不会指望微软为竞争对手的产品提供同等的支持。由于您正在计划开发一个基于网络的应用程序,这可能是一个因素。
我第一次开始使用 Telerik 报告版本 2010 Q2,并且从未遇到过通过 Web 应用程序链接报告以提供向下钻取或链接功能的问题。这非常简单且直观。
另一件需要考虑的事情是 SSRS 报告文件是 RDL 文件,而 Telerik 报告则编译到您的应用程序中。如果您需要更改报告,则需要重新编译并重新部署您的应用程序。对于 RDL 文件,您只需将它们上传到 SSRS 服务器即可。不过,我仍然更喜欢 Telerik,尽管这意味着变更请求的 SDLC 会稍长一些。
另一件让我苦恼的事情是,只要我们使用 SSRS,我们就必须同时安装 VS 2008 和 2010,因为 VS 2010 不支持像 2008 那样设计 RDL 报告(BIDS 基本上是 VS 2008 的缩小版) : Visual Studio 2010 报告服务项目? )
有了 Telerik,我们就可以继续使用 VS 2010。
评论“Telerik Reporting 也拥有出色的支持。开发 Telerik 报告在很大程度上依赖于示例和支持论坛。”:不。你在做一个假设。我创建了许多复杂的报告,而无需 任何 来自论坛/样本/等的指导 - 它是一个非常直观的工具。我确信有很多开发人员能够在不“严重”依赖论坛/示例的情况下做得很好 - 这不是火箭科学,而是蛋糕。
Azure 不支持 SSRS 本地模式。
在最新版本中,Telerik Reporting 具有报表设计器,它是类似于报表生成器的工具,并且报表查看器支持 XML 报表定义 (trdx)。因此,如果您更改报告,则无需编译。