Ver Mensaje Individual
  #1 (permalink)  
Antiguo 22/02/2007, 21:56
Fabian olmos
 
Fecha de Ingreso: enero-2003
Ubicación: Caracas
Mensajes: 439
Antigüedad: 21 años, 3 meses
Puntos: 0
Calculo De Horas Trabajadas

hola que tal a todos, disculpen la moletsia pero necesito ayuda con esto. yo necesito crear una funcion que me permita sacar de un rango de fecha el numero de dias que hay excluyendo a los dias feriados y los dias (sabado y domingo) para luego multiplicarlo por la cantidad de horas que trabaja en el dia para que asi me de el total de horas laboradas en ese rango.

he estado probando algo pero que va no me da

esto es lo que he hecho

CREATE OR REPLACE FUNCTION acceso.rango(date) RETURNS date AS $$
DECLARE
a INTEGER :=0;
fecha DATE :=$1;
fecha2 DATE := (SELECT ('2007-2-24'::date));

BEGIN
WHILE a<10 LOOP
fecha:=(SELECT (($1::date) + CAST('1 days' AS INTERVAL))::date);
IF (SELECT EXTRACT(DOW FROM TIMESTAMP fecha)=0) THEN
a:=a+1;
END IF;
END LOOP;
return fecha;
END;$$ LANGUAGE plpgsql;


graciasss.