系统变量

系统函数/调用 描述
ConverseVar.commitOnConverse 设置为 1 将导致在非分段程序发出转换之前在文本应用程序中提交并释放资源。对于非分段程序,缺省值为 0,对于分段程序,缺省值为 1。
ConverseVar.eventKey 标识一个键,用户按下该键以将表单返回至 EGL 文本或 Web 程序。
ConverseVar.printerAssociation 允许您在运行时打印一个打印表单时指定输出目标。
ConverseVar.segmentedMode 在文本应用程序中用于更改 converse 语句的效果,但在被调用程序中,忽略用于此用途的此变量。
ConverseVar.validationMsgNum 可用于文本应用程序,它包含由 ConverseLib.validationFailed 赋予的值。
sysVar.arrayIndex

包含数字:

  • 数组中的第一个与搜索条件相匹配的元素的编号,该搜索条件是带有 in 运算符的简单逻辑表达式。
  • 零,如果没有任何数组元素与搜索条件相匹配的话。
  • move ... for count 语句之后,在目标数组中修改的最后一个元素的编号。
sysVar.callConversionTable
包含一个转换表的名称,当程序在运行时执行下列操作时,此转换表用来转换数据:
  • 在调用中将自变量传递给远程系统上的程序
  • 当通过系统函数 sysLib.startTransaction 调用远程程序时传递自变量
  • 访问位于远程位置的文件
sysVar.errorCode

在发生下列任何一个事件之后接收状态码:

  • 调用 call 语句(如果该语句位于 try 块中的话)
  • 对索引文件、MQ 文件、相对文件或串行文件执行 I/O 操作
  • 在下列情况下,调用几乎任何系统函数:
    • 该调用位于 try 块中;或者
    • 程序正在以 VisualAge® Generator 兼容性方式运行,并且 VGVar.handleSysLibraryErrors 设置为 1
sysVar.formConversionTable 包含当 EGL 生成的 Java™ 程序执行下列操作时用于双向文本转换的转换表的名称:
  • 显示一个文本或打印表单,该表单包含一系列希伯莱语或阿拉伯语字符;或者
  • 显示一个文本表单,该表单从用户那里接受一系列希伯莱语或阿拉伯语字符。
sysVar.overflowIndicator 当发生算术溢出时设置为 1。通过检查此变量的值,可以测试溢出条件。
sysVar.returnCode 包含一个外部返回码,该返回码是由您的程序设置的,并且可供操作系统使用。
sysVar.sessionID 包含特定于 Web 应用程序服务器会话的标识。
sysVar.sqlState 包含最近完成的 SQL I/O 操作的 SQL 状态值。此代码是从 SQL 通信区(SQLCA)获取的,并可以随着关系数据库管理器的不同而有所变化。
sysVar.sqlca 包含整个 SQL 通信区(SQLCA)。
sysVar.sqlcode 包含最近完成的 SQL I/O 操作的返回码。此代码是从 SQL 通信区(SQLCA)获取的,并可以随着关系数据库管理器的不同而有所变化。
sysVar.systemType 标识要运行程序的目标系统。
sysVar.terminalID

对于 CICS® 上的 COBOL 代码,sysVar.terminalID 包含 CICS 终端标识。对于用于 z/OS® 批处理的 COBOL 代码,sysVar.connectionID 是空白的。

对于 iSeries™ 上的 COBOL 代码,sysVar.terminalID 被初始化为空白;并且,如果该代码是交互式的,则该变量被重置为通过查询活动作业属性接收到的终端设备名。

对于 Java 代码, sysVar.terminalID(与 sysVar.sessionID 相似) 是根据 Java 虚拟机系统属性 user.name 初始化的, 并且如果无法检索该属性,则 sysVar.terminalID 是空白的。

sysVar.transactionID 在 CICS 上,系统变量 sysVar.transactionID 的操作如下所示:
  • 更改在分段程序中的 converse 语句之后用来调用程序的事务标识。
  • 最初包含对构建描述符选项 restartTransactionID 指定的值或(在缺少该值的情况下)包含用于调用该程序的事务标识,但如果通过 transfer to program 格式的 transfer 语句来调用程序,则该变量最初包含启动传送程序的事务标识。

在所有其它平台上,不使用该变量;但如果程序是由 transfer to program 格式的 transfer 语句调用的,则该变量包含转移程序的名称。

sysVar.transferName 允许在运行时指定要转移至的程序或事务的名称。
sysVar.userID 包含环境中的用户标识(如果有的话)。
VGVar.currentFormattedGregorianDate 包含长格里历格式的当前系统日期。
VGVar.currentFormattedJulianDate 包含长儒略历格式的当前系统日期。
VGVar.currentFormattedTime 检索 HH:mm:mm 格式的当前系统时间。
VGVar.currentGregorianDate 包含 8 位格里历格式(yyyyMMdd)的当前系统日期。
VGVar.currentJulianDate 包含 7 位儒略历格式(yyyyDDD)的当前系统日期。尽量避免使用此变量,此变量用于支持从 VisualAge Generator 至 EGL 的代码迁移。
VGVar.currentShortGregorianDate 包含 6 位格里历格式(yyMMdd)的当前系统日期。尽量避免使用此变量,此变量用于支持从 VisualAge Generator 至 EGL 的代码迁移。
VGVar.currentShortJulianDate 包含 5 位儒略历格式(yyDDD)的当前系统日期。尽量避免使用此变量,此变量用于支持从 VisualAge Generator 至 EGL 的代码迁移。
VGVar.handleHardIOErrors

可按下列任一方式使用:

  • 作为赋值语句或 move 语句的源或目标(在 move 语句的“for count”中也是允许的)
  • 作为在 case 语句、if 语句或 while 语句中使用的逻辑表达式中的变量
  • 作为 return 语句或 exit 语句中的自变量
VGVar.handleOverflow 控制算术溢出后的错误处理。
VGVar.handleSysLibraryErrors 指定系统变量 sysVar.errorCode 的值是否受系统函数调用的影响。
VGVar.mqConditionCode 包含在对 MQ 记录执行 addscan I/O 操作之后进行的 MQSeries® API 调用的完成代码。
VGVar.sqlerrd 包含 6 个元素的静态数组,其中每个元素都包含从上一个 SQL I/O 选项返回的相应 SQL 通信区(SQLCA)值。
VGVar.sqlerrmc 包含与 sysVar.sqlcode 中的返回码相关联的错误消息的替换变量。
VGVar.sqlIsolationLevel 指示一个数据库事务相对于另一个数据库事务的独立级别,仅当要生成 Java 输出时才有意义。
VGVar.sqlWarn 包含 11 个元素的静态数组,其中每个元素包含在上一个 SQL I/O 操作的 SQL 通信区(SQLCA)中返回的警告字节,并且下标比 SQL SQLCA 描述中的警告编号大 1。
VGVar.systemGregorianDateFormat 8 个或 10 个字符的模式,它包括 dd(表示数字格式的天)、MM(表示数字格式的月份)和 yy 或 yyyy(表示数字格式的年份),并将 d、M、y 或数字以外的字符用作分隔符。
VGVar.systemJulianDateFormat 6 个或 8 个字符的模式,它包含 DDD(表示数字格式的天)和 yy 或 yyyy (表示数字格式的年份),并将 D、y 或数字以外的字符用作分隔符。
使用条款 | 反馈
(C) Copyright IBM Corporation 2000, 2005. All Rights Reserved.