Erf$函数

返回发生错误的函数名。

格式
Erf$ [(任务编号)]

参数

任务编号
以0~32的整数值指定任务编号。省略或“0”时,为当前任务。

返回值
返回最后发生错误的函数名。

说明
Erf$可以与OnErr一起使用。Erf$用于返回发生错误的函数名。通过将Erf$与 Err、Ert、Erl、Era等进行组合,可以就发生的错误收集更详细的信息。

如果在自动运转模式(AUTO)的一般任务与NoPause任务中出现“自动运转期间发生错误”,将中断执行并结束任务。如果在NoEmgAbort任务或后台任务中使用本函数时已结束对象任务,将发生“错误2261”。如要在任务结束之前获取信息,请使用OnErr。

参阅
Era, Erl, Err, ErrMsg$, Ert, OnErr, Trap

Erf$函数使用示例
下述为调查如下内容的简单程序。

  • 是在哪一任务中发生了错误(Ert函数)
  • 是在哪一函数中发生了错误(Erf$函数)
  • 是在哪里发生的(Erl函数)
  • 在哪个关节上发生了错误(Era函数)
Function main
  OnErr Goto eHandler
  Do
    Call PickPlace
  Loop
  Exit Function
eHandler:
  Print "The Error code is ", Err
  Print "The Error Message is ", ErrMsg$(Err)
  errTask = Ert
  If errTask > 0 Then
    Print "Task number in which error occurred is ", errTask
    Print "Function at which error occurred is ", Erf$(errTask)
    Print "The line where the error occurred is Line ", Erl(errTask)
    If Era(errTask) > 0 Then
      Print "Joint which caused the error is ", Era(errTask)
    EndIf
  EndIf
Fend