VBScript - Tratamento de Erros

Existem três tipos de erros na programação: (a) Erros de sintaxe, (b) Erros de tempo de execução e (c) Erros lógicos.

Erros de sintaxe

Erros de sintaxe, também chamados de erros de análise, ocorrem no momento da interpretação do VBScript. Por exemplo, a linha a seguir causa um erro de sintaxe porque está faltando um parêntese de fechamento -

<script type = "text/vbscript">

   dim x,y
   x = "Tutorialspoint"
   y = Ucase(x

</script>

Erros de tempo de execução

Erros de tempo de execução, também chamados de exceções, ocorrem durante a execução, após a interpretação. Por exemplo, a linha a seguir causa um erro de tempo de execução porque aqui a sintaxe está correta, mas em tempo de execução ela está tentando chamar fnmultiply, que é uma função não existente -

<script type = "text/vbscript">
   Dim x,y
   x = 10
   y = 20
   z = fnadd(x,y)
   a = fnmultiply(x,y)
   
   Function fnadd(x,y)
      fnadd = x+y
   End Function

</script>

Erros lógicos

Os erros lógicos podem ser o tipo de erro mais difícil de rastrear. Esses erros não são o resultado de um erro de sintaxe ou de tempo de execução. Em vez disso, eles ocorrem quando você comete um erro na lógica que orienta seu script e não obtém o resultado esperado. Você não pode detectar esses erros, porque depende de seus requisitos de negócios que tipo de lógica você deseja colocar em seu programa. Por exemplo, dividir um número por zero ou um script escrito que entra em um loop infinito.

Err Object

AAssume que se houver um erro de tempo de execução, a execução será interrompida exibindo a mensagem de erro. Como desenvolvedor, se quisermos capturar o erro, entãoError O objeto é usado.

Exemplo

No exemplo abaixo, Err.Number dá o número do erro e Err.Description fornece a descrição do erro.

<script type = "text/vbscript">
  
  Err.Raise 6     ' Raise an overflow error.
  MsgBox "Error # " & CStr(Err.Number) & " " & Err.Description
  Err.Clear       ' Clear the error.

</script>