* At top of executable or Main PRG ON ERROR DO errhand WITH ERROR( ), MESSAGE( ), MESSAGE(1), PROGRAM( ), LINENO( ) * Anywhere you store procedures: PROCEDURE errhand (merror, mess, mess1, mprog, mlineno) &&---------- on error if messagebox('Error number :'+LTRIM(STR(merror))+chr(13); +'Error message :'+ mess+chr(13); +'Line of code with error:'+mess1+chr(13); +'Line number of error :'+LTRIM(STR(mlineno))+chr(13); +'Alias :'+alias()+chr(13); +'Order() :'+Order()+chr(13); +'Program with error :'+mprog,1+48,[Error Trapped!])=2 CANCEL else ON ERROR DO errhand WITH ERROR( ), MESSAGE( ), MESSAGE(1), PROGRAM( ),INENO( ) endif ENDPROC && errhand