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

Hola amigos
Tengo el siguiente codigo

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

y me da este error


Cita:
ERROR: array value must start with "{" or dimension information
CONTEXT: PL/pgSQL function "vehiculosfinalizados" line 8 at SQL statement

********** Error **********

ERROR: array value must start with "{" or dimension information
Estado SQL:22P02
Contexto:PL/pgSQL function "vehiculosfinalizados" line 8 at SQL statement
Alguien sabe por que da ese error y como arreglarlo?