holas a todos como estan mieren puestengo un pequeño lio con triggers generales aqui les va mi duda espero me puedan ayudar tengo una funcion x q calcula salario y montos, y otra q me controla los presupuestos es caso es q ambas tienen se ser ejecutadas cuando se dispare un trigger pero no se como hacerlo el codigo es el siguiente:
Código PHP:
CREATE FUNCTION ctrl_presup () RETURNS TRIGGER AS '
BEGIN
--controlando
if (new.monto_ejecutado>new.monto_presupuesto)
THEN
RAISE EXCEPTION ''no puede haber un monto presupuestado mayor al ejecutado'';
END IF;
RETURN NEW;
END;
' LANGUAGE 'plpgsql';
CREATE FUNCTION ctrl_presp_finan_rec_eco () RETURNS TRIGGER AS '
DECLARE
presp integer;
BEGIN
SELECT e.presupuesto
FROM entidadfinanciera e,recursoeconomico r
WHERE e.cod_entidad_finan=r.cod_entidad_finan AND e.cod_entidad_finan = new.cod_entidad_finan;
presp=presupuesto;
--controlando que coinsidan los montos presupuestados
if (new.monto_presupuesto!=presp)
then new.monto_presupuesto=pres;
end if;
RETURN NEW;
END;
' LANGUAGE 'plpgsql';
REATE TRIGGER ctrl_presp_finan_rec_eco BEFORE INSERT OR UPDATE ON recursoeconomico
[COLOR=Black]FOR EACH ROW EXECUTE PROCEDURE ctrl_presp_finan_rec_eco();
FOR EACH ROW EXECUTE PROCEDURE ctrl_presup();[/COLOR]
como veran el unico problema q tengo es al hacer corre las lines for each, gracias a todos
suerte