1

好的,所以我现在和这周正在参加在线 COBOL 课程,内容是控制中断和控制场......对于以前的讲座,我可以轻松理解,但我不知道这个讲座在说什么。什么是控制字段,用途是什么?谢谢。

以下是讲座网站:

http://flashserver.ait.iastate.edu/shchang/cobol/chapter10/chapter10u1/index.html

http://flashserver.ait.iastate.edu/shchang/cobol/chapter10/chapter10u2/index.html

http://flashserver.ait.iastate.edu/shchang/cobol/chapter10/chapter10u3/index.html

4

1 回答 1

8

控制字段是指示数据如何分组的字段。所有相同的控制字段值“属于一起”。控制字段值不属于它的“其他值”。

一个典型的例子可能是客户编号。同一客户编号的数据可以出于某种目的(未完成订单的总数等)在逻辑上组合在一起。

在您当前正在处理的客户中包含另一个客户的数据是不合逻辑的。

当控制字段值改变时,这是一个“控制中断”。在报告中,是时候做一些事情来与其他客户区分开来了,在这个例子中:打印一个总数,指出一些不同的行/页间距,以便用户“看到”“中断”。

您可以有多个控制字段。当更高的控制字段(例如,公司)发生变化时,在其下方的每个控制字段中都会出现“中断”,从最低级别的控制字段开始,按顺序“向上”。

数据通常会按控制字段排序(实际上,您会看到称为控制字段的 SORT 键),但这不是必需的,只要相同控制值的所有数据都是连续的。

文件可以具有控制字段和控制中断,它们可以由包含该中断“级别”的摘要信息的不同记录类型表示。

报告通常会有控制字段,其中包含要在控制中断上执行的特定操作。

01. 1111
02. 1111
03. 1111
04. 1111
05. 2222

在上面,记录号 05 “导致”了控制中断。需要先对控制值 1111 进行处理,然后才能处理记录号 05。

控制处理至少需要存储先前记录的控制字段(通常也称为“密钥”)。通常必须存储或累积其他数据。

有时您在读取下一条记录之前不知道如何处理一条记录,因此整个输入(或其中的所有必填字段)都被存储,并且记录被“一个落后”处理。

要永远记住的一件事是,“文件结尾”会导致最终的 Control Break,它是最高的,并且从最低点向上的所有 Control Break 处理都必须在该点完成。

于 2013-04-12T20:06:52.847 回答