【问题标题】:Crystal Report Best Practice Question水晶报表最佳实践问题
【发布时间】:2010-12-12 14:23:28
【问题描述】:

我有一个关于通过 Crystal Report 将参数传递给 Crystal Report 的任务,我想找到实现它的最佳方法。

想象一下,我已经参数化和非报告参数化。我正在开发一个报告管理器,它使用户能够订阅报告并使用他们的参数安排它们。我有一个包含报告列表的订阅网页。当用户想要订阅一个报告并安排它时,如果报告中没有参数,那很好,但是如果有任何参数需要传递给报告(我们可以从 rpt 文件中找到),用户应该能够通过页面中的面板输入这些参数值。我会将这些参数的值保存到数据库中。

实际上,我需要创建一个参数输入面板来获取参数并将它们及其类型、值等保存到数据库中,然后我需要以编程方式使用这些参数将报告导出为不同的文件格式。

基本上,我必须根据相应报表所具有的参数类型来开发参数输入面板运行时。

有谁知道实现它的最佳方法是什么?

从现在开始感谢您的帮助,如果需要,请要求进一步澄清/

亲切的问候。

【问题讨论】:

  • 最佳实践是不要在第一名使用水晶报告;-)
  • 那你有什么建议:) 我们有很多报告(大约 50 个)还有更好的选择吗?:)))
  • 我同意:/我们有一个 90mb Reports.dll !更不用说 Crystal Reports 2008 的最新 Service Pack 不会显示 DateTime 值(说真的。日期时间。在 QA 中怎么会错过?)

标签: asp.net javascript crystal-reports


【解决方案1】:

您可以使用 BusinessObjects Enterprise,但这会很昂贵。

否则,您将需要构建自己的参数控件。控件将询问报表,确定它包含哪些类型的参数,然后相应地构建控件的 UI。它需要在回发之间维护状态,捕获并显示每个参数的默认值和当前值集合。

几年前我开始构建这样的控件,但从未完成。正如您可能猜到的那样,这是一项相当多的工作。

【讨论】:

    【解决方案2】:

    在对您的问题发表评论时,您询问了建议什么而不是 Crystal Reports,所以我想我会提供 SSRS。如果您使用的是 SQL Server,我建议您考虑使用 SQL Server Reporting Services。虽然我相信 Crystal Reports 更健壮(可能只是因为我更了解它们),但我相信很多订阅、调度和参数处理在初始配置之后已经准备就绪。

    我不是 SSRS 方面的专家,所以也许有更多知识的人会用更具体的细节编辑我的答案。希望这会有所帮助。

    【讨论】:

      【解决方案3】:

      您可以将每个报表作为 ReportDocument 对象打开,然后枚举 ParameterFields 集合以评估每个报表的名称、类型和其他信息。使用该信息,您可以生成参数输入面板。

      【讨论】:

        猜你喜欢
        • 1970-01-01
        • 2010-09-22
        • 2010-12-15
        • 1970-01-01
        • 1970-01-01
        相关资源
        最近更新 更多