Telerik 通过 s-s-rS 报告?
Posted
技术标签:
【中文标题】Telerik 通过 s-s-rS 报告?【英文标题】:Telerik Reporting over s-s-rS? 【发布时间】:2010-11-29 11:19:02 【问题描述】:广泛的问题是:有什么 Telerik Reporting 可以做 s-s-rS (2005) 做不到的事情吗?
具体说明:我们希望将当前的报告基础架构从内部 ASP.NET + Crystal(VS 版)迁移到其他平台。
忽略成本因素(我们有 Telerik 许可证),使用 Telerik 而不是 s-s-rS 有什么优点或缺点吗?
我们需要的关键要素是:
从自定义 ASP.NET 应用程序生成报告 计划报告 按需或按计划通过电子邮件发送报告 pdf 输出,向下钻取 html 在将C#
中的数据集传递给渲染引擎之前对其进行按摩
任何指出优点或限制(使用任一引擎)的经验或网站将不胜感激。
【问题讨论】:
【参考方案1】:s-s-rS 是一个基于服务器的报告系统,而 Telerik Reporting 是一个纯粹的嵌入式报告工具。您应该将 Telerik Reporting 与 local processing mode 中的 s-s-rS ReportViewer 控件进行比较,而不是整个 s-s-rS 系统,除非您也打算使用 s-s-rS 服务器。我认为这是第一个要回答的问题:您应该评估使用报表服务器的利弊。
选择嵌入式报告的通常原因是避免依赖服务器。如果您是应用程序开发人员并将您的应用程序部署到多个站点,则除了您的应用程序之外,您还必须支持多个 s-s-rS 安装。 Telerik 报告编译成一个 dll,您可以轻松地将其与您的应用程序一起部署。
通常,基于服务器的 s-s-rS 比 Telerik 报告功能更丰富,尤其是 s-s-rS 2008 tablix 非常方便。我认为 Telerik Reporting 仅从 2009 年第一季度开始支持交叉表。它不支持向下钻取等交互式功能。与 s-s-rS 2005 相比,您应该看到 Telerik 报告的 known limitations 以及 s-s-rS 2008 中的 substantial improvements。另一方面,本地模式下的 ReportViewer 仅了解 RDL 2005,因此您只能使用 s-s-rS 2005 功能。
现在,查看您的要求更容易了。
从自定义 ASP.NET 应用程序生成报告
s-s-rS 服务器:为 remote processing 配置的 Microsoft ReportViewer Web 控件查看由 s-s-rS 服务器处理和呈现的报告 s-s-rS 本地模式:Microsoft ReportViewer 处理并呈现本地 RDL 2005 报告定义 Telerik:Telerik ReportViewer 处理和呈现报告。报告可以部署为嵌入所有资源(图像等)的单个 dll。这是 Telerik 报告的强项。计划报告
s-s-rS:服务器端功能,本地模式不支持 Telerik:不支持按需或按计划通过电子邮件发送报告
s-s-rS:服务器端功能,本地模式不支持 Telerik:不支持PDF 输出
s-s-rS:服务器模式下的各种输出格式。在本地模式下,ReportViewer 仅支持 Excel 和 PDF Telerik:各种输出格式,包括 pdf向下钻取 html
s-s-rS 服务器:通过参数传递、报表元素中的静态 URL 向下钻取到子报表(另一个 RDL 报表定义) s-s-rS 本地模式:静态 URL,但没有交互功能 Telerik:静态 URL,但没有交互功能在将数据集传递给渲染引擎之前,在 C# 中对数据集进行按摩
s-s-rS 服务器:支持 RDL 中定义的报表数据集,OLEDB 兼容 数据源、XML 数据、集成服务包和标准 .NET 提供程序 s-s-rS 本地模式:此引用直接来自 Lachev 的书 (p.525):Telerik:任何 DataSet 或 DataView 都可以在运行时设置为数据源ReportViewer 支持两种类型 本地处理模式下的数据源: 包含 ADO.NET 的数据集 DataTable 对象或可枚举 业务对象的集合。 ReportViewer Windows 窗体也 支持绑定到实例 System.Windows.Forms.BindingSource 和 到 System.Type。报告查看器网站 服务器支持绑定到实例 的 System.Web.UI.IDataSource。
鉴于您的关键要素,并假设您在公司防火墙内进行内部报告,我绝对推荐使用 s-s-rS 服务器。尝试获取一个 SQL Server 2008 许可证或使用 SQL 2008 Express 作为报告服务器。但是,如果您绝对必须使用嵌入式报告,Telerik 可能是更好的选择,至少在 Microsoft ReportViewer 在本地模式下支持 RDL 2008 之前是这样。这个新的 ReportViewer 应该随 Visual Studio 2010 一起提供。
对于 s-s-rS,我建议阅读 Teo Lachev 的 Applied Microsoft SQL Server Reporting Services。示例章节可在book's site 和Google Books 获得。
Telerik Reporting 也有出色的支持。开发 Telerik 报告在很大程度上依赖于 samples 和 support forums。
我还特别在embedded reporting 和Telerik Reporting 上写过博文。
【讨论】:
很棒的答案。我还没有深入研究您提供的所有链接,但仅前 5 个链接就有很大帮助。谢谢。 Telerik 报告的最新版本也支持自定义业务集合,仅供参考。 这里有一些重要的事情要补充... s-s-rS(服务器端)是一个用于创建内部报告的重量级解决方案。在企业中它可能是有意义的,但我们在一家小商店使用它,这是一场彻头彻尾的噩梦。我们有一个多租户的情况,它并不是为了提供安全的面向客户的报告。后来我们只在客户端使用它并获得更好的结果,但即使与几年前的 Access 相比,报表生成器仍然很原始,应该很简单的任务是神秘和难以理解的,它只能在 IE 中正确呈现。小团队要小心。【参考方案2】:只是添加到mika 的关于 Telerik 交互性的回复:
他们的reporting 现在提供了一些交互功能,即导航到子报表(钻取)、导航到书签和导航到 URL。他们目前的路线图提到,他们将在 2011 年底之前添加交互式排序和向下钻取。这将使他们的报告产品在这方面更接近 s-s-rS。
【讨论】:
【参考方案3】:我想添加一些关于 Telerik 解决方案的新信息。
以前不支持的一些功能,例如 计划报告 和 按需或按计划发送电子邮件报告 现在可作为 Telerik Report Server 的一部分使用产品。报表服务器带有上面提到的报表设计器。有关是否可用的更多信息here。
【讨论】:
【参考方案4】:我们停止使用 s-s-rS 并选择 Telerik 的主要原因之一是 Telerik 对跨浏览器的支持要好得多。自然,在浏览器兼容性方面,人们不会期望 MS 为竞争对手的产品提供同等支持。 由于您计划使用基于 Web 的应用程序,因此这可能是一个因素。
我第一次开始使用 Telerik 报告版本 2010 Q2,并且从未遇到过通过 Web 应用程序链接报告以提供向下钻取或链接功能的问题。它非常简单直观。
要考虑的另一件事是 s-s-rS 报告文件是 RDL 文件,而 Telerik 报告被编译到您的应用程序中。如果您需要更改报告,则需要重新编译和重新部署您的应用程序。对于 RDL 文件,您只需将它们上传到 s-s-rS 服务器。不过,我仍然更喜欢 Telerik,尽管这意味着更改请求的 SDLC 稍长。
另一件让我难以接受的事情是,只要我们使用 s-s-rS,我们就必须同时安装 VS 2008 和 2010,因为 VS 2010 不像 2008 那样支持设计 RDL 报告(BIDS 基本上是缩小版VS 2008:Visual Studio 2010 Reporting Services Projects?)
有了 Telerik,我们可以坚持使用 VS 2010。
评论“Telerik Reporting 也有出色的支持。开发 Telerik 报告严重依赖示例和支持论坛。”: 不,你在做一个假设。我已经创建了许多复杂的报告,而无需论坛/示例/等的任何指导 - 它是一个非常直观的工具。我相信有很多开发人员能够在不“严重”依赖论坛/示例的情况下做得很好——这不是火箭科学,而是蛋糕。
【讨论】:
syncfusion 有一个非常跨平台的 s-s-rs 查看器。【参考方案5】:Azure 不支持 s-s-rS 本地模式。
【讨论】:
【参考方案6】:在最新版本的 Telerik Reporting 中,报表设计器是报表生成器等工具,报表查看器支持 XML 报表定义 (trdx)。因此,如果您更改报告,则无需编译。
【讨论】:
以上是关于Telerik 通过 s-s-rS 报告?的主要内容,如果未能解决你的问题,请参考以下文章