Mira tengo lo siguiente, cada vez que actualizo retorno null sitodo sale
bien, en caso contrario le indico que me devuelda un mensaje..

CREATE OR REPLACE FUNCTION cl_cargo_modifica(mcodigo integer, mnombre
character varying, mfirma character varying, mclinica integer)
  RETURNS character varying AS
$BODY$
DECLARE
    mfecha    timestamp;
    mcg_cod   integer;
BEGIN
    select into mfecha current_date;

    UPDATE cargo SET
        cg_nombre= mnombre ,
        cg_modificado=mfecha,
        cg_modificado_por=mfirma
    WHERE cg_cod = mcodigo
    AND cl_cod = mclinica;

    IF NOT FOUND THEN
        RAISE EXCEPTION 'Error al Tratar de Modificar el cargo ((%))',
mnombre;
        RAISE NOTICE 'Error al Tratar de Modificar el cargo ((%))', mnombre;
        RETURN EXCEPTION;
    END IF;

    RETURN NULL;
END;
$BODY$
  LANGUAGE 'plpgsql' VOLATILE

espero que te sirva

-- 
Cesar Erices Vergara
Ingeniero en Gestión Informática
Analista de Sistema

Santiago - Chile

Reply via email to