>James,
>
>lnControls = ALEN(Thisform,.array,1)
>FOR lnCnt = 1 TO lnControls
> * Do the recalc.
> lnControls = ALEN(Thisform.Array,1)
>ENDFOR
No good, because ...
LOCAL x, y
y = 10
for x = 1 to y
? x
IF x = 5
y = 15
ENDIF
ENDFOR
Only prints from 1 to 10.
When I have had to do this type of thing before I found it easiest to have all the possible dependencies defined during the init phase. Then you have a fixed length array.