GLOBAL 子句

GLOBAL 子句指定数据名 或常量名 可用于 定义 它的程序中包含的每个程序,只要包含的程序本身没有该名称的 定义 。 与全局名关联的所有数据名 或常量名 或条件名或索引都是全局名。

如果在数据名称 或常量名称 定义为 的数据描述条目中或在该数据描述条目从属的另一条目中指定了 GLOBAL 子句,那么数据名称 或常量名称 是全局的。 可以在 WORKING-STORAGE SECTION , FILE SECTION ,链路 SECTION 和 LOCAL-STORAGE SECTION 中指定 GLOBAL 子句,但只能在级别号为 01 的数据描述条目中指定 GLOBAL 子句。

In the same DATA DIVISION, the data description entries for any two data items for which the same data-name 或常量名 is specified must not include the GLOBAL clause.

程序中直接或间接包含在描述全局名的程序中的语句可以引用该名称,而无需再次描述该名称。

如果随 GLOBAL 子句一起指定 TYPEDEF 子句,那么 GLOBAL 子句的作用域将应用于 type-name ,并应用于该 type-name 从属的任何数据项。 通过在 TYPE 子句中使用全局类型名称定义的数据项不会获取全局属性。

在以下情况下,运行单元中的两个程序可以引用公共数据:

  • 可以从任何将数据记录描述为外部的程序引用外部数据记录的数据内容。
  • 如果一个程序包含在另一个程序中,那么这两个程序都可以引用在包含程序中或在直接或间接包含包含该包含程序的任何程序中具有全局属性的数据。