Rational Developer for System z
Enterprise COBOL for z/OS バージョン 4.1 プログラミング・ガイド


例: データ項目の初期化

以下の例は、INITIALIZE ステートメントを使用して、英数字、国別編集、および数字編集データ項目を含めたいろいろな種類のデータ項目を初期化する方法を示しています。

INITIALIZE ステートメントは、機能の面で 1 つ以上の MOVE ステートメントと同等です。初期化に関する関連作業を見るならば、グループ項目に対して INITIALIZE ステートメントを使用して、 ある特定データ・カテゴリー内にあるすべての従属データ項目をどのように便利な方法で初期化できるかが分かります。

データ項目のブランクまたはゼロへの初期化:

INITIALIZE identifier-1

identifier-1 PICTURE identifier-1 (初期化前) identifier-1 (初期化後)
9(5) 12345 00000
X(5) AB123 bbbbb1
N(3) 0041004200312 0020002000203
99XX9 12AB3 bbbbb1
XXBX/XX ABbC/DE bbbb/bb1
**99.9CR 1234.5CR **00.0bb1
A(5) ABCDE bbbbb1
+99.99E+99 +12.34E+02 +00.00E+00
  1. 記号 b は、ブランク・スペースを表します。
  2. 国別 (UTF-16) 文字「AB1」の 16 進表記例では、identifier-1Usage National を持っていると想定しています。
  3. 国別 (UTF-16) 文字「  」(3 個のブランク・スペース) の 16 進表記。 identifier-1Usage National として定義されておらず、また NSYMBOL(DBCS) が有効である場合、INITIALIZE は代わりに DBCS スペース (「4040」)identifier-1 に保管することに注意してください。

英数字データ項目の初期化:

01  ALPHANUMERIC-1    PIC X    VALUE "y".
01  ALPHANUMERIC-3    PIC X(1) VALUE "A".
. . .
    INITIALIZE ALPHANUMERIC-1
        REPLACING ALPHANUMERIC DATA BY ALPHANUMERIC-3

ALPHANUMERIC-3 ALPHANUMERIC-1 (初期化前) ALPHANUMERIC-1 (初期化後)
A y A

英数字右揃えデータ項目の初期化:

01  ANJUST            PIC X(8)  VALUE SPACES  JUSTIFIED RIGHT.
01  ALPHABETIC-1      PIC A(4)  VALUE "ABCD".
. . .
    INITIALIZE ANJUST
        REPLACING ALPHANUMERIC DATA BY ALPHABETIC-1

ALPHABETIC-1 ANJUST (初期化前) ANJUST (初期化後)
ABCD bbbbbbbb1 bbbbABCD1
  1. 記号 b は、ブランク・スペースを表します。

英数字編集データ項目の初期化:

01  ALPHANUM-EDIT-1   PIC XXBX/XXX  VALUE "ABbC/DEF".
01  ALPHANUM-EDIT-3   PIC X/BB      VALUE "M/bb".
. . .
    INITIALIZE ALPHANUM-EDIT-1
        REPLACING ALPHANUMERIC-EDITED DATA BY ALPHANUM-EDIT-3

ALPHANUM-EDIT-3 ALPHANUM-EDIT-1 (初期化前) ALPHANUM-EDIT-1 (初期化後)
M/bb1 ABbC/DEF1 M/bb/bbb1
  1. 記号 b は、ブランク・スペースを表します。

国別データ項目の初期化:

01  NATIONAL-1        PIC NN  USAGE NATIONAL  VALUE N"AB".
01  NATIONAL-3        PIC NN  USAGE NATIONAL  VALUE N"CD".
. . .
    INITIALIZE NATIONAL-1
        REPLACING NATIONAL DATA BY NATIONAL-3

NATIONAL-3 NATIONAL-1 (初期化前) NATIONAL-1 (初期化後)
004300441 004100422 004300441
  1. 国別文字「CD」の 16 進表記
  2. 国別文字「AB」の 16 進表記

国別編集データ項目の初期化:

01  NATL-EDIT-1       PIC 0NN  USAGE NATIONAL  VALUE N"123".
01  NATL-3            PIC NNN  USAGE NATIONAL  VALUE N"456".
. . .
    INITIALIZE NATL-EDIT-1
        REPLACING NATIONAL-EDITED DATA BY NATL-3

NATL-3 NATL-EDIT-1 (初期化前) NATL-EDIT-1 (初期化後)
0034003500361 0031003200332 0030003400353
  1. 国別文字「456」の 16 進表記
  2. 国別文字「123」の 16 進表記
  3. 国別文字「045」の 16 進表記

数値 (ゾーン 10 進数) データ項目の初期化:

01  NUMERIC-1         PIC 9(8)        VALUE 98765432.
01  NUM-INT-CMPT-3    PIC 9(7)  COMP  VALUE 1234567.
. . .
    INITIALIZE NUMERIC-1
        REPLACING NUMERIC DATA BY NUM-INT-CMPT-3

NUM-INT-CMPT-3 NUMERIC-1 (初期化前) NUMERIC-1 (初期化後)
1234567 98765432 01234567

数値 (国別 10 進数) データ項目の初期化:

01  NAT-DEC-1         PIC 9(3)  USAGE  NATIONAL VALUE 987.
01  NUM-INT-BIN-3     PIC 9(2)  BINARY VALUE 12.
. . .
    INITIALIZE NAT-DEC-1
        REPLACING NUMERIC DATA BY NUM-INT-BIN-3

NUM-INT-BIN-3 NAT-DEC-1 (初期化前) NAT-DEC-1 (初期化後)
12 0039003800371 0030003100322
  1. 国別文字「987」の 16 進表記
  2. 国別文字「012」の 16 進表記

数字編集 (USAGE DISPLAY) データ項目の初期化:

01  NUM-EDIT-DISP-1   PIC $ZZ9V  VALUE "$127".
01  NUM-DISP-3        PIC 999V   VALUE 12.
. . .
    INITIALIZE NUM-EDIT-DISP-1
        REPLACING NUMERIC DATA BY NUM-DISP-3

NUM-DISP-3 NUM-EDIT-DISP-1 (初期化前) NUM-EDIT-DISP-1 (初期化後)
012 $127 $ 12

数字編集 (USAGE NATIONAL) データ項目の初期化:

01  NUM-EDIT-NATL-1   PIC $ZZ9V  NATIONAL VALUE N"$127".
01  NUM-NATL-3        PIC 999V   NATIONAL VALUE 12.
. . .
    INITIALIZE NUM-EDIT-NATL-1
        REPLACING NUMERIC DATA BY NUM-NATL-3

NUM-NATL-3 NUM-EDIT-NATL-1 (初期化前) NUM-EDIT-NATL-1 (初期化後)
0030003100321 00240031003200372 00240020003100323
  1. 国別文字「012」の 16 進表記
  2. 国別文字「$127」の 16 進表記
  3. 国別文字「$ 12」の 16 進表記

関連参照
NSYMBOL


ご利用条件 | フィードバック

このインフォメーション・センターでは Eclipse テクノロジーが採用されています。(http://www.eclipse.org)