Crystal reports Crystal Reports:SQL查询中缺少WHERE条件

Crystal reports Crystal Reports:SQL查询中缺少WHERE条件,crystal-reports,crystal-reports-xi,Crystal Reports,Crystal Reports Xi,我们正在使用VisualStudio附带的精简版Crystal Reports。我们刚刚从2008年升级到2010年,正在使用VS2010附带的crystal reports(我相信是2011年) 在升级DLL之后,我们遇到了一个问题,即我们的报告选择公式在将其转换为SQL时删除了各种条件。例如,我们有一个名为Dates的DateTime参数,它被传递到允许范围值(2012年1月1日至2012年12月31日)的报告中。在我们的选择公式中,我们有Invoice.Date={?Dates}的条件来选

我们正在使用VisualStudio附带的精简版Crystal Reports。我们刚刚从2008年升级到2010年,正在使用VS2010附带的crystal reports(我相信是2011年)

在升级DLL之后,我们遇到了一个问题,即我们的报告选择公式在将其转换为SQL时删除了各种条件。例如,我们有一个名为Dates的DateTime参数,它被传递到允许范围值(2012年1月1日至2012年12月31日)的报告中。在我们的选择公式中,我们有Invoice.Date={?Dates}的条件来选择日期范围内的发票。报告允许我们保存并继续,就像没有问题一样,但是如果我们查看SQL查询,则日期范围没有WHERE条件

即使我们尝试使用硬编码日期(Invoice.date>=2012-01-01)设置选择条件,它也不会显示在SQL查询的WHERE条件中

有人遇到过这个问题吗

编辑:

在运行时从用户对话框中收集参数后,这些参数将作为实际的Crystal Reports参数对象传入。在设计时指定硬编码值可以正常工作。在运行时提供它们时,它就是不起作用


由于最后期限的关系,我们不得不放弃寻找解决方案的努力,我们只是从数据库中获取数据并填充数据集,然后将其传递给报告。(如果有解决方案,仍感兴趣。)但是,话虽如此,Crystal Reports生成的sql查询看起来完全正确,只是WHERE条件排除了我们试图使用参数进行筛选的任何内容。

您是如何传递这两个参数的?您是从应用程序传递还是在Crystal Reports运行时直接输入?我还想查看SQL查询。我在问题正文中回答了您的问题。是web还是桌面?您是在使用Crystal的参数提示引擎,还是在调用
SetParameterValue()
?此外,有些事情可能会导致选择过滤器应用到内存中(在提取所有数据之后)。我在跨数据库连接中看到过这一点。这是一个桌面应用程序,我们使用的是SetParameterValue函数,而不是crystal reports参数对话框。