Rational Developer for System z
COBOL for Windows バージョン 7.5 プログラミング・ガイド


例: データ項目の初期化

以下の例は、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) 4100420031002 2000200020003
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-16LE エンコードでの、 国別 (UTF-16) 文字「AB1」の 16 進表記。 例では、identifier-1Usage National を持っていると想定しています。
  3. UTF-16LE エンコードでの、 国別 (UTF-16) 文字「  」(3 個のブランク・スペース) の 16 進表記。 identifier-1Usage National として定義されておらず、また NSYMBOL(DBCS) が有効である場合、INITIALIZE は代わりに DBCS スペース (「2020」) を 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 (初期化後)
430044001 410042002 430044001
  1. UTF-16LE エンコードでの、 国別文字「CD」の 16 進表記。
  2. UTF-16LE エンコードでの、 国別文字「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 (初期化後)
3400350036001 3100320033002 3000340035003
  1. UTF-16LE エンコードでの、 国別文字「456」の 16 進表記。
  2. UTF-16LE エンコードでの、 国別文字「123」の 16 進表記。
  3. UTF-16LE エンコードでの、 国別文字「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 3900380037001 3000310032002
  1. UTF-16LE エンコードでの、 国別文字「987」の 16 進表記。
  2. UTF-16LE エンコードでの、 国別文字「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 (初期化後)
3000310032001 24003100320037002 24002000310032003
  1. UTF-16LE エンコードでの、 国別文字「012」の 16 進表記。
  2. UTF-16LE エンコードでの、 国別文字「$127」の 16 進表記。
  3. UTF-16LE エンコードでの、 国別文字「$ 12」の 16 進表記。

関連タスク
構造の初期化 (INITIALIZE)
テーブルの初期化 (INITIALIZE)
数値データの定義

関連参照
NSYMBOL


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

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