使用数据项和组项
相关数据项可以是分层数据结构的一部分。 没有下级数据项的数据项称为 基本项。 由一个或多个下级数据项组成的数据项称为 组项。
关于此任务
记录可以是基本项或组项。 组项可以是 字母数字组项 或 国家组项。
例如, Customer-Record 在下面的代码中,是一个字母数字组项,它由两个下级字母数字组项组成(Customer-Name 和 Part-Order),每个部分都包含基本数据项。 这些组项隐式具有 USAGE
DISPLAY。 如以下代码所示,您可以在 PROCEDURE DIVISION 的 MOVE 语句中引用整个组项或组项的部分内容:
Data Division.
File Section.
FD Customer-File
Record Contains 45 Characters.
01 Customer-Record.
05 Customer-Name.
10 Last-Name Pic x(17).
10 Filler Pic x.
10 Initials Pic xx.
05 Part-Order.
10 Part-Name Pic x(15).
10 Part-Color Pic x(10).
Working-Storage Section.
01 Orig-Customer-Name.
05 Surname Pic x(17).
05 Initials Pic x(3).
01 Inventory-Part-Name Pic x(15).
. . .
Procedure Division.
Move Customer-Name to Orig-Customer-Name
Move Part-Name to Inventory-Part-Name
. . .
您可以将 Customer-Record 定义为由两个下级国家组项组成的国家组项,方法是更改 DATA
DIVISION 中的声明,如下代码所示。 国家组项的行为方式与大多数操作中的基本类别国家数据项的行为方式相同。 GROUP-USAGE
NATIONAL 子句指示组项及其从属的任何组项都是国家组。 必须显式或隐式地将国家组中的下级基本项描述为 USAGE NATIONAL。
Data Division.
File Section.
FD Customer-File
Record Contains 90 Characters.
01 Customer-Record Group-Usage National.
05 Customer-Name.
10 Last-Name Pic n(17).
10 Filler Pic n.
10 Initials Pic nn.
05 Part-Order.
10 Part-Name Pic n(15).
10 Part-Color Pic n(10).
Working-Storage Section.
01 Orig-Customer-Name Group-Usage National.
05 Surname Pic n(17).
05 Initials Pic n(3).
01 Inventory-Part-Name Pic n(15) Usage National.
. . .
Procedure Division.
Move Customer-Name to Orig-Customer-Name
Move Part-Name to Inventory-Part-Name
. . .
在之前的示例中,分组项可以在分组级别指定 USAGE
NATIONAL 子句。 组级别的 USAGE 子句适用于组中的每个基本数据项 (因此充当方便的速记符号)。 然而,一个指定 USAGE NATIONAL 尽管该组内有基本项目的代表,但该条款并不是一个国家组。 指定 USAGE 子句的组是字母数字组,在许多操作中(如移动和比较)的行为与 USAGE DISPLAY 的基本数据项相同(但无法编辑或转换数据)。