【问题标题】:Telerik Reporting over SSRS?Telerik 通过 SSRS 报告?
【发布时间】:2010-11-29 11:19:02
【问题描述】:

广泛的问题是:有什么 Telerik Reporting 可以做 SSRS (2005) 做不到的事情吗?

具体说明:我们希望将当前的报告基础架构从内部 ASP.NET + Crystal(VS 版)迁移到其他平台。

忽略成本因素(我们有 Telerik 许可证),使用 Telerik 而不是 SSRS 有什么优点或缺点吗?

我们需要的关键要素是:

  • 从自定义 ASP.NET 应用程序生成报告
  • 计划报告
  • 按需或按计划通过电子邮件发送报告
  • pdf 输出,向下钻取 html
  • 在将C# 中的数据集传递给渲染引擎之前对其进行按摩

任何指出优点或限制(使用任一引擎)的经验或网站将不胜感激。

【问题讨论】:

    标签: reporting-services telerik telerik-reporting


    【解决方案1】:

    SSRS 是一个基于服务器的报告系统,而 Telerik Reporting 是一个纯粹的嵌入式报告工具。您应该将 Telerik Reporting 与 local processing mode 中的 SSRS ReportViewer 控件进行比较,而不是整个 SSRS 系统,除非您也打算使用 SSRS 服务器。我认为这是第一个要回答的问题:您应该评估使用报表服务器的利弊。

    选择嵌入式报告的通常原因是避免依赖服务器。如果您是应用程序开发人员并将您的应用程序部署到多个站点,则除了您的应用程序之外,您还必须支持多个 SSRS 安装。 Telerik 报告编译成一个 dll,您可以轻松地将其与您的应用程序一起部署。

    通常,基于服务器的 SSRS 比 Telerik 报告功能更丰富,尤其是 SSRS 2008 tablix 非常方便。我认为 Telerik Reporting 仅从 2009 年第一季度开始支持交叉表。它不支持向下钻取等交互式功能。与 SSRS 2005 相比,您应该看到 Telerik 报告的 known limitations 以及 SSRS 2008 中的 substantial improvements。另一方面,本地模式下的 ReportViewer 仅了解 RDL 2005,因此您只能使用 SSRS 2005 功能。

    现在,查看您的要求更容易了。

    从自定义 ASP.NET 应用程序生成报告

    • SSRS 服务器:为 remote processing 配置的 Microsoft ReportViewer Web 控件查看由 SSRS 服务器处理和呈现的报告
    • SSRS 本地模式:Microsoft ReportViewer 处理并呈现本地 RDL 2005 报告定义
    • Telerik:Telerik ReportViewer 处理和呈现报告。报告可以部署为嵌入所有资源(图像等)的单个 dll。这是 Telerik 报告的强项。

    计划报告

    • SSRS:服务器端功能,本地模式不支持
    • Telerik:不支持

    按需或按计划通过电子邮件发送报告

    • SSRS:服务器端功能,本地模式不支持
    • Telerik:不支持

    PDF 输出

    • SSRS:服务器模式下的各种输出格式。在本地模式下,ReportViewer 仅支持 Excel 和 PDF
    • Telerik:各种输出格式,包括 pdf

    向下钻取 html

    • SSRS 服务器:通过参数传递、报表元素中的静态 URL 向下钻取到子报表(另一个 RDL 报表定义)
    • SSRS 本地模式:静态 URL,但没有交互功能
    • Telerik:静态 URL,但没有交互功能

    在将数据集传递给渲染引擎之前,在 C# 中对数据集进行按摩

    • SSRS 服务器:支持 RDL 中定义的报表数据集,OLEDB 兼容 数据源、XML 数据、集成服务包和标准 .NET 提供程序
    • SSRS 本地模式:此引用直接来自 Lachev 的书 (p.525):

    ReportViewer 支持两种类型 本地处理模式下的数据源: 包含 ADO.NET 的数据集 DataTable 对象或可枚举 业务对象的集合。 ReportViewer Windows 窗体也 支持绑定到实例 System.Windows.Forms.BindingSource 和 到 System.Type。报告查看器网站 服务器支持绑定到实例 的 System.Web.UI.IDataSource。

    • Telerik:任何 DataSet 或 DataView 都可以在运行时设置为数据源

    鉴于您的关键要素,并假设您在公司防火墙内进行内部报告,我绝对推荐使用 SSRS 服务器。尝试获取一个 SQL Server 2008 许可证或使用 SQL 2008 Express 作为报告服务器。但是,如果您绝对必须使用嵌入式报告,Telerik 可能是更好的选择,至少在 Microsoft ReportViewer 在本地模式下支持 RDL 2008 之前是这样。这个新的 ReportViewer 应该随 Visual Studio 2010 一起提供。

    对于 SSRS,我建议阅读 Teo Lachev 的 Applied Microsoft SQL Server Reporting Services。示例章节可在book's siteGoogle Books 获得。

    Telerik Reporting 也有出色的支持。开发 Telerik 报告在很大程度上依赖于 samplessupport forums

    我还特别在embedded reportingTelerik Reporting 上写过博文。

    【讨论】:

    • 很棒的答案。我还没有深入研究您提供的所有链接,但仅前 5 个链接就有很大帮助。谢谢。
    • Telerik 报告的最新版本也支持自定义业务集合,仅供参考。
    • 这里有一些重要的事情要补充... SSRS(服务器端)是一个用于创建内部报告的重量级解决方案。在企业中它可能是有意义的,但我们在一家小商店使用它,这是一场彻头彻尾的噩梦。我们有一个多租户的情况,它并不是为了提供安全的面向客户的报告。后来我们只在客户端使用它并获得更好的结果,但即使与几年前的 Access 相比,报表生成器仍然很原始,应该很简单的任务是神秘和难以理解的,它只能在 IE 中正确呈现。小团队要小心。
    【解决方案2】:

    只是添加到mika 的关于 Telerik 交互性的回复:

    他们的reporting 现在提供了一些交互功能,即导航到子报表(钻取)、导航到书签和导航到 URL。他们目前的路线图提到,他们将在 2011 年底之前添加交互式排序和向下钻取。这将使他们的报告产品在这方面更接近 SSRS。

    【讨论】:

      【解决方案3】:

      我想添加一些关于 Telerik 解决方案的新信息。

      以前不支持的一些功能,例如 计划报告按需或按计划发送电子邮件报告 现在可作为 Telerik Report Server 的一部分使用产品。报表服务器带有上面提到的报表设计器。有关是否可用的更多信息here

      【讨论】:

        【解决方案4】:

        我们停止使用 SSRS 并选择 Telerik 的主要原因之一是 Telerik 对跨浏览器的支持要好得多。自然,在浏览器兼容性方面,人们不会期望 MS 为竞争对手的产品提供同等支持。 由于您计划使用基于 Web 的应用程序,因此这可能是一个因素。

        我第一次开始使用 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 Reporting Services Projects?)

        有了 Telerik,我们可以坚持使用 VS 2010。

        评论“Telerik Reporting 也有出色的支持。开发 Telerik 报告严重依赖示例和支持论坛。”: 不,你在做一个假设。我已经创建了许多复杂的报告,而无需论坛/示例/等的任何指导 - 它是一个非常直观的工具。我相信有很多开发人员能够在不“严重”依赖论坛/示例的情况下做得很好——这不是火箭科学,而是蛋糕。

        【讨论】:

        • syncfusion 有一个非常跨平台的 ssrs 查看器。
        【解决方案5】:

        Azure 不支持 SSRS 本地模式。

        【讨论】:

          【解决方案6】:

          在最新版本的 Telerik Reporting 中,报表设计器是报表生成器等工具,报表查看器支持 XML 报表定义 (trdx)。因此,如果您更改报告,则无需编译。

          【讨论】:

            猜你喜欢
            • 1970-01-01
            • 2018-12-18
            • 1970-01-01
            • 1970-01-01
            • 2011-07-30
            • 2013-03-19
            • 1970-01-01
            • 1970-01-01
            相关资源
            最近更新 更多