>><b>SCAN expr</b> This is not real code, just meant to show begining of Scan Loop, actual code is SELECT tablea GOTO TOP SCAN FOR fielda.tablea <> 0 "name" refers to a table which is already on the correct record. Why does RLOCK("name") always return .F.? How do I fix it. Some else suggested I net to set MULTILOCKS ON. >* The line of code above is incorrect. > >> IF RLOCK('name') >> m.newvalue = expr >> REPLACE field WITH m.newvalue IN name >> ENDIF >>ENDSCAN >>>>Init has SET REPROCESS 10. Problem RLOCK() ALWAYS returns .F. and thus replace is not executed. Any help appriciated.