crystal-reports-2008

If results are not >= "Number" then show blank


New to building Crystal Reports and SQL.

I'm trying to write a script to where if results is >= 12.1 then show result else show no results.

Same goes for the <=9.9.

Here is what I have so far:

if {Test.Name} = "xyz" and {TestResults.numresult}>= 12.1 then {TestResults.numresult} else "";

Below is an image showing the same results across the board. I just want the results to show when its <=9.9 or >=12.1. Hope this make sense.

Result Outcome


Solution

  • Your statement returns a number from one branch and a string from the other. It must return the same data type.

    One option is to use a True/False expression in a Suppress expression.

    Another option is to return a zero in the other branch and use number formatting to suppress if zero (it's a built-in option for numbers).

    Another option is to modify your expression so it returns a string from both branches. For example:

    if {Test.Name} = "xyz" and {TestResults.numresult}>= 12.1 then ToText({TestResults.numresult}, 1, ",") else "";
    

    The 1 argument requests 1 decimal point. The "," argument requests a comma as thousands separator. You can adjust those to match your number formatting requirements.