割り当て - ONWSOURCE 擬似変数

目的

ONWSOURCE 組み込み関数の現在の値を設定します。

構文

ONWSOURCE() = string 

または

ONWSOURCE = string

2 つ目の構文形式は、BUILTIN 属性を使用して ONWSOURCE を明示的に宣言している場合にのみ使用できます。

パラメーター

string
ワイド文字文字列に変換される式。CONVERSION 条件を発生させたフィールドの長さが、string の長さよりも大きい場合、string に空白文字が埋め込まれます。フィールドの長さが string の長さよりも小さい場合、フィールド長に合わせて string は切り捨てられます。

説明

ONWSOURCE 擬似変数は、CONVERSION 条件を発生させた無効な文字列を置換するのに使用されます。変換を再度実行するときには新しい文字列が使用されます。

ONWSOURCE 擬似変数は CONVERSION ON-unit のコンテキストでのみ有効になります。その他すべてのケースでは、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!

制限事項

なし。