示例: 初始化数据项
以下示例显示如何使用 INITIALIZE 语句来初始化多种类型的数据项,包括字母数字,本地编辑和数字编辑的数据项。
INITIALIZE 语句在功能上等同于一个或多个 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 |
|
||
初始化字母数字数据项:
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 |
|
||
初始化由字母数字编辑的数据项:
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 |
|
||
初始化国家或区域数据项:
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
INITIALIZE NATIONAL-1 NATIONAL TO VALUE
NATIONAL-3 |
第一个 INITIALIZE 之前的 NATIONAL-1 |
首次 INITIALIZE 后的 NATIONAL-1 |
NATIONAL-1 在第二次 INITIALIZE 之后 |
|---|---|---|---|
430044001 |
410042002 |
430044001 |
41004200 |
|
|||
初始化国家编辑的数据项:
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 |
|
||
初始化数字 (分区十进制) 数据项:
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 |
初始化数字 (本地十进制) 数据项:
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 |
|
||
初始化数字编辑 (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-EDITED 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-EDITED DATA BY NUM-NATL-3
NUM-NATL-3 |
NUM-EDIT-NATL-1 早于 |
NUM-EDIT-NATL-1 晚于 |
|---|---|---|
3000310032001 |
24003100320037002 |
24002000310032003 |
|
||