程序部件属性

被调用程序和主程序具有不同的部件属性,即便同为主程序,基本类型和文本用户界面类型的主程序的部件属性也各不相同。属性如下所示:
alias = "alias"
一个字符串,它包含在生成的输出的名称中。如果未设置 alias 属性,则会使用程序部件名。

alias 属性在任何程序中都可用。

allowUnqualifiedItemReferences = no, allowUnqualifiedItemReferences = yes
指定是否允许代码在引用结构中的项时省略容器和子结构限定符。

allowUnqualifiedItemReferences 属性在任何程序中都可用。

例如,请参照以下记录部件:
  Record aRecordPart type basicRecord
    10 myItem01 CHAR(5);
    10 myItem02 CHAR(5);
  end
以下变量基于该部件:
  myRecord aRecordPart;
如果接受 allowUnqualifiedItemReferences 的缺省值(no),则在引用 myItem01 时必须指定记录名,如以下赋值所示:
  myValue = myRecord.myItem01;
然而,如果将属性 allowUnqualifiedItemReferences 设置为 yes,则无需指定记录名:
  myValue = myItem01;

建议您接受缺省值,这样有助于实现最佳实践。通过指定容器名,可以减少对阅读代码的人以及对 EGL 造成的歧义。

EGL 使用一组规则来确定变量名或项名所引用的内存区域。有关详细信息,请参阅对变量和常量的引用

handleHardIOErrors = yes, handleHardIOErrors = no
设置系统变量 VGVar.handleHardIOErrors 的缺省值。该变量控制在 try 块中的 I/O 操作发生硬错误后程序是否继续运行。该属性的缺省值为 yes,它将该变量设置为 1。

从 VisualAge® Generator 迁移的代码可能不会像以前一样工作,除非将 handleHardIOErrors 设置 no,这会将该变量设置为 0。

此属性在任何程序中可用。有关其它详细信息,请参阅 VGVar.handleHardIOErrors异常处理

includeReferencedFunctions = no, includeReferencedFunctions = yes
指示程序是否包含每个既不在程序中也不在程序所访问的库中的函数的副本。

includeReferencedFunctions 属性在任何程序中都可用。

缺省值为 no,这表示如果在开发时按照建议遵守以下惯例,则可以忽略此属性:
  • 将共享函数放在库中
  • 将非共享函数放在程序中

如果正在使用不在库中的共享函数,则仅当将属性 includeReferencedFunctions 设置为 yes 时才有可能进行生成。

inputForm = "formName"
标识在程序逻辑运行之前显示给用户的表单,如输入表单中所述。

inputForm 属性仅在主文本用户界面程序中可用。

inputRecord = "inputRecord"
标识程序自动初始化的全局基本记录,该记录可以从使用 transfer 语句来转移控制权的程序接收数据。有关其它详细信息,请参阅输入记录

inputRecord 属性在任何主程序中都可用。

localSQLScope = yes, localSQLScope = no
指示 SQL 结果集和预编译语句的标识对于程序是不是局部的(在缺省情况下是局部的)。如果接受值 yes,则表示不同程序可独立使用相同的标识。

如果指定 no,则标识在整个运行单元中共享。在当前代码中创建的标识在其它地方也是可用的,尽管其它代码可使用 localSQLScope = yes 来阻止访问这些标识。而且,当前代码可以引用在其它位置创建的标识,但仅当其它代码已经运行并且没有阻止访问时才会如此。

共享 SQL 标识的影响如下所示:
  • 可以在一个程序中打开某个结果集并从另一个程序中获取该结果集中的行
  • 可以在一个程序中预编译某个 SQL 语句并且在另一个程序中运行该语句

localSQLScope 属性在任何程序中可用。

msgTablePrefix = "prefix"
指定用作程序消息表的数据表的名称的第一个到第四个字符。名称中的其它字符与 EGL 源格式的 DataTable 部件中列示的其中一个本地语言代码相对应。

msgTablePrefix 属性在任何基本程序或文本用户界面程序中都可用。

在 Web 应用程序中运行的程序不使用消息表,但使用 JavaServer Faces 消息资源。有关该资源的详细信息,请参阅下列主题中有关 msgResource 属性的描述:
  • EGL 源格式的 PageHandler 部件
segmented = no, segmented = yes
指示程序是否是分段程序,分段对该类程序作了说明。在主文本用户界面程序中,缺省值为 no。在其它类型的程序中,该属性无效。
throwNrfEofExceptions = no, throwNrfEofExceptions = yes

指定软错误是否导致抛出异常。缺省值为 no。有关背景知识信息,请参阅异常处理

相关概念
程序部件
引用 EGL 中的变量
文本应用程序中的分段

相关参考
EGL 源格式的 DataTable 部件
异常处理
forward
输入表单
输入记录
命名约定
EGL 源格式的 PageHandler 部件
语法图

VGVar.handleHardIOErrors

使用条款 | 反馈
(C) Copyright IBM Corporation 2000, 2005. All Rights Reserved.