この例は、コードページが 932 - SHIFT-JIS - Japanese であることを前提としています。
ONGSRC: PROC OPTIONS(MAIN);
DCL I FIXED BIN(15);
DCL CSTR CHAR(4);
DCL GSTR GRAPHIC(4);
ON CONVERSION BEGIN;
DCL BADSTR GRAPHIC(4);
PUT SKIP LIST("ON CONVERSION TRIGGERED");
BADSTR = ONGSOURCE();
PUT SKIP LIST (HEX(BADSTR));
ONGSOURCE() = 'Err!';
END ;
GSTR = '8989826182628263'GX;
PUT SKIP LIST(HEX(GSTR));
CSTR = GSTR; /* '8989'gx conversion error */
CSTR = GSTR;
PUT SKIP LIST(CSTR);
END;
次のように表示されます。
8989826182628263 ON CONVERSION TRIGGERED 8989826182628263 ON CONVERSION TRIGGERED 8989826182628263 Err!
説明
ONGSOURCE 関数は、CONVERSION 条件が発生したときに処理されていたフィールドのコンテキストの値を、グラフィック文字列として返します。
ONGSOURCE 関数は、CONVERSION 条件のために確立された ON ユニットにおいて使用できます。また、CONVERSION の ON ユニット でのエラー修正が失敗すると制御を得る、ERROR の ONユニット のために使用できます。
返される値は、可変長のグラフィック文字列です。