| **Navigation:**  [[abc library reference.htm|ABC Library Reference]] > ErrorClass > ErrorClass Methods >====== TakeOther (process other error) {{c6h0009.jpg|C6H0009.jpg}} ====== | [[takenotify process notify error .htm|{{btn_prev_n.gif|Previous page}}]][[abc library reference.htm|{{btn_home_n.gif|Return to chapter overview}}]][[takeprogram process program error .htm|{{btn_next_n.gif|Next page}}]] | | || **TakeOther, PROTECTED, VIRTUAL, PROC** {{blk2blue.jpg|blk2blue.jpg}} The **TakeOther** method is called when an error with an unrecognized severity level is "Thrown" to the ErrorClass (see Throw, ThrowFile, ThrowMessage). By default, an "other" error is treated as a program error. TakeOther must return a severity level. **Implementation:** The base class method (ErrorClass.TakeOther) calls TakeProgram. **Return Data Type:**     BYTE **Example:** **  INCLUDE('ABERROR.INC')            !declare ErrorClass** **MyErrorClass CLASS(ErrorClass)      !declare derived class** **TakeOther    FUNCTION,BYTE,VIRTUAL  !prototype corresponding virtual** **       END** **GlobalErrors MyErrorClass           !declare GlobalErrors object** ** CODE** ** GlobalErrors.Init                  !GlobalErrors initialization** ** !program code** ** GlobalErrors.Throw(Msg:CreateFailed) !Throw calls SELF.TakeOther to ** **                    !automatically call the derived class method** **                    !rather than the base class method** ** !program code** **MyErrorClass.TakeOther FUNCTION !derived class virtual to handle "other" errors** **  CODE** ** !your custom code here** ** RETURN Level:Program** **See Also:**     [[takeerror process specified error .htm|TakeError]], [[throw process specified error .htm|Throw]], [[throwfile set value of file then process error .htm|ThrowFile]], [[throwmessage set value of message then process error .htm|ThrowMessage]]