4D v16.3

ASSERT

Inicio

 
4D v16.3
ASSERT

ASSERT 


 

ASSERT ( expresionBool {; textoMensaje} ) 
Parámetro Tipo   Descripción
expresionBool  Booleano in Expresión booleana
textoMensaje  Texto in Texto del mensaje de error

El comando ASSERTevalúa la aserción expresionBool pasada en parámetro y, si se vuelve falsa, interrumpe la ejecución del código y muestra un error.

El comando funciona en modo interpretado y en modo compilado.

Si la expresión es verdadera, no pasa nada. Si es falsa, el comando dispara el error -10518 y muestra por defecto el texto de la aserción precedido del mensaje "Aserción fallida:". Puede interceptar este error vía un método instalado utilizando el comando ON ERR CALL, para por ejemplo alimentar un archivo de historial.

El comando acepta un segundo parámetro opcional que puede utilizarse para proporcionar un texto que se mostrará en el mensaje de error en lugar de la expresión booleana cuando sea falsa.

Opcionalmente, puede pasar un parámetro textoMensaje para mostrar un mensaje de error personalizado en lugar del texto de la aserción.

Una aserción es un instrucción insertada en el código que es responsable de detectar posibles anomalías durante su ejecución. El principio consiste en verificar que una expresión es verdadera en un momento dado y en caso contrario, producir una excepción. Las aserciones se utilizan sobre todo para detectar casos que no deberían ocurrir nunca. Principalmente se utilizan para detectar bugs de programación. Es posible activar o desactivar globalmente todas las aserciones de una aplicación (por ejemplo de acuerdo al tipo de versión) vía el comando SET ASSERT ENABLED. Para más información acerca de las aserciones en programación, por favor consulte el artículo en Wikipedia: http://en.wikipedia.org/wiki/Assertion_(computing)

Antes de efectuar operaciones en un registro, el desarrollador quiere asegurarse de que está cargado en modo lectura/escritura:

 READ WRITE([Tabla 1])
 LOAD RECORD([Tabla 1])
 ASSERT(Not(Locked([Tabla 1])))
  // dispara el error -10518 si el registro está bloqueado

Una aserción permite probar los parámetros pasados a un método de proyecto para detectar los valores aberrantes. En este ejemplo, se utiliza un mensaje de alerta personalizado.

  // Método que devuelve el número de un cliente en función de su nombre pasado en $1
 C_TEXT($1// Nombre del cliente
 ASSERT($1#"";"Búsqueda de un nombre de cliente vacío")
  // Un nombre vacío en este caso es un valor aberrante
  // Si la aserción es falsa, se mostrará en la caja de diálogo el error:
  // "Aserción fallida: búsqueda de un nombre de cliente vacía"



Ver también 

Asserted
Get assert enabled
SET ASSERT ENABLED

 
PROPIEDADES 

Producto: 4D
Tema: Interrupciones
Número 1129

Este comando modifica la variable sistema ErrorThis command can be run in preemptive processes

 
HISTORIA 

Creado por: 4D v12

 
ARTICLE USAGE

Manual de lenguaje 4D ( 4D v16)
Manual de lenguaje 4D ( 4D v16.1)
Manual de lenguaje 4D ( 4D v16.2)
Manual de lenguaje 4D ( 4D v16.3)