Crystal reports “此字段名未知”错误(Crystal Reports)

Crystal reports “此字段名未知”错误(Crystal Reports),crystal-reports,Crystal Reports,我遇到了一个奇怪的问题 我的记录选择公式如下,出于此错误的目的,我将其简化为: reportDocument.RecordSelectionFormula = " {@ClientName} = 'Smith' " 如果我将这个精确的选择语句复制到Crystal中,它可以很好地预览,但从.NET运行时,我会 “此字段名未知” 问题出现在@ClientName公式字段 @ClientName只包含: formula = {aw_illust.CL1LNAM} 我还可以将它设置为一个空字符串公式

我遇到了一个奇怪的问题

我的记录选择公式如下,出于此错误的目的,我将其简化为:

reportDocument.RecordSelectionFormula = " {@ClientName} = 'Smith' "
如果我将这个精确的选择语句复制到Crystal中,它可以很好地预览,但从.NET运行时,我会

“此字段名未知”

问题出现在@ClientName公式字段

@ClientName只包含:

formula = {aw_illust.CL1LNAM}
我还可以将它设置为一个空字符串公式,它仍然给出

'此字段名未知。'

奇怪的是,如果我绕过公式,将公式文本直接放入.NET中,一切正常

reportDocument.RecordSelectionFormula = " {aw_illust.CL1LNAM} = 'Smith' "

这是相同的记录选择,只是将“@ClientName”公式替换为“{aw_illust.CL1LNAM}”。这只发生在这一个报告中,我有许多其他水晶报告使用.NET中引用的公式。有什么想法吗

哪种语法有公式?如果是crystal语法,则将其更改为基本语法。或者将公式的内容更改为crystal语法,而不使用公式=

您可以创建一个类似{?ClientName}的参数并从.NET进行设置,然后在类似{@ClientName}={?ClientName}的crystal中放置一个选择公式.

是否可以使用所需的选择条件保存报告,然后使用以下内容显示reportDocument类看到的内容:

TextBox1.text = reportDocument.RecordSelectionFormula

这将确认您的语法是正确的。

很可能您在报告的任何地方都没有使用{@ClientName}公式;Crystal Reports倾向于忽略未使用的字段、公式等。将{@ClientName}字段放在报表标题或类似部分的某个位置并将其隐藏-这样您就不会弄乱报表设计,但CR应该在以后知道该公式。

当我复制现有报表用作新报表时,我也会遇到同样的情况,在我的例子中,您可以首先在报表查看器中打开报表


但是加载报告的查询没有名称为DateLocal Transaction的选择,所以我得到了这个错误,解决方法是要么只使用那些需要额外的选项,要么在查询中重命名选择值。

你说它在其他地方起作用-你会发布一个示例来说明你的意思吗?