Ver Mensaje Individual
  #5 (permalink)  
Antiguo 10/09/2010, 07:28
Avatar de death_nemesis
death_nemesis
 
Fecha de Ingreso: abril-2009
Ubicación: Santiago - Chile
Mensajes: 147
Antigüedad: 15 años, 1 mes
Puntos: 2
Respuesta: Duda Con Array

vale huesos52 al final me sirvio tu recomendacion y el codigo quedo asi

Código SQL:
Ver original
  1. CREATE OR REPLACE FUNCTION vehiculosfinalizados(idtaller CHARACTER VARYING)
  2.   RETURNS INTEGER AS
  3. $BODY$
  4. DECLARE
  5.     IDVehi  CURSOR FOR SELECT id_vehiculo FROM vehiculos,locales WHERE vehiculos.id_local = locales.id_local AND id_estado = 14 AND id_taller = ''||IDTaller||'';
  6.     IDVehiculo INTEGER = 0;
  7.     NumTareas  INTEGER = 0;
  8.     TareasFinalizadas INTEGER = 0;
  9.     finalizados INTEGER = 0;
  10. BEGIN
  11.     OPEN IDVehi;
  12.     FETCH IDVehi INTO IDVehiculo;  
  13.     WHILE (found) LOOP     
  14.         SELECT INTO NumTareas COUNT(id_tarea) FROM tareas WHERE id_vehiculo = IDVehiculo;
  15.         IF NumTareas > 0 THEN
  16.             SELECT INTO TareasFinalizadas COUNT(id_tarea) FROM TAREAS WHERE finalizada = 1 AND id_vehiculo = IDVehiculo;       
  17.             IF NumTareas = TareasFinalizadas THEN          
  18.                 finalizados:= finalizados + 1;
  19.             END IF;
  20.         END IF;
  21.         FETCH IDVehi INTO IDVehiculo;
  22.     END LOOP;
  23.     CLOSE IDVehi;
  24.     RETURN finalizados;
  25. END;
  26. $BODY$
  27.   LANGUAGE 'plpgsql';