>
>SELECT key1,key2 FROM lookup WHERE typename="ECO-STATUS" ORDER BY key2 INTO ARRAY thisform.aStatuscodes
>FOR EACH scode IN thisform.aStatuscodes
> scode = TRIM(scode)
>ENDFOR
>
>My expectation was that
scode would now be reflected back into the form's array property. I can see
scode changing each time, but when the loop is done, the array is unchanged.
>
>I know I how to re-write this using ALEN(), but could somebody explain why the FOR-EACH code is not working and how to use it to update the values in the array?
>
>Thanks to all...........Rich
1. scode is a variable, FOR EACH copy an array element into the variable,
in other words, scode it is not a reference to the array element.
2. WITH VFP9 you can do RTRIM() into the SELECT:
SET VARCHARMAPPING ON
SELECT RTRIM(key1),RTRIM(key2) FROM lookup WHERE typename="ECO-STATUS" ORDER BY key2 INTO ARRAY ...