On Jun 26, 2:33*pm, "Mr. Arnold" <MR. Arn...@Arnold.com> wrote:
> "G.S." <gstoy...@gmail.com> wrote in message
>
> news:8bad31f8-f937-426d-8e5c-(E-Mail Removed)...
> On Jun 26, 1:14 pm, "Mr. Arnold" <MR. Arn...@Arnold.com> wrote:
>
>
>
>
>
> > "G. Stoynev" <gstoy...@gmail.com> wrote in message
>
> >news:42db2a59-1ac9-4437-8dd1-(E-Mail Removed)....
>
> > >I can't seem to be able to prevent a Crystal Reports formula to
> > > evaluate an expression when the report contains no records to show.
>
> > > Here's the formula (DateTransferred is a DateTime column):
>
> > > If IsNull({MyReportDataSet.DateTransferred}) Then
> > > " " //empty string
> > > Else
> > > If ({MyReportDataSet.DateTransferred} = CDate("1/1/1900")) Then
> > > " " //also pring an empty string - 1/1/1900 means "no date was
> > > selected"
> > > Else
> > > ToText({MyReportDataSet.DateTransferred}, "MM/dd/yyyy");
>
> > > It looks that even if IsNull returns true, Crystal is still trying to
> > > evaluate this line
> > > If ({MyReportDataSet.DateTransferred} = CDate("1/1/1900")) Then
> > > which is causing the error "A date is required here" to be displayed.
>
> > > I tried changing Report Options -> Convert DBNull to Default, bub that
> > > didn't help.
>
> > > I'd appreciate any help/advice
>
> > It seems to me that you should short-circuit the IF statement if IsNull
> > (remove the ELSE off the ISNull) and just come out of the formula return a
> > null string, a separate if for the null check.
>
> > If it's not ISNull, then do the other part of the formula, fall through..-
> > Hide quoted text -
>
> > - Show quoted text -
>
> You mean:
> If (IsNull({MyReportDataSet.DateTransferred})) Then
> * * "no data";
>
> If (Not IsNull({MyReportDataSet.DateTransferred})) Then
> (
> * * If ({MyReportDataSet.DateTransferred} <> CDate("1/1/1900")) Then
> * * * * "good data - date has been selected"
> * * Else
> * * * * "deliberately not selected";
> )
>
> ??
> Is there a way to force-exit from Crystal formula? Something like
> "return;"?
>
> When you're in the language IDE for creating the formula is there *return*
> there for the function you can choose? It's been many years since I last saw
> Crystal.
>
> That statement by itself will exit the formula if it's true and return "no
> data", if I recall correctly.
>
> If (IsNull({MyReportDataSet.DateTransferred})) Then
> * * "no data";
>
> I guess you got that email instead of this post, since I didn't get a not
> delivered email.- Hide quoted text -
>
> - Show quoted text -
Thank you for your help!
No, I didn't see a return statement in any of the canned functions/
operatorrs list in the IDE. The Crystal Reports help in VS2005 Help is
not helpful at all... I tried to guess a few times Exit, Return,
Stop... no avail.
I've used crystal enterprise in the past and have never encountered
that problem. This is typical Crystal stuff - not intuitive and hard
to debug/find help. Thanks again!
|