Linda,
So:
x = 'A'
y = Null
If x = .y then >> tests false in both versions?
A work around could be:
If x = .y then
else
return
endIf
You don't _have_ to have code for both conditions, but this would
test nulls properly. Another option would be to test for nulls
specifically with an additional "if x is null OR y is null then" I
suppose...
What method did you use to upgrade your code?
Appreciate the heads up.
Ben Peteresen
On 2 Jul 2001, at 11:01, FISHER wrote:
> David, Frank & Ben,
> Thanks for the responses.
>
> Ben, the code execution for = and EQ is the same as it was in prior
> versions of R:BASE. We considered changing our code to check for EQUAL
> TO or IN ('x','y','z') however, since our code that used the <>
> comparison normally involved program navigational statements as outlined
> below, changing to an EQ would make it harder to find the ENDIF since
> there would be several lines of application code contained within the IF
> / ENDIF statement.
> IF __ <> __ THEN
> RETURN
> ENDIF
> --continue application code
>
> David, I believe the logic handling is now right for the EQNULL OFF
> setting. In all the analysis I did to determine the changes that were
> required to our old code I found that text variables and NULL
> comparisons are now handled the same way comparisons with DATE and
> INTEGER variables were handled in the past. I think the this change is
> good, I just wanted to let others who are running code that has evolved
> over the years that they could experience problems with their
> applications not performing as they had in the past.
>
> We have already changed all of our code (it only took three of us two
> days), and have been running 6.5++ for the past two days with no major
> glitches. We did find that code execution is a bit tighter, we
> identified a few of our program statements failed to contain quotes
> around a text value which ran fine prior to the upgrade. Again, I am
> not complaining I am just amazed that the code ever did run correctly!
>
> Frank, I do have one question, is the dot required in front of
> variables on the right of the comparison operator? It was my
> understanding that this was not required to be used in IF statements but
> you mentioned this requirement. Also, if this isn't required now, I am
> wondering if it will it be a future requirement at some time?
>
> Thanks for everyone's input.
>
>
> Linda Fisher
> Manager, Data Services
> CIMRO Quality Healthcare Solutions
> 208 Metro Dr.
> Jefferson City, MO 65109
> Phone: 573-893-8001
> Fax: 573-893-7960
>
>