企业报告解决方案
行业内的企业报告有哪些选择? 我目前正在使用 SSRS 2005,并且知道随着新版本的 MSSQL 推出了另一个版本。
但是,现在似乎也是调查市场,看看还有什么的好时机。
你遇到了什么? 你喜欢/不喜欢它吗? 为什么?
谢谢。
What options are there in the industry for enterprise reporting? I'm currently using SSRS 2005, and know that there is another version coming out with the new release of MSSQL.
But, it seems like it might also be a good time to investigate the market to see what else is out there.
What have you encountered? Do you like it/dislike it? Why?
Thank you.
如果你对这篇内容有疑问,欢迎到本站社区发帖提问 参与讨论,获取更多帮助,或者扫码二维码加入 Web 技术交流群。
绑定邮箱获取回复消息
由于您还没有绑定你的真实邮箱,如果其他用户或者作者回复了您的评论,将不能在第一时间通知您!
发布评论
评论(14)
有许多非常出色的企业报告解决方案。 四大巨头(BO/Crystal、MS SRSS、Cognos、Oracle)都涵盖了基本报告功能。 您确实需要评估哪些核心功能对您来说最重要,以及您的环境中的主要架构是什么。
BI 市场的整合使得环境问题变得更加重要。 如果你有Oracle企业,不妨使用Oracle BI。 这同样适用于 SAP/BO、IBM/Cognos 和 Microsoft。 特别是当您正在做出新的 BI 决策时。
最后,如果您是 OSS 商店或者您希望避免与主要 BI 参与者相关的一些许可费用,那么有许多开源解决方案(BIRT、Jasper、Pentaho)是有意义的。
There are a number of really great solutions out there for Enterprise Reporting. Within the big four (BO/Crystal, MS SRSS, Cognos, Oracle) the basic reporting functions are all covered. You really need to evaluate what core functionality is most important to you and what the pre-dominant architecture in your environment is.
The consolidation within the BI market has made the environment issue all the more relevant. If you have an Oracle enterprise, you may as well use Oracle BI. The same applies for SAP/BO, IBM/Cognos, and Microsoft. Particularly if you are making a new BI decision.
Finally, there are a number of Open Source solutions (BIRT, Jasper, Pentaho) that make sense if you are an OSS shop or if you are looking to avoid some of the licensing fees associated with the major BI players.
你应该尝试一下 BIRT。 BIRT 是开源的,因此您可以免费开始。 它有一个很好的图形设计师。 您可以在 http://www.birt-exchange.com。 BIRT 项目由 Actuate Corp 赞助,当您需要调度、安全集成、电子邮件通知等时,Actuate Corp 提供商业服务器,用于将 BIRT 部署到企业。商业版本还将 AJAX 与 BIRT 查看器混合,以实现更多的最终用户交互性,并提供广告-通过浏览器进行 BIRT 报告。
You should try BIRT. BIRT is open source so you can start for free. It has a nice graphical designer. You can see some videos of how easy to design BIRT reports at http://www.birt-exchange.com. The BIRT project was sponsored by Actuate Corp who offers commercial servers for deploying BIRT to the Enterprise when you need scheduling, security integration, email notifications, etc. The commercial version also mixes AJAX with the BIRT viewer for more end-user interactivity and offers ad-hoc BIRT reporting through a browser.
我们现在正在实施 Cognos,我真的认为它是一个相当强大的工具。 ETL 工具看起来相当简单且易于使用,前端也相当容易管理和设置。 我在框架模型和数据建模方面没有太多经验,但我们的报表设计师似乎真的很喜欢它。
We are in the middle implementing Cognos right now, and I really think it's a fairly robust tool. The ETL tool seems pretty straightforward and easy to use and the front end is fairly easy to administer and set up. I don't have much experience in the framework models and the data modeling stuff, but our report designer guy really seems to like it.
我已经使用 SSRS 一段时间了……看着我的同事说,SSRS 看起来比 Crystal 更容易完成。 我从未使用过 Crystal,所以我无法告诉你哪个更好,但我明显感觉到 MS 试图将 SSRS 赶出大门。
最大的弱点:
手动吗? 嗯? 我可以通过选择所有受影响的字段然后设置回颜色、前景色等来“换肤”。但是没有地方(至少我找不到)可以一键换肤。
说明书,没地方能找到
实现自定义皮肤。 会
很高兴只是设置一些东西
(就像 HTML 的 CSS 一样)然后就可以了
链接到它。 工具应该帮助您减少工作量,而不是增加工作量。
优点:
我的2分钱,希望这对你有帮助。
I've been using SSRS for a while now... and coworkers who look over my shoulder say it looks to be MUCH easier to do the SSRS thing than the Crystal. I've never used Crystal, so I can't tell you which is better, but I get the distinct impression that MS tried to rush SSRS out the door.
Largest weaknesses:
it manually? huh? I can "skin"things by selecting all the affectedfields and then setting back colors,fore colors, etc. But nowhere (atleast no where I can find) can youskin something with 1 click.
manual, there's no where I can find
to implement a custom skin. Would
be nice to just set up something
(like CSS for HTML) and then just
link to it. Tools should help you by reducing your effort rather than add to said effort.
Strengths:
My 2 cents, hope this helps you.
“纯 Java”解决方案是 i-net Clear Reports(又名 i-net Crystal-Clear) 。
A "pure Java" solution is i-net Clear Reports (aka i-net Crystal-Clear).
Business Objects 的 Crystal Reports 似乎是一个受欢迎的选择。
我自己从未在其中写过任何报告,但我团队中的其他人有时很难让更复杂的报告发挥作用。
它也可能有点贵,具体取决于您的预算。
Crystal Reports by Business Objects seems to be a popular choice.
I never wrote any reports in it myself, but others in my team who did sometimes struggled getting the more complex reports to work.
It also might be a bit pricey, depending on your budget.
最全面的解决方案之一是 Cognos。
不喜欢:你不会相信它有多少张 CD……它太大了。
One of the most comprehensive solutions is Cognos.
Dislike: You wouldn't believe how many CDs it ships in... its huge.
我很惊讶没有人提到 Microstrategy。 我们做了相当多的数据仓库 (11TB) 工作,微策略在生成 SQL 方面做得很好,因此业务用户可以在不打扰我们的情况下获取数据。 然而,这是一个非常昂贵的解决方案。 如果您不需要临时功能并决定使用 crystal,我建议您查看他们的 VS2005 或 Eclipse 插件,这些插件“可用于生产”。
I'm suprised no-one has mentioned Microstrategy. We do quite a bit of datawarehouse (11TB) work and microstrategy does a great job or generating SQL so the business users can get the data without bothering us. However it is a very expensive solutuion. if you don't need ad-hoc abilities and decide on crystal i recommend lookin into their VS2005 or Eclipse plugins which are "fre for production use".
Henry Nordstrom 在 SAP 社区网站的博客中对各种可用的报告工具给出了非常好的评价。 尽管他从 SAP 使用的角度做了同样的事情,但事实也适用于其他任何事情。
亨利的SAP 开发者网络上的博客
In his blog at SAP Community Website, Henry Nordstrom, has given a very good evaluation of various reporting tools available. Though he has done the same from SAP usage point of view, the facts are applicable to anything else also.
Henry's Blog on SAP Developer Network
我很惊讶没有人提到 OpenReports 和 Jasper 报告模板。 我知道它不完全是企业级的,但它非常强大,我认为与水晶报表相当。 我使用 iReport 创建类似 CR 的报告。 OpenReports 还支持 JXLS,可以非常轻松地使用它来创建基于 Excel 的报告。
http://oreports.com/
http://jasperforge.org/projects/ireport
I'm surprised nobody mentioned OpenReports with Jasper report templates. I know it's not quite enterprise level, but it's quite powerful and I think on par with Crystal Reports. I use iReport to create CR-like reports. OpenReports also supports JXLS which is very easy to use to create Excel-based reports.
http://oreports.com/
http://jasperforge.org/projects/ireport
如果您想要一个可与您想要使用的任何报表设计器配合使用的企业级报表服务器,请查看通用报表服务器 来自 VersaReports.com。 它开箱即用,支持 Crystal、DevExpress、Telerik 和 ActiveReports,并提供 API(如果您想支持其他报表设计器)。
If you want an enterprise-class report server that works with ANY report designer you want to use, check out Universal Report Server from VersaReports.com. Out-of-the-box it supports Crystal, DevExpress, Telerik, and ActiveReports, and provides an API if you want to support another report designer.
拥有使用 CR 和 SSRS 的经验是我认为的要点:
CR 让您可以非常快速地开发报告。 只要简单就行。 如果它变得稍微复杂一点,试图让它做你想做的事情就会变得可疑。 根据示例,您的最大层次结构仅限于 2 个子报表。 当您的子报表需要必须在主报表等中更改的参数时,这会变得很奇怪。有很多解决方法,但有时它们很糟糕。
报告的布局也基本固定; 您必须将数据和信息放入特定部分(页眉/页脚、详细信息/报告页脚/页眉)。 这非常有用,因为它可以帮助您正确显示跨多个页面的数据。
它还具有相当完整的功能集,可用于操作财务数据等。SSRS
在报告编辑方面更加灵活。 它的报告向导允许您基本上在所见即所得环境中创建报告,它允许您创建多个子报告,以便您可以轻松地在一页中显示多个数据集。 它允许您连接 .NET 程序集来执行复杂的数据操作/计算。 然而,以固定的方式正确显示报告可能会很困难,您通常必须努力让所有内容都按您想要的方式显示。
水晶报表的价格是$$$。
如果我没记错的话,SSRS 现在“免费”捆绑在 SQL Server Enterprise 版本中。 当然,你可能会以整个套餐的价格来支付它,我想这是微软尝试将其推向企业领域的方式。
Having experiences with both (CR and SSRS) here is the lowdown of what I think:
CR lets you develop a report very fast. As long as its simple. If it gets slightly complicated, it gets fishy trying to make it do what you want. Per example you are limited to a max hierarchy of 2 subreports. It gets weird when you have subreports that need parameters that must be altered in a main report, etc. Plenty of workarounds but sometime they simply suck.
Also the report layout is basically fixed; you have to put your data and info into the specific sections (Page Header/Footer,Details/Report Footer/Header). This is rather helpful as it helps you correctly display data that spans on multiple pages.
Also it has a fairly complete set of functions that can be used to manipulate financial data and etc.
SSRS is more flexible around the report editing. Its report wizard allows you to basically create a report in a WYSIWYG environnement, it allows you multiple subreports so you can easily display multiple datasets in one page. It allows you to connect .NET assemblies to do complicated data manipulation/calculation. However, it can get hard to properly display your reports in a fixed way, you often have to struggle to get everything displayed as you want it.
Crystal Reports is $$$.
SSRS, if I remember correctly is now bundled "free" in the SQL Server Enterprise edition. Of course you probably pay for it in the price of the whole package, I guess it's MS way to try and push it in corporate land.
我使用过 Cognos Series 7、Cognos Series 8、Crystal Reports、Business Objects XI R2 WebIntelligence、Reporting Services 2000、Reporting Services 2005 和 Reporting Services 2008。以下是我对所学知识的反馈:
Reporting Services 2008 /2005/2000
优点
成本:如果您使用 MS SQL Server 作为后端,这是最便宜的企业商业智能解决方案。 如果您加入 SSIS,您还可以免费获得一流的 ETL 解决方案。
最灵活:我用过的最灵活的报告解决方案。 它始终满足我所有的业务需求,尤其是在其最新版本中。
易于扩展:我们最初将其用作支持大约 20 个用户的部门解决方案。 我们最终将其扩展到覆盖数千名用户。 尽管远程数据中心的虚拟服务器质量非常差,但我们仍能够扩展到大约 50-100 个并发用户请求。 在咨询工作的良好硬件上,我能够将其扩展到更大的并发用户组,没有任何问题。 我还看到过在不同国家部署多个 SSRS 服务器并使用 SSIS 同步后端数据的实现。 这使得几乎无需额外成本就能以分布式方式实现稳定的性能。
源代码控制集成:当我与商业智能团队一起开发报告时,这对我来说至关重要。 我使用过的任何其他 BI 套件都没有为此提供开箱即用的解决方案。 我使用的每个其他平台要么需要购买第 3 方加载项,要么需要您在单独的开发、测试和生产环境之间推广报告。
分析服务:我喜欢 SSRS 和 SSIS 之间与分析服务的紧密集成。 我读过有关 Oracle 和 DB2 报价包括为 OLAP 多维数据集安装 SQL Server 2005 Analysis Services 服务器的实例。
可发现性:没有任何系统比 SSRS 具有更好的可发现性。 SSRS 上的书籍、论坛、文章和代码站点比我使用过的任何其他 BI 套件都多。 如果我需要弄清楚如何在 SSRS 中做某事,我几乎总能花几分钟或几个小时找到它。
缺点
SSRS 2005/2000 需要 IIS:旧版本的 SSRS 需要在数据库服务器上安装 IIS。 当我在一家大银行工作时,从内部控制的角度来看,这是不允许的。 我们最终在未经 IT 运营部门授权批准的情况下实施了 SSRS,并且后来基本上请求宽恕。 这在 SSRS 2008 中不是问题,因为不再需要 IIS。
报表生成器:SSRS 2000 中不存在基于 Web 的报表生成器。SSRS 中基于 Web 的报表生成器2005 很难用,而且功能不够。 SSRS 2008 中基于 Web 的报表生成器肯定更好,但对于大多数业务用户来说仍然太难使用。
数据库偏差:它与 Microsoft SQL Server 配合使用效果最佳。 它不适用于 Oracle、DB2 和其他后端。
Business Objects XI WebIntelligence
优点
易于使用:对于普通非 BI 最终用户来说,用于开发临时报告最简单。
易于使用
与数据库无关:如果您希望使用 Oracle、DB2 或其他数据库后端,这绝对是一个很好的解决方案。
与数据库无关:如果
高性能:性能非常快,因为大多数页面导航基本上都是文件系统操作而不是数据库调用。
高性能:性能非常快,因为
缺点
成本:第一个问题。 如果我想将 Business Objects 的实施从 30 个用户扩大到 1000 个用户,那么 SAP 一定会向您收取数十万美元的费用。 这仅适用于 Business Objects 许可证。 再加上您还需要数据库服务器许可证,您现在谈论的是一个非常昂贵的系统。 当然,这可能是获取 Business Objects 的个人理由:如果您可以说服管理层购买非常昂贵的 BI 系统,那么您可能可以说服管理层为大型 BI 部门付费。
无源代码控制:缺乏开箱即用的源代码控制集成会导致意外修改和部署旧报告定义时出现错误。 解决这个问题的“解决方法”是在环境之间提升报告——我不喜欢这样做,因为它会减慢报告开发速度并引入环境差异变量。
不支持 HTML 电子邮件:您无法通过计划发送 HTML 电子邮件。 我经常在 SSRS 中这样做。 您可以购买昂贵的第 3 方加载项来执行此操作,但您不必为此功能花费更多钱。
模型偏差:报告开发需要宇宙——基本上是一个数据模型。 这对于临时报告开发来说很好,但我更喜欢使用存储过程来完全控制性能。 我还喜欢构建平面表,然后对其进行查询,以避免在报告运行时进行成本高昂的复杂连接。 必须构建仅包含仅由一个报告使用的平面表的 Universe 是愚蠢的。 您不必仅仅为了查询表而构建模型。 如果不破坏 SQL 覆盖,也不支持开箱即用的存储过程支持。
参数支持差:BOXI WebIntelligence 报告中的参数支持很糟糕。 尽管我喜欢一般业务用户的元数据刷新选项,但在尝试设置计划时它不够强大。 我几乎总是必须克隆报告并稍微更改过滤器,这会导致不必要的报告定义重复。 SSRS 轻而易举地击败了这一点,特别是因为您可以使值和标签具有不同的值 - 与 BOXI 不同。
报告链接支持不足:我想将一个报告定义存储在中央文件夹中,然后为其他用户创建链接报告。 但是,我很快发现最终用户需要对父对象拥有完全权限才能在自己的文件夹中使用该对象。 这违背了使用链接报表对象的全部目的。 给我 SSRS!
单独的 CMC:为什么您必须启动另一个应用程序才能管理对象安全? 更糟糕的是,为什么 CMC 和 InfoSys 之间的功能不相同? 例如,如果您想要设置计划报告以在尝试失败时重试,则可以在 CMC 中指定重试次数和重试间隔。 但是,您无法在 InfoSys 中执行此操作,也看不到该信息。 InfoSys 允许您设置事件驱动的计划,而 CMC 不支持此功能。
Java 版本依赖性:BOXI 在最终用户计算机上运行良好,只要它们运行与服务器相同版本的 java。 然而,一旦您的计算机上安装了较新版本的 java,事情就会开始出现问题。 我们在 BOXI R2 服务器(默认的 java 客户端)上运行 Java 1.5,公司中几乎每个人都在使用 Java 1.6。 如果您使用 Java 1.6,则提示可能会冻结您的 IE 和 FoxFire 会话,或者使您的报表生成器意外崩溃。
可发现性弱:除了 BOB(业务对象板)之外,Internet 上没有太多关于解决业务对象问题的信息。
可
Cognos Series 8
PROS
易于使用:虽然 BOXI 更容易用于为一般业务用户编写简单的报告,但 Cognos 在该领域排名第二。
与数据库无关:与 BOXI 一样,如果您希望使用 Oracle、DB2 或其他数据库后端,这绝对是一个很好的解决方案。
与数据库无关:与 BOXI 一样,
FrameWork Manager:这绝对是一流的元数据存储库。 BOXI 的宇宙构建者希望它能有一半好。 该工具非常适合跨开发、测试和生产环境推广软件包。
缺点
成本:与 Business Objects 相同的问题。 类似的成本结构。 也有类似的数据库许可要求。
无源代码控制:与业务对象相同的问题。 我不知道有任何第三方工具可以解决此问题,但它们可能存在。
模型偏差:与业务对象相同的问题。 不过,对 FrameWork Manager 中的存储过程有更好的支持。
参数支持差:与业务对象相同的问题。 如果您可以使用 Java 编写代码,则可以更好地支持创建提示页面。 但是,当用户单击后退按钮返回提示页面时,会出现错误行为。 SSRS 轻而易举地解决了这个问题。
错误处理不充分:Cognos 中的错误消息几乎无法破译。 它们通常会为您提供一个长负数和堆栈转储作为错误消息的一部分。 我不知道有多少次我们通过从头开始重建报告来“解决”这些错误消息。 由于某种原因,很容易损坏报表定义。
无法发现:很难找到有关如何解决问题或在 Cognos 中实现功能的任何答案。 面向 Internet 的网站对这些产品缺乏足够的社区支持。
正如您从我的回答中可以猜到的那样,我相信 Microsoft 的 BI 套件是市场上最好的平台。 然而,我必须声明,我读过的大多数有关 BI 套件比较的文章通常不会对 Microsoft 的产品以及 SAP 的 Business Objects 和 Cognos 的 Series 8 产品进行评价。 此外,我还看到 Microsoft 在两家不同公司的 BI 套件内部审查中排名垫底,这些评估是在现任 CIO 审查之后进行的。 不过,在这两种情况下,似乎一切都归结为希望被视为一个重要部门,证明巨额运营预算是合理的。
I've used Cognos Series 7, Cognos Series 8, Crystal Reports, Business Objects XI R2 WebIntelligence, Reporting Services 2000, Reporting Services 2005, and Reporting Services 2008. Here's my feedback on what I've learned:
Reporting Services 2008/2005/2000
PROS
Cost: Cheapest enterprise business intelligence solution if you are using MS SQL Server as a back-end. You also have a best-in-class ETL solution at no additional cost if you throw in SSIS.
Most Flexible: Most flexible reporting solution I've ever used. It has always met all my business needs, particularly in its latest incarnation.
Easily Scalable: We initially used this as a departmental solution supporting about 20 users. We eventually expanded it to cover a few thousand users. Despite having a really bad quality virtual server located in a remote data center, we were able to scale to about 50-100 concurrent user requests. On good hardware at a consulting gig, I was able to scale it to a larger set of concurrent users without any issues. I've also seen implementations where multiple SSRS servers were deployed in different countries and SSIS was used to synch the data in the back-ends. This allowed for solid performance in a distributed manner at almost no additional cost.
Source Control Integration: This is CRITICAL to me when developing reports with my business intelligence teams. No other BI suite offers an out-of-box solution for this that I've ever used. Every other platform I used either required purchasing a 3rd party add-in or required you to promote reports between separate development, test, and production environments.
Analysis Services: I like the tight integration with Analysis Services between SSRS and SSIS. I've read about instances where Oracle and DB2 quotes include installing a SQL Server 2005 Analysis Services server for OLAP cubes.
Discoverability: No system has better discoverability than SSRS. There are more books, forums, articles, and code sites on SSRS than any other BI suite that I've ever used. If I needed to figuire out how to do something in SSRS, I could almost always find it with a few minutes or hours of work.
CONS
IIS Required for SSRS 2005/2000: Older versions of SSRS required installing IIS on the database server. This was not permissible from an internal controls perspective when I worked at a large bank. We eventually implemented SSRS without authorized approval from IT operations and basically asked for forgiveness later. This is not an issue in SSRS 2008 since IIS is no longer required.
Report Builder: The web-based report builder was non-existant in SSRS 2000. The web-based report builder in SSRS 2005 was difficult to use and did not have enough functionality. The web-based report builder in SSRS 2008 is definitely better, but it is still too difficult to use for most business users.
Database Bias: It works best with Microsoft SQL Server. It isn't great with Oracle, DB2, and other back-ends.
Business Objects XI WebIntelligence
PROS
Ease of Use: Easiest to use for your average non-BI end-user for developing ad hoc reports.
Database Agnostic: Definitely a good solution if you expect to use Oracle, DB2, or another database back-end.
Performant: Very fast performance since most of the page navigations are basically file-system operations instead of database-calls.
CONS
Cost: Number one problem. If I want to scale up my implementation of Business Objects from 30 users to 1000 users, then SAP will make certain to charge you a few hundred thousands of dollars. And that's just for the Business Objects licenses. Add in the fact that you will also need database server licenses, you are now talking about a very expensive system. Of course, that could be the personal justification for getting Business Objects: if you can convince management to purchase a very expensive BI system, then you can probably convince management to pay for a large BI department.
No Source Control: Lack of out-of-the-box source control integration leads to errors in accidentally modifying and deploying old report definitions by mistake. The "work-around" for this is promote reports between environments -- a process that I do NOT like to do since it slows down report development and introduces environmental differences variables.
No HTML Email Support: You cannot send an HTML email via a schedule. I regularly do this in SSRS. You can buy an expensive 3rd party add-in to do this, but you shouldn't have to spend more money for this functionality.
Model Bias: Report development requires universes -- basically a data model. That's fine for ad hoc report development, but I prefer to use stored procedures to have full control of performance. I also like to build flat tables that are then queried to avoid costly complex joins during report run-time. It is silly to have to build universes that just contain flat tables that are only used by one report. You shouldn't have to build a model just to query a table. Store procedure support is also not supported out of the box without hacking the SQL Overrides.
Poor Parameter Support: Parameter support is terrible in BOXI WebIntelligence reports. Although I like the meta-data refresh options for general business users, it just isn't robust enough when trying to setup schedules. I almost always have to clone reports and alter the filters slightly which leads to unnecessary report definition duplication. SSRS beats this hands down, particularly since you can make the value and the label have different values -- unlike BOXI.
Inadequate Report Linking Support: I wanted to store one report definition in a central folder and then create linked reports for other users. However, I quickly found out end-users needed to have full rights on the parent object to use the object in their own folder. This defeated the entire purpose of using a linked report object. Give me SSRS!
Separate CMC: Why do you have to launch another application just to manage your object security? Worse, why isn't the functionality identical between CMC and InfoSys? For example, if you want to setup a scheduled report to retry on failed attempts, then you can specify the number of retries and the retry interval in CMC. However, you can't do this in InfoSys and you can't see the information either. InfoSys allows you to setup event-driven schedules and CMC does not support this feature.
Java Version Dependency: BOXI works great on end-user machines so long as they are running the same version of java as the server. However, once a newer version of java is installed on your machine, things starts to break. We're running Java 1.5 on our BOXI R2 server (the default java client) and almost everyone in the company is on Java 1.6. If you use Java 1.6, then prompts can freeze your IE and FoxFire sessions or crash your report builder unexpectedly.
Weak Discoverability: Aside from BOB (Business Objects Board), there isn't much out there on the Internet regarding troubleshooting Business Objects problems.
Cognos Series 8
PROS
Ease of Use: Although BOXI is easier to use for writing simple reports for general business users, Cognos is a close 2nd in this area.
Database Agnostic: Like BOXI this is definitely a good solution if you expect to use Oracle, DB2, or another database back-end.
FrameWork Manager: This is definitely a best-in-class meta-data repository. BOXI's universe builder wishes it was half as good. This tool is well suited to promoting packages across Development, Test, and Production environments.
CONS
Cost: Same issue as Business Objects. Similar cost structure. Similar database licensing requirements as well.
No Source Control: Same issue as Business Objects. I'm not aware of any 3rd party tools that resolve this issue, but they might exist.
Model Bias: Same issue as Business Objects. Has better support for stored procedures in FrameWork Manager, though.
Poor Parameter Support: Same issue as Business Objects. Has better support for creating prompt-pages if you can code in Java. Buggy behavior, though, when users click the back-button to return to the prompt-page. SSRS beats this out hands-down.
Inadequate Error Handling: Error messages in Cognos are nearly impossible to decipher. They generally give you a long negative number and a stack dump as part of the error message. I don't know how many times we "resolved" these error messages by rebuilding reports from scratch. For some reason, it is pretty easy to corrupt a report definition.
No Discoverability: It is very hard to track down any answers on how to troubleshoot problems or to implement functionality in Cognos. There just isn't adequate community support in Internet facing websites for the products.
As you can guess from my answer, I believe Microsoft's BI suite is the best platform on the market. However, I must state that most articles I've read on comparisons of BI suites usually do not rate Microsoft's offering as well as SAP's Business Objects and Cognos's Series 8 products. Also, I've also seen Microsoft come out on the bottom in internal reviews of BI Suites in two separate companies after they were review by the reigning CIO's. In both instances, though, it seemed like it all boiled down to wanting to be perceived as a major department that justified a large operating budget.
我想做出两项贡献。 一种是非常消极的(CR 是垃圾),另一种是非常积极的(SSRS 是独立的支持存储并且免费提供)。
附带说明一下,如果您修改了答案,请添加一条评论,解释为什么您认为答案是错误的或适得其反的,除非其他人已经说过同样的话。 即使如此,简单的“如上所述”也会有所帮助。
Crystal Reports 是垃圾
Crystal Reports 是对开发社区的侮辱。 简单的对话框调整大小错误需要很长时间才能修复,但在十年和六个主要版本中一直没有得到纠正,所以我真的怀疑是否曾尝试过解决这些棘手的问题。 正如此 SQL 所示,Crystal Reports 非常不可信。
该语句在本应产生零的情况下却产生了结果 1。 这是 Crystal Reports SQL 引擎核心中的一个可重复的差一错误。
对 CR 的支持同样令人沮丧,多年前就已转移到海外。 如果你支付 200 美元打一个支持电话,一个听不懂的外国人会误解你的问题并侮辱你的智商,直到你放弃,此时他会——因为你选择放弃——宣布电话已解决。
如果真的这么糟糕为什么它如此受欢迎? 它不受欢迎。 它非常不流行。 它通过出色的营销获得了立足点。 管理层认为光鲜亮丽的广告有很大希望,而且由于 CR 已经存在了很长时间,他们认为这都是真的。 就像草坪上的宾迪斯(澳大利亚刺草)一样,一旦安装,几乎不可能清除它。 对于经理来说,承认自己无能是一个糟糕的职业举动。 当管理者缺乏做出决策的技术专业知识时,他们不会让技术人员做出决策,而是依赖先例并重复同行的错误。 他们也没有意识到,如果他们想真正使用网络交付的东西,他们就需要获得服务器许可证。 此外,长寿意味着很容易找到有 CR 经验的人。
对于详细信息和开怀大笑,我推荐这些链接。
或者只需在谷歌中输入“水晶报告糟透了”即可。 为了获得平衡的视角,还可以尝试“水晶报告岩石”。 别担心,这不会占用您太多时间。 除了他们自己的营销炒作之外,没有任何正面评价。
现在来说一些更积极的事情。
SQL Reports 实际上是免费的。
您可以将其作为带有高级服务的 SQL Express 的一部分免费安装。 您还可以安装 .NET 2.x,它附带了适用于主要数据库提供商的 ADO.NET 驱动程序以及通用 OLEDB 和 ODBC 支持。
由于 SSRS 使用 ADO.NET,这意味着您可以将 SSRS 连接到可以连接 ADO.NET 的任何对象,即几乎任何对象。
适用于随 SQL Express 提供的 SSRS 的许可证条款要求将其作为 SQL Express 的一部分进行部署和安装。 他们没有透露报告从哪里获取数据。
SQL Express 有限制,但附带的 SSRS 没有这样的限制。 如果您的数据是由另一个数据库引擎提供的,您可以支持该引擎许可支持的用户数量。 不要误会我的意思,在工作中我们有数十个 MS SQL Server 的许可副本。 我只是说,您可以针对您选择的后备存储使用 SSRS,而无需为其寻找或证明预算合理。 您将缺少的是日程安排和订阅支持。 当我说编写一项填补空白的服务并不困难时,我是根据经验说的。
SSRS 履行 CR 做出的每一项承诺。 易于使用,很好地支持用户DIY,有一个概念上类似于CR BO但工作正常的模式抽象工具,高性能,可调度,易于使用,稳定,灵活,易于扩展,可以交互或编程控制。 在 2008 版中,它们甚至支持格式丰富的基于流程的模板(套用信函的邮件合并)。
这是我在二十年的软件开发经历中所见过的最好的报告解决方案,平台范围从大型机到迷你机再到微型机。 它勾选了我能想到的每一个框,并且只有一个我能记得的深刻弱点 - 布局模型不支持相对于页面底部定位,唯一的解决方法是在已知高度页面上相对于页面顶部定位。
它没有解决异构数据提供等问题,但恕我直言,这些问题可以而且应该在报告本身之外解决。 许多数据仓库解决方案(例如SSIS)都提供了解决此类问题的工具,并且在报表引擎中放置半途而废的重复功能是荒谬的。
让你的尖头发老板做出明智的决定
告诉他,考虑到 Crystal Reports 有问题的历史和不受开发人员欢迎,选择 Crystal Reports 是一个勇敢的举动,这标志着他是一个敢于冒险的人。
有些老板太愚蠢了,他们会认为这是一件好事,但和他们在一起你无论如何都注定失败。
I'd like to make two contributions. One is very negative (CR is rubbish) and the other is very positive (SSRS is backing store independent and available at no cost).
On a side note, if you mod an answer down then add a comment explaining why you think the answer is wrong or counterproductive, unless someone else already said the same thing. Even then, a simple "as above" would be helpful.
Crystal Reports is rubbish
Crystal Reports is an insult to the development community. Simple dialog resize bugs that would be the work of moments to fix have remained uncorrected over ten years and six major releases, so I really doubt that any attempt is ever made to address the tough stuff. Crystal Reports is profoundly untrustworthy, as this SQL demonstrates.
This statement produces a result of one when it should produce zero. This is a repeatable off-by-one error in the heart of the Crystal Reports SQL engine.
The support for CR is equally dismal, having been moved offshore many years ago. If you cough up $200 for a support call, an unintelligible foreigner will misunderstand your question and insult your intelligence until you give up, at which point he will - because you have chosen to give up - declare the call resolved.
If it's really this bad why is it so popular? It isn't popular. It's very un popular. It gets a toe-hold via great marketing. Management types see glossy adverts promising much, and because CR has been around so long they assume it's all true. Much like bindis (Australian prickle weed) in your lawn, once installed it's nearly impossible to get rid of it. Admitting to incompetence is a bad career move for a manager. When managers lack the technical expertise to make a decision, rather than allow a technical person to make the decision they fall back on precedent and repeat the mistakes of their peers. They also fail to realise that if they want to actually use the web delivery stuff they are up for a server licence. Also, longevity means it's easy to find people with CR experience.
For the details and a good laugh I recommend these links.
Or just type "crystal reports sucks" into Google. For a balanced perspective, also try "crystal reports rocks". Don't worry, this won't take much of your time. There are no positive reviews outside their own marketing hype.
Now for something more positive.
SQL Reports is effectively free
You can install it at no charge as part of SQL Express with Advanced Services. You can also install .NET 2.x which brings with it ADO.NET drivers for major database providers as well as generic OLEDB and ODBC support.
Since SSRS uses ADO.NET, this means you can connect SSRS to anything to which you can connect ADO.NET, ie just about anything.
The terms of the licence applying to SSRS as supplied with SQL Express require it to be deployed and installed as part of SQL Express. They don't have anything to say about where reports get their data.
SQL Express is limited, but the accompanying SSRS has no such limitations. If your data is provided by another database engine you can support as many users as that engine is licensed to support. Don't get me wrong, at work we have dozens of licensed copies of MS SQL Server. I'm just saying that you can use SSRS against the backing store of your choice, without having to find or justify budget for it. What you will be missing is scheduling and subscription support. I speak from experience when I say that it is not profoundly difficult to write a service that fills the gap.
SSRS fulfils every promise that CR makes. Easy to use, good support for user DIY, has a schema abstraction tool conceptually similar to CR BO but which works properly, high performance, schedulable, easy to use, stable, flexible, easy to extend, can be controlled interactively or programmatically. In the 2008 edition they even support rich-formatted flow-based templates (mail merge for form letters).
It is the best reporting solution I have ever seen in twenty years of software development on platforms ranging from mainframes through minis to micros. It ticks every box I can think of and has only one profound weakness I can recall - the layout model doesn't support positioning relative to page bottom and the only workaround is positioning relative to page top on a known height page.
It does not address problems like heterogeneous data provision, but IMHO these can and should be addressed outside of the report proper. Plenty of data warehousing solutions (such as SSIS) provide tools for solving such problems, and it would be absurd to put a half-assed duplicate capability in the report engine.
Getting a sane decision out of your pointy-haired boss
Tell him you think that given its problematic history and unpopularity with developers, choosing Crystal Reports is a courageous move that marks him as a risk-taker.
Some bosses are so stupid they will think this is a good thing but with them you are doomed anyway.