Wiki Home

VFP Function Obj Num


Namespace: VFP
The OBJNUM() function was very useful (in combination with the _CUROBJ system variable) to get the @..GET object number of a particular variable / field, then set that number into _CUROBJ, instead of trying to KEYBOARD() enough TABs/BACKTABs to move the focus to that GET.

@..GETs and READ still work in VFP, and OBJNUM() / _CUROBJ still work; HOWEVER, OBJNUM() is unable to find the proper object number of an object's property use in an @..GET. All the varied meanings of "object" gets confusing here, so an example is in order:
SELECT MyTable
SCATTER NAME o_mytable
@ 4,4 GET o_mytable.fieldone    && works great!
@ 5,4 GET o_mytable.fieldtwo    && works great!
@ 5,4 GET o_mytable.fieldthree  && works great!
ON KEY LABEL ALT+A do GoBack
READ CYCLE

PROCEDURE GoBack
_CUROBJ = OBJNUM( 'o_mytable.fieldone' )  && This doesn't work!
RETURN


What's most frustrating is OBJNUM() returns "one greater than the highest existing object number"... which is really hard to check for since there is no way to get the "highest existing object number".

My guess is the internal logic of VFP is mistaking the object reference "o_mytable." for an alias reference.
Category VFP Functions Category VFP Bugs
( Topic last updated: 2001.06.04 12:29:24 PM )