At 08:10 AM 12/28/2004 -0600, Claudine Robbins wrote:

Razzak,

Thank you for your help!

The following works:
rate IN d_rates WHERE client = .vclient AND carrier = 99 AND truck_type =
.vtrucktype AND (category BETWEEN .vadjmileage AND (.vadjmileage + 10))

FYI, before I corrected a couple of mismatched variable types and added all
the parens, the error message was Nulls cannot be used in comparisons...

Now I can go forward...  Thanks again for helping me see the error of my
ways!


Claudine,

Here's the technical explanation of that -ERROR- message
when comparing NULL values:

When comparing text columns to text variables you can actually
get away with "column = .var" when EQNULL is ON, but when using
non-text columns like INTEGERs, R:BASE is not as forgiving. If
you are specifically looking for NULL values you should use a
where clause with "column IS NULL". If you are using an INTEGER
variable which might be NULL, then you need to put parentheses
around the variable like "column = (.var)".

This forces R:BASE to compare the column to the variable itself,
rather than trying to compare the column to the value derived
when the variable is converted to a text string. When the NULL
display is blank, this derived value looks like nothing.

Hope that helps you understand the logic of using parenthesis
when comparing NULL values.

Very Best R:egards,

Razzak.



Reply via email to