>CREATE DATABASE mooh >CREATE TABLE test (ix I DEFAULT new_ix()) > >TEXT TO cHelp NOSHOW >FUNCTION new_ix > RETURN 12 >ENDFUNC &&New_IX >ENDTEXT &&cHelp > >STRTOFILE(cHelp,'Help.txt') >APPEND PROCEDURES FROM HELP.txt OVERWRITE > >USE test > >*runs fine >APPEND BLANK > >TEXT TO cHelp NOSHOW >FUNCTION new_ix > TRY > ERROR 1 > CATCH TO loException > FINALLY > ENDTRY > > RETURN 1 >ENDFUNC &&New_IX >ENDTEXT &&cHelp > >STRTOFILE(cHelp,'Help.txt') >APPEND PROCEDURES FROM HELP.txt OVERWRITE > >DELETE FILE Help.txt > >*raises error >APPEND BLANK >>
CLEAR SET EXCLUSIVE OFF ON ERROR CREATE DATABASE mooh TEXT TO cHelp NOSHOW FUNCTION new_ix RETURN 12 ENDFUNC &&New_IX ENDTEXT &&cHelp STRTOFILE(cHelp,'Help.txt') APPEND PROCEDURES FROM HELP.txt OVERWRITE CREATE TABLE test (ix I DEFAULT new_ix()) USE test SHARED *runs fine APPEND BLANK TEXT TO cHelp NOSHOW FUNCTION new_ix TRY ERROR 1 && this remove the implicit locks only CATCH TO loException ENDTRY RETURN 1 ENDFUNC &&New_IX ENDTEXT &&cHelp STRTOFILE(cHelp,'Help.txt') APPEND PROCEDURES FROM HELP.txt OVERWRITE DELETE FILE Help.txt RLOCK("0",SELECT(0)) APPEND BLANK UNLOCK CLOSE DATABASES ALL DELETE DATABASE mooh DELETETABLES