字段组

通常,输出数据显示字段必须包含多个子字段,所有子字段共享相同的显示属性,并且每个子字段可能必须单独修改。

在输出时,未被程序修改的子字段可以采用输出映射中的缺省数据值。 例如,显示可以包含 day 子字段, month 子字段和 year 子字段的日期字段。 年子字段的内容在相对较长的时间段内保持不变; 其值可以安全地从地图中获取。 但是,必须定期更新日值和月值。 同样,在输入时,终端操作员可以分别在每个子字段中输入数据。

您可以使用 GRPNAME 操作数来定义一组子字段,这些子字段组合在一起以生成字段。 组的开始由带有 GRPNAME 操作数的 DFHMDF 宏指示。 此操作数定义第一个子字段,并指定组的属性和名称。 后跟其他 DFHMDF 宏,每个子字段一个。 其中每个必须指定组名,但不能指定属性值。 组的定义由指定另一组名的 DFHMDF 宏终止,由不指定组名的 DFHMDF 宏终止,或由 DFHMDI 或 DFHMSD 宏终止。

简而言之,映射中的一组字段将在映射定义中显示如下:
MAPSET DFHMSD....
       .
       .
MAP    DFHMDI....
       .
       .
DD     DFHMDF GRPNAME=DATE,POS=40,
              LENGTH=2,ATTRB=...
       .
MM     DFHMDF GRPNAME=DATE,POS=46,
              LENGTH=2
       .
YY     DFHMDF GRPNAME=DATE,POS=52,
              LENGTH=2
       .
FIELD  DFHMDF LENGTH=5,COLOR=GREEN,...
       DFHMSD TYPE=FINAL

POS 操作数指定字段的属性字节的位置,即使除第一个以外的组的子字段没有属性也是如此。 如果子字段连续定位,并且没有中间空白,那么第二个子字段和后续子字段的 POS 必须指定前一个子字段的最后一个字符的位置。