Difference between revisions of "MC-Basic:ONSYSTEMERROR/zh-hans"

From SoftMC-Wiki
Jump to: navigation, search
(Created page with "{{Languages}} == 缩写 == == 格式 == <pre> Program                                   'Beginning of program        <Code>     ...")
 
 
Line 1: Line 1:
{{Languages}}
+
{{Languages|MC-Basic:ONSYSTEMERROR}}
 
== 缩写 ==
 
== 缩写 ==
  
 
== 格式 ==
 
== 格式 ==
 
<pre>
 
<pre>
Program                                   'Beginning of program
+
Program                 'Beginning of program
       <Code>
+
  <Code>
       OnSystemError                      'Start of OnSystemError block
+
  OnSystemError            'Start of OnSystemError block
                   {catch <error number X>
+
   {catch <error number X>
                               <code to execute when error X occurs>}
+
     <code to execute when error X occurs>}
                   {catch <error number Y>
+
   {catch <error number Y>
                               <code to execute when error Y occurs>}
+
     <code to execute when error Y occurs>}
                   {catch else
+
   catch else
                               <code to execute for all other errors>}
+
     <code to execute for all other errors>}
       End OnSystemError                 'End of OnSystemError block<br>
+
   End OnSystemError         'End of OnSystemError block<br>
       <Code>
+
   <Code>
End Program                               'End of program
+
End Program              'End of program
 
</pre>
 
</pre>
  
Line 59: Line 59:
 
<pre>
 
<pre>
 
OnSystemError
 
OnSystemError
   catch 12055               'catch Missing SERCOS telegram error
+
   catch 12055       'catch Missing SERCOS telegram error
 
     Print "Missing telegram(s): communication interrupted"
 
     Print "Missing telegram(s): communication interrupted"
 
End OnSystemError
 
End OnSystemError

Latest revision as of 03:01, 25 April 2017

语言: English  • 中文(简体)‎

缩写

格式

Program                 'Beginning of program
  <Code>
  OnSystemError            'Start of OnSystemError block
   {catch <error number X>
     <code to execute when error X occurs>}
   {catch <error number Y>
     <code to execute when error Y occurs>}
   catch else
     <code to execute for all other errors>}
   End OnSystemError         'End of OnSystemError block<br>
   <Code>
End Program              'End of program

适用版本

所有版本

描述

ONSYSTEMERROR语句用于捕获和处理系统中的错误。 它是由TRY,ONERROR和ONSYSTEMERROR的组合形成的层次错误处理结构的上层。

ONSYSTEMERROR写在任务的任务中,但系统中只能存在一个实例。它用于捕获所有任务中的同步和异步错误,以及在系统上下文中发生的错误。

同步错误由用户任务引起,并由解释器检测到,而异步错误与特定的程序代码行无关。例如位置跟随误差。

系统错误与特定任务无关。如由于外部力施加到任务未调用到的轴而发生的位置跟随错误。

当错误被捕获时,指定的错误处理代码被执行并且任务被停止,任务状态变为4,可以通过输入CONTINUETASK命令来恢复任务执行。

ONSYSTEMERROR用于捕获未被TRY或ONERROR捕获的错误,然后它将被用于执行系统的有序关闭或有序的恢复。

NOTE-Info.svgNOTE
SYNCHRONOUS错误会导致任务停止,可以通过“onerror”获取,然后通过"continuetask"继续执行。
ASYNCHRONOUS错误不会停止任务,即使它被"onsystemerror"获取,所以任务会继续执行。

类型

取值范围

单位

默认

使用范围

Task

限制

只允许一个ONSYSTEMERROR在系统中出现。

例子

OnSystemError
  catch 12055       'catch Missing SERCOS telegram error
    Print "Missing telegram(s): communication interrupted"
End OnSystemError

参见