Err関数

最新のエラーステータスを返します。

書式
Err [ (タスク番号) ]

パラメーター

タスク番号
タスク番号を0~32の整数値で指定します。"0"は、現在のタスクを指定します。省略可能です。

戻り値
エラーコードを整数値で返します。

解説
Err関数は、ユーザーに現在のエラーコードを知らせます。SPEL+のエラー対応機能とともにどのエラーが発生したか知らせ、適切に対応できるようにします。ErrはOnErrとともに用います。

コントローラーのエラーを取得するには、SysErr関数を使用します。

自動運転モード(AUTO) の通常タスクとNoPauseタスクでは、「自動運転中のエラー発生」になると実行を中断し タスク終了します。NoEmgAbortタスクやバックグラウンドタスクで本関数を使用するときに、すでに対象のタスクが終了している場合は、"エラー 2261"が発生します。タスク終了前に情報を取得するには OnErr を使用してください。

注意


プロジェクトプロパティのコンパイラーオプションで「グローバル変数の宣言を各ファイルで必須」をチェックした場合はそれぞれのファイルで宣言が必要になります。


参照
Era, Erf$, Erl, ErrMsg$, EResume, Ert, OnErr, Return, SysErr

Err関数使用例
下記の例は、ポイントP0-P399があるかどうかをチェックする、簡単なユーティリティープログラムです。ポイントがなければ、それをユーザーに知らせるメッセージが画面に表示されます。各ポイントが定義されているか、CX命令を使ってテストしています。定義されていないポイントがあると、エラー処理に制御が移り、画面にそのポイントが定義されていないと表示します。

Function errtest
   Integer i, errnum
   Real x

   OnErr GoTo eHandle
   For i = 0 To 399
     x = CX(P(i))
   Next i
   Exit Function
'
'
'*********************************************
'* Error Handler                             *
'*********************************************
eHandle:
   errnum = Err
   '未定義ポイントを使用していないか確認
   If errnum = 7007 Then
      Print "Point number P", i, " is undefined!"
   Else
      Print "ERROR: Error number ", errnum, " Occurred."
   EndIf
   EResume Next
Fend