使用SSRS而不是Crystal报表生成管理表单

时间:2013-04-15 04:11:51

标签: layout reporting-services crystal-reports report

我正在考虑升级.net 2.0应用。该应用程序由某个城市的公共机构用于跟踪费用并生成报告和表格。

报告和表单是使用Crystal报告在VS2005中生成的。它们遵循明确定义的布局,就像官方文档通常那样。

我正在寻找升级应用程序的选项,我遇到的主要问题是确定如何处理水晶报表文件。 我已成功升级到VS2008,但之后的任何版本都没有CR,因此我的公司必须单独购买CR,因为客户和我的公司都很紧,我正在寻找替代品......

显而易见的是使用SSRS。我以前从未接触过它,但在玩了一会儿后,我得到的印象是它不太适合生成包含大量非表格内容和大量格式的表单。还是我错了? 似乎每条线都必须单独绘制。没有(我可以看到)准确定位行格式的方法...... 但我只是一个初学者,所以我可能会把这一切都弄错了?

如果是这种情况,CR和SSRS还有其他替代方案吗?

我在想解决方案中可能有一个单独的MVC网站项目。使用我的实体模型中的数据生成html和css中的布局,然后在(内置或不内置)Web浏览器中查看结果。我对此过于复杂吗?

我真的需要那些之前做过那种事的人的建议。

3 个答案:

答案 0 :(得分:1)

SSRS有什么用处:

  1. 与SQL Server交谈,比其他产品快得多,因为在许多情况下,当在其他程序中时,它们会更好地保留数据库恕我直言,有时会重复查询。
  2. 从数据集设计可折叠网格和图表对象。您可以拥有可以嵌套折叠值聚合的“组”,并且可以根据表达式,参数或隐藏的父集按需折叠或折叠。
  3. 用于部署的Web服务,您可以在其中部署一个或多个对象。您还可以使用C#和ReportingService.asmx Web服务为此服务编写附加组件。
  4. 您可以直接在HTML中的“表单”对象中与Web服务对话,并操纵它的输出。
  5. 您可以安排通过电子邮件发送报告,并自动将文件保存到客户端或内部用户。
  6. SSRS不适合:

    1. 除参数外,几乎没有事件驱动。您无法点击许多内容并在表单上获取其他部分进行更新。您可以执行转到其他位置,报告或网站的“操作”。但实际上你是在调用一个单独的对象,而不是再次调用同一个实例。
    2. 多层报告。除了调整工具提示之外,您无法在不攻击SSRS的情况下“悬停”报告。你可以让javascript窗口显示其他报告,但它没有出现在SSRS中。因此,您要么在报表中单击新报表或制表位,要么将鼠标悬停在工具提示中的文本和表达式之外的快速对象上。
    3. 在考虑你需要什么之前你想要什么?

      1. 我想在与我的数据库交谈时输入和导出内容 - 如果您想要非常新的话,可能会使用HTML 5或MVC4。 ASP.NET用于主动与服务器通信并接受命令IN和OUT。

      2. 我希望表单能够在页面上定期自动更新,作为登陆站点和仪表板 - 基于HTML,Java或ASP.NET的AJAX和Javascript。

      3. 我想创建服务器上存在的报告,并且可以通过Web服务调用(SSRS)在.NET中的各种平台上托管。

      4. SSRS对我来说最大的卖点是,一旦您拨打报告,它就具有可重用性。它们非常易于创建,易于配置,易于部署,如果您在调用Web服务方面有所进步,则可以获得SSRS报告其他技术中的对象,如果你愿意的话。

答案 1 :(得分:0)

有VS2010和VS2012的Crystal报告。它不是随身携带的。您可以从此处下载安装:http://scn.sap.com/docs/DOC-7824

答案 2 :(得分:0)

此时我正在执行相同的决策流程。有一个名为“Windward”的公司的.NET产品允许您在Microsoft Office中设计报表。如果您已经在MS生态系统中,或者希望您的用户设计报告而不是总是打电话给您,这可能有所帮助。

他们的模板设计工具名为AutoTag,您可以通过几行代码将这些模板部署到基于.NET的引擎。

我知道问题是关于SSRS与Crystal比较,但是你认为你应该知道还有其他选择,有些可以让生活更轻松

赖安