close

EGL close 语句与打印机断开连接;或者关闭与给定记录相关联的文件或消息队列;或者,对于 SQL 记录,关闭由 EGL openget 语句打开的游标。

close 语句的语法图
name
与在被关闭的资源相关联的 I/O 对象的名称:该对象是打印表单或者带索引记录、MQ 记录、相对记录、串行记录或 SQL 记录
resultSetIdentifier
(仅适用于 SQL 处理)这是一个标识,它使 close 语句与同一程序中之前运行的 getopen 语句相关。有关详细信息,请参阅 resultSetID

示例:

	 if (userRequest == "C")
     try
       close fileA;
     onException
        myErrorHandler(12);
     end
	 end 

close 语句的行为取决于 I/O 对象的类型。

带索引记录、串行记录或相对记录

当在 close 语句中使用带索引记录、串行记录或相对记录的名称时,EGL 将关闭与该记录相关联的文件。

如果文件已打开并且您使用 fileAssociation 项来更改与该文件相关联的资源名称,则 EGL 会在执行下一个影响该文件的语句之前自动关闭该文件。有关详细信息,请参阅 resourceAssociation

当程序结束时,EGL 还会关闭任何已打开的文件。

MQ 记录

当在 close 语句中使用 MQ 记录的名称时,EGL 确保会对与该记录相关联的消息队列执行 MQSeries® 命令 MQCLOSE。

打印表单

如果 I/O 对象是打印表单,则 close 语句发出换页,并且与打印机断开连接或者(如果该打印表单被假脱机至一个文件的话)关闭该文件。

在使用 ConverseVar.printerAssociation 来更改打印目标之前,请关闭由 ConverseVar.printerAssociation 的当前值指定的打印机或文件。由于可以同时打开多个打印机或打印文件,所以,对每个打印目标发出 close 语句选项。

EGL 运行时确保程序结束时所有打印机都已关闭。

SQL 记录

当在 close 语句中使用 SQL 记录的名称时,EGL 将关闭对该记录打开的 SQL 游标。

在下列情况下,EGL 自动关闭游标:

在下列情况下,EGL 关闭所有已打开的游标:
  • 程序具有 textUI 类型并且在转换表单之前执行自动落实;有关 textUI 程序和 converse 语句的详细信息,请参阅分段
使用条款 | 反馈
(C) Copyright IBM Corporation 2000, 2005. All Rights Reserved.