The issue of null value popped up in couple threads lately.
The authors were referred, by myself and others, to earlier threads in which this issue was discussed and eventually fixed in built 2038.
I decided to test True null value and what I found out, it works as a true null value, BUT not 100%.
Prior to that built, alpha could not distinguish between a zero and null value. This seems like a minor problem, UNLESS you are doing stats in which it is not.
Now, with built 2038 and beyond, alpha, supposedly, makes the distinction. BUT my testing shows that it makes the distinction but not FULLY.
Here is what I mean:
In any table you have or in a test table with a numeric field do the following:
a-Create a calc field that says: Blank=isblank("Num_field")
b-Create a second calc field zero=Num_field=0
c-Create a third calc field null=calc->blank=calc->zero
d-Place all three calc fields on a form and then do the following:
e-Enter zero in the numeric field:
calc->balnk will show .F.
calc->zero will show .T.
calc->null will show .F.
Wonderful ! that's the effect you want to see where "zero" does not equal blank.
But, now delete the zero, or blank it out, or start a new record and leave the numeric field blank and here is what you get:
calc->balnk will show .T.
calc->zero will show .T.
calc->null will show .T.
Not the effect you want to see.
The first setting will not give you the wrong stats, the second will.
Blank is not quite zestfully clean. It appears that the issue is half-way solved. Hope Selwyn could shed some light on this.
Thanks
Gabe
The authors were referred, by myself and others, to earlier threads in which this issue was discussed and eventually fixed in built 2038.
I decided to test True null value and what I found out, it works as a true null value, BUT not 100%.
Prior to that built, alpha could not distinguish between a zero and null value. This seems like a minor problem, UNLESS you are doing stats in which it is not.
Now, with built 2038 and beyond, alpha, supposedly, makes the distinction. BUT my testing shows that it makes the distinction but not FULLY.
Here is what I mean:
In any table you have or in a test table with a numeric field do the following:
a-Create a calc field that says: Blank=isblank("Num_field")
b-Create a second calc field zero=Num_field=0
c-Create a third calc field null=calc->blank=calc->zero
d-Place all three calc fields on a form and then do the following:
e-Enter zero in the numeric field:
calc->balnk will show .F.
calc->zero will show .T.
calc->null will show .F.
Wonderful ! that's the effect you want to see where "zero" does not equal blank.
But, now delete the zero, or blank it out, or start a new record and leave the numeric field blank and here is what you get:
calc->balnk will show .T.
calc->zero will show .T.
calc->null will show .T.
Not the effect you want to see.
The first setting will not give you the wrong stats, the second will.
Blank is not quite zestfully clean. It appears that the issue is half-way solved. Hope Selwyn could shed some light on this.
Thanks
Gabe