>FOR ix = 1 to Whatever > REPLACE JMJ_IN.Diag1 WITH LEFT(ALLTRIM(UPPER(EVALUATE('loObj'+LTRIM(STR(m.ix))+".Field019"))),AT('^',EVALUATE('loObj'+LTRIM(STR(m.ix))+".Field019"))-1) >ENDFOR >Personally I hate expressions like that - long, complicated and unreadable. I'd break it down to its constuituent parts:
FOR ix = 1 to Whatever lxMyMeaningfulName = EVALUATE('loObj'+LTRIM ... && See - can't be bothered decyphering it :-) lxMyMeaningfulName = LEFT(ALLTRIM(UPPER( lxMyMeaningfulName, ... REPLACE Diag1 WITH lxMyMeaningfulName in JMJ_IN * _____________ _________ * Note difference in replace - not repl table.field ENDFORForget it! By the time I'd replied the flies were all over your post! :-)