define class CFoo as Relation protected c_Result c_Result = "" protected procedure Try_ error "meow" protected procedure CallBoundary_Cmtz1y29LSNvPxEsM3G6T_ this.Try_ function Execute this.c_Result = "" this.CallBoundary_Cmtz1y29LSNvPxEsM3G6T_ return this.c_Result procedure Error (nError, cMethod, nLine) this.c_Result = message() return to CallBoundary_Cmtz1y29LSNvPxEsM3G6T_ enddefineThe call boundary needs to be there and it needs a unique name because the code in .Try_ could call other functions named 'Execute' directly or indirectly, and a RETURN TO Execute would pick the nearest match on the stack frame which is not necessarily the .Execute of the CFoo class. On the other hand you wouldn't want to force users of your class to call a function named 'Execute_hZhv3JSWM5ar69l9iGEBX'. *g*