【问题标题】:Problem ReCreating Access report in Crystal Reports在 Crystal Reports 中重新创建 Access 报表时出现问题
【发布时间】:2011-03-04 19:28:54
【问题描述】:

我正在尝试将访问报告重新创建为水晶报告,但遇到了问题。

基本上,Access 报表运行一个存储过程(不返回任何内容,但会填充表),然后查询这些表以在报表上显示数据。

所以我试图弄清楚如何使用水晶报告中的参数运行该过程。我的第二部分很好,如果我手动运行该过程,然后显示我得到适当数据的报告。

如何在从 Crystal Reports 查询这些表之前执行存储过程???

【问题讨论】:

  • @MAW74656 ~ 我们(这里的模组)觉得这个问题在 StackOverflow 上比在 dba 上更适合。我是这两个网站的成员,所以如果你觉得你没有得到你需要的回应,请通过@ing我告诉我,我会看看可以做些什么。但这实际上是一个编程问题,而不是一个 dba 问题。
  • 什么版本的水晶?

标签: sql-server ms-access crystal-reports


【解决方案1】:

您是否尝试过将存储过程和查询合并到一个存储过程中?执行填充表的查询,然后运行返回数据的查询?

【讨论】:

  • 不,我的问题是我实际上有 2 组数据要返回。所以我有一个填充的查询,然后我在填充的表上有 2 个其他选择。我不确定这种方法有什么优势?
  • 您说您在运行第一个存储过程时遇到问题。如果你不能让它自己运行,你可以将存储过程和第一个查询结合起来,让存储过程执行,然后查询触发并返回第一组数据。然后像现在一样运行第二个查询,因为它可以工作。
  • 现在我得到了正确的数据,但是查询需要很长时间才能执行。当我运行等效的访问报告时,我会在
  • 我会检查一下是什么部分阻碍了它。如果您手动运行每个部分,它们是否运行得很快?存储过程需要更长的时间吗?返回数据的查询之一是否需要更长的时间?您可能需要创建一些索引,以便一条(或全部)SQL 语句运行得更快。
  • 好的,现在我找到了:我正在执行一个不同的过程,它做几乎相同的事情。名称很接近,它返回相同的信息,但在执行期间使用更多的数据。现在我已经让它正常工作了。感谢您的帮助!
【解决方案2】:

使用 Visual Studio(假设您使用的是 Access,因此您可能是 Microsoft 商店。)创建一个触发存储过程的表单,然后打开 Crystal Report。

这样用户就不必安装 Crystal Reports。只是您的应用程序。

【讨论】:

  • 最终我会使用这样的设置,但我实际上是使用控制台应用程序将 CR 保存为 pdf。
  • 我认为保持报告独立的更好做法,但这肯定会奏效。
【解决方案3】:

您可以采用 Access 和 Crystal 的组合方法吗?

  1. Access db 会提示用户输入参数并执行所需的任何操作以从 db 中获取和过滤数据。
  2. Crystal 使用 Access db 作为源生成报告。

这就像获取原始 Access 文件,删除 just 报表,然后在 Crystal 中重新创建 just 报表,使用原始 Access 查询作为源。

【讨论】:

  • 不怕。我需要将 Access 排除在外。
猜你喜欢
  • 1970-01-01
  • 2012-01-20
  • 1970-01-01
  • 2021-07-31
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
相关资源
最近更新 更多