技術情報

アプリケーション開発ガイド -実行エラーをユーザプログラムで処理する(エラートラッピング)-

実行エラーを処理する(エラートラッピング)

機能

エラートラッピング機能を利用して、プログラムで実行エラーを処理します。

書式

詳細説明

通信などのプログラムでは、通常の使い方でも実行エラーの発生が想定されます。このような場合、エラートラッピング機能を使用して、ユーザプログラムで復帰処理を行います。

ON ERROR GOTOステートメントを使用すると、実行エラーを検出した際、特定の復帰処理を実行させることができます。

labelには、エラー処理ルーチンのラベル名を指定します。0を指定すると、エラートラッピング機能は無効となります。

returnlocationには、エラー処理後の戻り先を、下表の値で指定します。

指定値 エラー処理後の戻り先
指定しない 実行エラーの発生したステートメント
0 実行エラーの発生したステートメント
NEXT 実行エラーの発生したステートメントのすぐ次のステートメント
その他のラベル名 ラベル名で指定された行

ERR関数、ERL関数を使用すると、実行エラー要因とエラー発生行を確認することができます。エラー処理ルーチンの中で、エラー要因に応じた復帰処理を行うことができます。

使用例

ファイル送信エラーが発生したら、リトライする。

  private tempkey$                '変数を宣言
open "COM1:115200" as #1        '通信デバイスをオープン
out &h6060, 3
on error goto ERRCOM            '通信エラーが発生したら、ERRCOMへ
xfile "TEST1.DAT"               'ファイルを送信
on error goto 0
close #1
end
ERRCOM:
screen 1
print "送信エラー!"
print "CODE:";hex$(ERR);
print " ADDR:";hex$(ERL)
print "キーを押すと、"
print "リトライします";
tempkey$ = input$(1)
resume 0

お問合せ

QBdirect