常に有効です。
CONVERSION が発生する場合、結果フィールド全体の内容は未定義です。
文字データに対して無効な変換が試行された場合に発生します。この試行は、数値変数への文字データの直接割り当て時または入出力操作時に実行できます。たとえば、固定長バイナリ値に変換される文字値に数値以外の文字が含まれている場合や、0 または 1 以外の文字がビット データ型に変換される場合に、この条件を発生させることができます。
CONVERSION ON-unit で ONSOURCE、ONCHAR、ONGSOURCE、および ONWSOURCE 疑似変数を使用して、変換エラーを修正できます。
文字データの変換は、すべて左から右の順に 1 文字単位で実行されます。この条件は、無効な文字があるごとに、およびすべての文字が空白の場合に発生します。ただし、次の例外があります。
NULL 文字列または 1 つ以上の空白からなる文字列が数値変数に割り当てられる場合、CONVERSION 条件は発生しません。
CONVERSION 条件が発生すると、ONSUBCODE 組み込み関数は問題のある文字またはグラフィックの索引を返します。
無効な文字が出現した場合は、ONSOURCE または ONCHAR 擬似変数を使用して ON-unit 内で無効な文字を置き換えることができます。
CONVERSION 条件が発生して無効になっている場合、これはプログラムにエラーがあることを意味します。
擬似変数を使用して変換エラーを修正しない場合、プログラムはループします。