ONWSOURCE() = string
または
ONWSOURCE = string
2 つ目の構文形式は、BUILTIN 属性を使用して ONWSOURCE を明示的に宣言している場合にのみ使用できます。
ONWSRC: PROC OPTIONS(MAIN);
DCL I FIXED BIN(15);
DCL CSTR CHAR(4);
DCL WSTR WCHAR(4);
ON CONVERSION BEGIN;
PUT SKIP LIST("ON CONVERSION TRIGGERED");
ONWSOURCE() = 'Err!';
END ;
WSTR = '9941004200430044'WX;
PUT SKIP LIST(HEX(WSTR));
CSTR = WSTR; /* '9941'wx conversion error */
PUT SKIP LIST(CSTR);
END;
次のように表示されます。
9941004200430044 ON CONVERSION TRIGGERED Err!
説明
ONWSOURCE 擬似変数は、CONVERSION 条件を発生させた無効な文字列を置換するのに使用されます。変換を再度実行するときには新しい文字列が使用されます。
ONWSOURCE 擬似変数は CONVERSION ON-unit のコンテキストでのみ有効になります。その他すべてのケースでは、ONWSOURCE 擬似変数は無視されます。