【问题标题】:Should I use SQL Reporting Services 2008 for my reporting engine?我应该将 SQL Reporting Services 2008 用于我的报告引擎吗?
【发布时间】:2011-03-25 01:28:42
【问题描述】:

我想使用 SQL Reporting Services 2008 来生成我的报告,但我想使用我自己的 UI 来指定报告类型、列、参数和所有内容。我希望能够采用这些标准,然后向 SSRS 发起异步请求,并将报告通过电子邮件发送给我。这可能吗?我不想在研究 SQL Reporting Services 2008 的道路上一路走下去,却发现它没有做我需要它做的事情。此外,我将有大量需要从中提取数据的数据库分区。有些报表只需要从其中一个中提取数据,但其他报表实际上可能需要跨越不同的数据库。向 SSRS 发送报告请求以指定从哪个服务器名称/数据库中提取数据时是否有可能?是否可以告诉它从多个数据库中获取数据并将其合并?谢谢。

【问题讨论】:

  • 您应该重写此问题并列出您对 Reporting Services 可能会限制您的具体担忧,然后人们可以正确衡量 Reporting Services 是否是您想要的,但如果您必须掷硬币,我很可能会说,这就是你所需要的。

标签: reporting-services


【解决方案1】:

与 Crystal Reports、ActiveReports 和其他报表生成器一样,SSRS 在每个报表背后都有两个基本元素:SQL 查询和报表布局。无论您对 SQL 使用什么工具——它可以是报表中的内联 SQL 或对存储过程的调用——它都将是同一个查询。多个数据库都可以,只要您可以预先指定它们即可。

您可以进行参数化查询,因此系统会提示用户输入相关过滤器(客户 ID、产品组、日期范围等)。

报表布局与其他工具类似——您将标签等控件拖放到报表上,并设置它们的格式。

SSRS 确实提供了许多用于分发报告的选项,包括电子邮件。您可以将报表嵌入到 ASP.Net 网页中,将其保留在报表服务器站点上供用户浏览,在凌晨运行并缓存它,这样每个用户都不必等待很长时间要运行的查询。

这是一个很棒的工具。我认为值得您尝试一下。我会等待创建自定义 UI,直到您用尽了该工具固有的可能性。

【讨论】:

    【解决方案2】:

    SSRS 在设计时并未考虑到这种情况,因此我不确定任何开箱即用的报告解决方案都会为此提供优雅的解决方案。虽然 SSRS 可以满足您的要求(以及其他要求),但它绝不是快速或容易的。您似乎正在寻找具有动态数据源的高级临时解决方案。我首先会质疑需求并确定业务场景是否真的证明了这种实现是合理的。我会权衡自定义构建解决方案与使用 BI 报告解决方案的学习曲线。您可能会发现自己构建一些东西更容易。

    【讨论】:

      【解决方案3】:

      我认为异构动态数据库混搭可能是最具挑战性的部分。

      根据您的可扩展性要求,涵盖该部分的一个地方和一个报告作者是 Access。 (鸭子!来了!)

      【讨论】:

      • 您很勇敢地建议使用 Access,但在这种情况下这并不是一个坏主意。这是一个很棒的工具,但很容易被滥用。因此,如果您知道自己在做什么,那可能就是答案。如果它不能满足长期需求,你最终会得到一个很好的概念证明。
      【解决方案4】:

      我认为您可能在某种程度上为自己的背部创建了一个杆,因为 RS 附带了一些用于创建报告的接口。

      请注意,最终产品是一个 rdl 文件,它只是 xml,所以如果你真的喜欢,你可以手动编写它们。

      支持多个数据源,但不支持将它们组合到单个控件/图表/等上,因此如果需要,您需要在报告请求之前从您的数据源之一配置自己的跨数据库功能这样做。

      【讨论】:

        猜你喜欢
        • 1970-01-01
        • 1970-01-01
        • 1970-01-01
        • 2011-12-16
        • 1970-01-01
        • 1970-01-01
        • 1970-01-01
        • 1970-01-01
        • 1970-01-01
        相关资源
        最近更新 更多