Here is a strange problem I have run into.
My record select formula is as follows, I have dumbed it down for purposes of this error:
reportDocument.RecordSelectionFormula = " {@ClientName} = 'Smith' "
If I copy this exact selection statement into Crystal it pre开发者_开发问答views fine, but when run from .NET I get
'This field name is not known'.
The problem is occurring at the @ClientName
formula field.
@ClientName
simply contains:
formula = {aw_illust.CL1LNAM}
I can also set it to just a blank string (formula = "") and it still gives
'This field name is not known.'
Here is the strange part, if I bypass the formula and put the formula text straight into .NET everything works fine.
reportDocument.RecordSelectionFormula = " {aw_illust.CL1LNAM} = 'Smith' "
That is the same record selection, except with the '@ClientName
' formula replaced with '{aw_illust.CL1LNAM}
'. It just happens on this one report, I have many other Crystal Reports working with formulas referenced in .NET just fine. Any ideas?
Most likely you are not using your {@ClientName} formula anywhere on report; Crystal Reports tends to ignore unused fields, formulas etc. Place {@ClientName} field somewhere in report (header or some similar section) and suppress it - this way you don't mess up report design, but CR should know about that formula afterwards.
Which syntax has the formula? If it is crystal syntax then change it to basic syntax. Or change the content of the formula to crystal syntax (without "formula =")
You could create a parameter like {?ClientName}
and set that from .NET, and then put a select formula in Crystal like {@ClientName} = {?ClientName}
.
Can you save the report with the selection criteria you'd like then display what the reportDocument
class sees using something like:
TextBox1.text = reportDocument.RecordSelectionFormula
This would confirm that your syntax is correct.
Same happened with me when I copied existing report to be used as the new one, You can first open report in report viewer ,In my case
but the query that loading report has no selection with name DateLocal Transaction so I got this error, the resolve is to either use only those that are require (Extras has nothing to do with the error) or rename selection value in query.
精彩评论