Crystal report does not return the value as shown in SQL query
Aug 22, 2017 at 03:45 PM|78 Views | Last edit Aug 22, 2017 at 03:45 PM 2 rev.
Hello,
I am struggling to show the BreakTime value if it meets the condition but, Crystal report shows the zero value. If I execute the SQL report which is generated by Crystal report it has non-null values. Here is the formula created in Crystal report:
If {Events.SCHID}=Previous({Events.SCHID}) and {EventStrings.EVSTRNAME} = Previous({EventStrings.EVSTRNAME}) and {Events.EVSTRID}={EventStrings.EVSTRID} and {Events.ACTIVITY} = 8 then ({Events.DWELLTIME})/3600
Please let me know if you have any other questions. I am very new to Crystal report. Hopefully was able to explain my concern. Thanks
Your formula doesn't have an Else. If the conditions aren't met then Crystal assumes you want a 0 because of the expected return value. If you want something else to show, add an Else statement.
When comparing current and previous records, you need to also check to see if the current record is new or not. Previous returns a null if there is no previous record. To do this, include the PreviousIsNull function at the beginning like:
If (PreviousIsNull ({Events.SCHID})) or
({Events.SCHID}=Previous({Events.SCHID})
and {EventStrings.EVSTRNAME} = Previous({EventStrings.EVSTRNAME})
and {Events.EVSTRID}={EventStrings.EVSTRID}
and {Events.ACTIVITY} = 8)
then ({Events.DWELLTIME})/3600
Else 0;
Also, open the formula and on top of formula editor, you will see 'Exception for Nulls', click on the drop down and select 'Default Values for Nulls' and save the formula and see.
Add comment