例外状態処理の構文(WHEN EXCEPTION IN) ☆
WHEN EXCEPTION IN
when本体
USE
例外処理区
END WHEN
when本体
WHEN EXCEPTION IN行とUSE行の間をwhen本体という。
when本体の実行が正常に終了すると,END WHENの次の行に分岐する。
when本体の実行中に例外が発生すると,例外処理区に分岐する。
例外処理区
USE行と END WHEN行の間の行を例外処理区という。
END WHEN行を実行すると例外処理区を抜けて次の行に進む。
例外処理区の外へGOTO文などで分岐することはできない。
例外処理区では,次の文が利用できる。
RETRY
例外を引き起こした行から実行を再開する。
CONTINUE
例外を引き起こした行の次の行から実行を再開する。ただし,構文の始まり,あるいはその一部となる行で例外が起きたときは,その構文の終わりの行の次の行から実行を再開する。たとえば,FOR行で例外が起きたときはNEXT行の次の行から実行を再開する。ELSEIF行で例外が起きたときは,対応するEND IF行の次の行から実行を再開する。