4D v14.3

ASSERT

Página Inicial

 
4D v14.3
ASSERT

ASSERT 


 

ASSERT ( expressaoBool {; mensagemTexto} ) 
Parâmetro Tipo   Descrição
expressaoBool  Booleano in Expressão Booleana
mensagemTexto  Texto in Texto de mensagem de erro

O comando ASSERT permite localizar uma asserção no código de um método.

Uma asserção é uma instrução inserida no código que é responsável de detectar possíveis anomalias durante sua execução. O princípio consiste em verificar que uma expressão é verdadeira em um momento dado e caso contrário, produzir uma exceção. As asserções são utilizadas especialmente para detectar casos que não deveriam ocorrer nunca. Principalmente são utilizadas para detectar bugs de programação. É possível ativar ou desativar globalmente todas as asserções de uma aplicação (por exemplo de acordo ao tipo de versão) através do novo comando SET ASSERT ENABLED

Para maior informação sobre asserções em programação, consulte o artigo de Wikipedia: http://en.wikipedia.org/wiki/Assertion_(computing) ou http://pt.wikipedia.org/wiki/Asserção

O comando ASSERT avalia a expressão booleana passada como parâmetro. Se a expressão é verdadeira, não acontece nada. Se for falsa, o comando desencadeia o erro -10518 e mostra o texto da asserção precedido da mensagem "Asserção falhou:". Pode gerenciar este erro através de um método instalado utilizando o comando ON ERR CALL, para por exemplo alimentar um arquivo de histórico.

O comando aceita um segundo parâmetro opcional que pode ser utilizado para proporcionar um texto que será mostrado na mensagem de erro ao invés da expressão booleana quando for falsa.

Antes de realizar operações em um registro, o desenvolvedor deseja ter certeza de que está carregado em modo leitura/escritura:

 READ WRITE([Tabela 1])
 LOAD RECORD([Tabela 1])
 ASSERT(Not(Locked([Tabela 1])))
  // dispara o erro -10518 se o registro está bloqueado

Uma asserção permite provar os parâmetros passados a um método de projeto para detectar os valores aberrantes. Neste exemplo, é utilizado uma mensagem de alerta personalizado.

  // Método que retorna o número de um cliente em função de seu nome passado em $1
 C_TEXT($1// Nome do cliente
 ASSERT($1#"";"Pesquisa de um nome de cliente vazio")
  // Um nome vazio neste caso é um valor aberrante
  // Se a asserção é falsa, se mostrará na caixa de diálogo o erro:
  // "Asserção falhou: pesquisa de um nome de cliente vazia"

 
PROPRIEDADES 

Produto: 4D
Tema: Interrupções
Número 1129

Este comando modifica a variável sistema Error

 
HISTÓRIA 

Criado por: 4D v12

 
VER TAMBÉM 

Asserted
Get assert enabled
SET ASSERT ENABLED

 
ARTICLE USAGE

Manual de linguagem 4D ( 4D v12.4)
Manual de linguagem 4D ( 4D v14 R3)
Manual de linguagem 4D ( 4D v14 R2)
Manual de linguagem 4D ( 4D v13.5)
Manual de linguagem 4D ( 4D v14.3)
Manual de linguagem 4D ( 4D v14 R4)