Cita:
Empezado por IVAND
Como valida estos los companeros que trabajan ya con firebird 3 y los componentes IBX uso delphi 2009
|
Es que no hay ninguna diferencia, es igual. Yo tengo programas con firebird 3, 4 y 5 y funciona igual, salta el mensaje de excepción que pongas.
Aunque se me está ocurriendo que a partir de cierta versión, que no recuerda cuál, los mensajes tienes que declararlos como excepción para poder llamarlos.
A ver si es eso lo que te está ocurriendo.
Código SQL
[-] CREATE EXCEPTION ex_cantidad_invalida 'Valor inválido en el campo cantidad.';
Código SQL
[-]CREATE OR ALTER TRIGGER trg_check_cantidad
BEFORE INSERT OR UPDATE
ON tbVentas
AS
BEGIN
IF (NEW.cantidad < 0) THEN
BEGIN
-- Lanza una excepción personalizada
EXCEPTION ex_cantidad_invalida 'La cantidad debe ser mayor que cero.';
END
END;
El texto que se define al crear la excepción sirve como un mensaje predeterminado, y el texto que se usa al lanzar la excepción dentro del trigger puede ser un mensaje más específico o detallado para esa situación particular.