SPEL + 中的错误处理
如果在SPEL+程序中发生错误,可以将执行转到错误处理例程中进行错误处理。该例程必须在函数定义内。下一页的表格显示了用于错误处理的程序指令。
项目 目的OnErr 使用OnErr语句定义错误处理例程的位置。
Err 使用Err检索当前错误状态的数量。在错误处理例程中使用这个可以确定已经发生了哪些错误。
Error 生成一个可被错误处理程序捕获的用户定义的错误。
Era 使用Era检索发生错误的轴号。这通常用于错误处理例程中。
Erl 使用Erl检索发生错误的行号。这通常用于错误处理例程中。
Ert 使用Ert检索发生错误的任务号。这通常用于错误处理例程中。
ErrMsg$ 使用ErrMsg$ 检索与指定的错误号相关的错误消息。
Errb 使用Errb检索发生错误的机器人编号。这通常用于错误处理例程中。
用户错误
您可以使用工具菜单中提供的用户错误编辑器来定义您自己的错误信息。有关详情,请参阅5.11.7用户错误编辑器命令(工具菜单)。
示例
以下例子显示了简单的错误处理例程。发生错误时,程序执行转到ErrHandler标签,启动错误处理程序。显示错误号并询问操作员是否继续。如果操作员输入“N”,则该程序执行Quit All语句来结束该程序。
Function Main
String cont$
Integer i
OnErr Goto Errhandler
For i = 1 To 10
Jump P(i)
Next i
Exit Function
' *** Error handler ***
Errhandler:
enum = Err
Print "Error #", enum, " occurred"
Print "Continue (Y or N)?"
Line Input cont$
Select cont$
Case "y", "Y"
EResume Next
Default
Quit All
Send
Fend