Ver Mensaje Individual
  #1 (permalink)  
Antiguo 20/05/2005, 10:11
Avatar de rockobop
rockobop
 
Fecha de Ingreso: octubre-2004
Ubicación: Bolivia
Mensajes: 826
Antigüedad: 19 años, 6 meses
Puntos: 1
un trigger q llama a varias funciones

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