Rational Developer for System z
Enterprise PL/I for z/OS, Version 3.8, 言語解説書

ゼロ消去

ピクチャー文字 Z とアスタリスク (*) は、文字値の条件付き数字桁を指定します。これを 使用すれば、先行ゼロをアスタリスクまたはブランクで置き換えることができます。 先行ゼロとは、固定小数点数の左端の数字桁または 浮動小数点数の 2 つの部分の左端にある数字桁に入っているゼロのうち、 仮想小数点の左側にあり、しかもその前に 1 から 9 の数字がないようなゼロのことです。 数字の左端にあるゼロ以外の桁、および数値の右側にあるすべての桁 (ゼロであっても ゼロでなくてもかまわない) は、有効数字を表します。

Z
条件付き数字桁を指定するもので、データのこの位置に先行ゼロがあれば、それはブランクで置き換えられます。 先行ゼロ以外の数字はそのまま変りません。 ピクチャー文字 Z は、ピクチャー文字 * または浮動文字が記入されているのと同 じフィールド内に記入することはできません。また、フィールド内で任意のピクチャー文 字の右側に記入することもできません。
*
条件付き数字桁を指定します。 先行ゼロがアスタリスクで置き換えられる点を除けば、その使用方法はピクチャー文字 Z と同じです。 ピクチャー文字 * は、ピクチャー文字 Z や浮動文字が記入されているのと同じフ ィールド内に記入することはできません。また、フィールド内で任意のピクチャー文字の 右側に記入することもできません。

表 37 に、ゼロ抑制文字の例を示します。

表 37. ゼロ抑制文字の例
 
ソース属性
ソース・データ
(定数フォーマット)
 
ピクチャー指定
 
文字値
FIXED(5)
FIXED(5)
FIXED(5)
12345
00100
00100
ZZZ99
ZZZ99
ZZZZZ
12345
bb100
bb100
FIXED(5)
FIXED(5,2)
FIXED(5,2)
00000
123.45
001.23
ZZZZZ
ZZZ99
ZZZV99
bbbbb
bb123
bb123
FIXED(5)
FIXED(5,2)
FIXED(5,2)
12345
000.08
000.00
ZZZV99
ZZZVZZ
ZZZVZZ
未定義
bbb08
bbbbb
FIXED(5)
FIXED(5)
FIXED(5,2)
00100
00000
000.01
*****
*****
***V**
**100
*****
***01
FIXED(5,2)
FIXED(5,2)
95
12350
$**9.99
$**9.99
$**0.95
$123.50
注:
文字値が未定義のときは、SIZE 条件が起こります。

ピクチャー文字 Z またはアスタリスクをピクチャー文字 V の右側に記入するときは、その指定 の小数部分の全数字桁と整数部分の全数字桁に、それぞれ Z またはアスタリスク・ピクチャー 文字を記入しなければなりません。 ピクチャー文字 V の右側にある全数字桁がゼロ消去ピクチャー文字であるとき、値の小数部分のゼロが抑制されるのは、小数部分のすべての桁にゼロが入っており、しかも整数部分のすべての桁が抑制されたときだけです。 したがって、そのデータ項目の文字値はブランクまたはアスタリスクだけになります。 小数部分に 1 つでも有効数字が含まれているときは、小数部分の数字はブランクやアスタリスクでは置き換えられません。


Terms of use | Feedback

This information center is powered by Eclipse technology. (http://www.eclipse.org)