1

我需要一个通过我的 C# 应用程序同时处理屏幕和打印报告的工具。

我正在寻找简单、标准和强大的功能。

我需要能够让用户能够使用我自己的 GUI 选择要显示的列、格式化等...并根据他们的选择动态构建报告。Crystal 不适合这里的账单,因为不能动态添加列(并且不能动态调整列宽)。

我正在考虑在我的应用程序中将 HTML 与 WebBrowser 控件一起使用,但我对打印和打印预览几乎没有控制权。

另一种选择是转到 .NET 3.5(我使用的是 2.0)并将 XAML 与流文档一起使用。

你会用什么?

4

6 回答 6

6

我们使用 SQL 报告服务。HTML 报告有它们的位置,但您无法对格式进行太多控制。

SQL 报告服务摘要:

优点:
基本版本是免费的
包含在 SQL express 中
许多导出选项 pdf、html、csv 等
可以使用许多不同的数据源
公开各种方法的 Web 服务
SQL 标准版包含一个报表构建器组件,允许用户创建和共享自己的报表
很多功能查询格式等
调度选项
可扩展性 导入 .net 框架 dll 以实现自定义功能
熟悉的 microsoft 环境


缺点:
额外的设置
应用程序和报告服务器之间的无缝身份验证可能会很痛苦,具体取决于您的设置
有点学习曲线,尽管它不是太很难捡起
报告模型创建者需要一些工作并且不会自动生成字段


我听说过有关 DevXpress 的好消息,因此可能值得研究。

大约 5 年前,我使用了 Crystal,并记得安装起来很痛苦,而且许可成本很高。

于 2008-10-02T20:59:25.970 回答
2

查看 Studio 2008 / .NET 3.5 中的报告查看器内容

这个惊人的网站有完整的独家新闻: GotReportViewer

这是一个很好的报告系统构建,可以显示报告和打印。它不像 Crystal 或 SQL Reporting Services 那样成熟。如果您所需要的只是一些轻量级的报告,那么您将无法超越价格。

于 2008-10-03T01:54:35.717 回答
1

Crystal = 占用空间大,部署庞大,速度快,设计器好,支持 MS ReportViewer = 占用空间小,速度慢,设计器差,支持.. 好吧,在 reportviewer 之后搜索起来不是那么容易,一个名字都在使用.. 叹息。

于 2008-10-02T20:46:00.153 回答
1

我们在这里使用ActiveReports.net。他们很好,而且往往能很好地完成工作,但我不确定他们是否符合你对“动态”的定义。但是你几乎可以让他们通过代码做任何事情。

于 2008-10-02T20:46:00.513 回答
0

我目前正在考虑将 DevXpress XtraReports 作为 CR 的替代品。到目前为止,我喜欢我所看到的。

于 2008-10-02T20:48:24.657 回答
0

SQL Reporting Services 可能不够灵活,无法满足您的需求,因为您并没有真正获得深层次的代码操作。

活动报告可以让您进入绑定事件,并且几乎可以做任何您想做的事情,但是活动报告有几个小错误(比如无法绑定到数据表的默认视图),这让您很痛苦。除此之外,它非常灵活。

XtraReports 很棒,但它们比 Active Reports 贵很多。话虽如此,他们的支持非常棒,而且报告包坚如磐石。如果可能的话,我会考虑为他们分出现金。

于 2008-10-03T00:50:05.200 回答