2009-09-02 81 views
1

我试图弄清楚什么是“最好的”(读:“你的首选方法”)的方式来生成的SQL Server Reporting Services报表数据集(或2005/2008):在SSRS中生成数据集的首选方法是什么?

  • 在报告查询
  • 存储过程
  • 查看

但不仅仅是选择上述一多,你为什么要使用特定的方法是什么?另外,请包括您的观点(开发人员/ DBA /等)。

谢谢。

回答

1

存储过程。我倾向于为参数和报告数据编写存储过程。通过使用参数数据集的存储过程,他们可以轻松地在报告之间共享。对于报告数据,我希望确保在报告中的数据和出现的格式之间划清界限。通过保持这一点,我的经验更容易测试和推广报告生产。

此外,我发现存储过程比查看或报告中的查询更容易管理和排除故障。

1

你不应该打扰报告中的查询,他们几乎可以在那里玩和练习。但是你很难得到一个很好的报告,直接在RS中编写查询。为什么......有一件事,很多sprocs不仅可以用于应用方面,而且还可以用于报告方面。您的应用程序可能有多种存储过程用于填充级联的下拉列表/组合框(一个涉及另一个)。您也可能需要此功能。使用存储过程,您可以从报告或应用程序向存储过程发出调用。当存储过程发生变化时(如果需要的话),你就可以,因为你对应用程序存储过程的更新也会更新你的报告的存储过程。

我的投票肯定是存储过程。

1

我一直在MS Reporting Services工作了大约一整年。我发现用这个系统生成报告的最好方法是通过存储过程从数据访问层运行查询。

如果你发现如果你这样做,你将所有返回的数据集放在一个地方。它使管理更容易。所有的数据库输出都是从相同的位置控制的。

偏离主题,但我也建议您在内存中生成RDLC文件。我们有大约100种不同的报告类型。我们管理一个ReportEngine类,而不是管理一堆RDLC文件。 ReportEngine类基本上生成一堆不同的报告类型。这是相当先进的,但结果是值得的。使用表生成RDLC文件的源代码:C#VB.NET

相关问题