select extract(days from now() - date (fecha_estimada_entrega)) from "Zalamero_proyecto" a; select * --delete from "PASO"; /* DROP FUNCTION ActualizaEstatus() cascade; CREATE FUNCTION ActualizaEstatus() RETURNS trigger AS $ActualizaEstatus$ BEGIN if NEW.estatus_id!=4 then IF ( extract(days from now() - date (NEW.fecha_estimada_entrega)) ) > 7 THEN NEW.estatus_id := 3; elseiF ( extract(days from now() - date (NEW.fecha_estimada_entrega)) ) between 4 and 7 THEN NEW.estatus_id := 2; elseIF ( extract(days from now() - date (NEW.fecha_estimada_entrega)) ) < 4 THEN NEW.estatus_id := 1; end if; end if; RETURN NEW; END; $ActualizaEstatus$ LANGUAGE plpgsql; CREATE TRIGGER ActualizaEstatus before INSERT OR UPDATE ON "Zalamero_proyecto" FOR EACH ROW EXECUTE PROCEDURE ActualizaEstatus(); ALTER FUNCTION ActualizaEstatus() OWNER TO "Produccion"; */ --- comprobacion select estatus_id!=4, EXTRACT(DOY FROM now()) - EXTRACT(DOY FROM fecha_inicio) as "dias de diferencia Hoy y fecha inicio" , case when extract(days from now() - date (fecha_estimada_entrega)) > 7 then (select nombre from "Zalamero_estatus" where id = 3) when extract(days from now() - date (fecha_estimada_entrega)) between 4 and 7 then (select nombre from "Zalamero_estatus" where id = 2) when extract(days from now() - date (fecha_estimada_entrega)) < 4 then (select nombre from "Zalamero_estatus" where id = 1) end "esta es la buena" , extract(days from (now() - date (fecha_estimada_entrega))) as "diferencia entre FEE y hoy" , EXTRACT(DOY FROM now()) - EXTRACT(DOY FROM fecha_estimada_entrega) hoy , a.*, now() from "Zalamero_proyecto" a --where id = 10