LOCAL loLogger AS Logger loLogger = Createobject("Logger","Logger") * LOCAL loMethods AS Collection loMethods = Newobject("Collection") loMethods.Add(NewObject("Method1","SomeMethods.vcx")) loMethods.Add(NewObject("Method2","SomeMethods.vcx")) loMethods.Add(NewObject("Method3","SomeMethods.vcx")) LOCAL loOneMethod AS BasicMethod OF SomeMethods.vcx * FOR EACH loOneMethod IN loMethods FOXOBJECT IF NOT loOneMethod.Execute(loLogger) EXIT ENDIF ENDFOR * RETURN loLogger.Success>Such code is only manually hard to debug as entering a specific function is problematic.
>local llOk >llOk = FirstFunc() >llOk = m.llOk + NextFunc() >. >. >llOk = m.llOk + LastFunc()is IMO better - and if a specific action needs to be done sometimes after error I might use case !Function() as a fall-through structure to reach the Otherwise - but with a little comment added preventing that pattern being abused... 3 lines for each func is wasteful if trying to adhere to 1 screenful of lines >>> 1 method if you sometimes need to code on laptop screens ;-)
>>IF ThisFunction() or ThatFunction or TheOtherFunction() >> . >>>>
>>llRetVal = ThisFunction() >>IF llRetVal >> llRetVal = ThatFunction() >>ENDIF >>IF llRetVal >> llRetVal = OtherFunction() >>ENDIF >>>>