Local
 
错误处理语句设置当前错误处理程序

语法

On Local Error Goto label

说明

On Error构造中的Local子句允许在SubFunction中的Function中定义错误处理程序。

备注:目前,编译器忽略Local子句(仅在子/函数内部授权),并且错误处理程序可以在On [Local]错误所在的范围内,或者在模块的主要部分(如果在过程之前定义)。
异常如果使用-gen gcc:当On [Local]错误在子/函数内时,错误处理程序也必须始终在同一个过程之内。

例子

''用-lang fblite或qb编译

#lang "fblite"

Declare Sub foo

foo
Print "ok"
Sleep

Sub foo
  Dim errno As Integer
  On Local Error Goto fail
  Open "xzxwz.zwz" For Input As #1
  On Local Error Goto 0
  Exit Sub
fail:                  '这里启动错误处理程序
  errno = Err
  Print "错误"; errno      '只打印出错号
  Sleep
End Sub


与QB差别

  • LOCAL条款来自PDS 7.1。QB 4.5不允许本地错误处理。

参考