Oracle - Funciones que devuelven arreglo

 
Vista:

Funciones que devuelven arreglo

Publicado por Xiroco (1 intervención) el 17/04/2018 17:44:46
Hola buenos días,
Estoy implementando un sistema y necesito hacer una función que me devuelva un array de varchar(en este caso en cada posición del array una dirección de correo electrónico) que luego en java le pasare al destinatario de correo.

Este es mi código:
Llamada desde el paquete:

1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
FUNCTION func_devolver_destinatarios RETURN arraystring_type;
 
Paquete Body:
 
FUNCTION func_devolver_destinatarios RETURN arraystring_type IS
v_arraystring_type_Dest arraystring_type;
CURSOR Casunto IS SELECT t.valor_config  FROM epv_t_config t WHERE t.cod_config='Mail log';
v_nDest INTEGER;
BEGIN
 
  v_arraystring_type_Dest := arraystring_type();
 
  v_nDest :=0;
FOR casus IN Casunto LOOP
    v_nDest:=v_nDest+1;
    v_arraystring_type_Dest.extend;
    v_arraystring_type_Dest (v_nDest):=casus.valor_config;
END LOOP;
 RETURN v_arraystring_type_Dest;
END;

Pero cuando lo llamo desde java me da error:

Fin de la ejecución de un paso de tipo "COMANDO" (accesodatosDestinatarios): java.lang.Exception: java.sql.SQLException: ORA-06550: línea 1, columna 14:
PLS-00382: expression is of wrong type
ORA-06550: línea 1, columna 7:
PL/SQL: Statement ignored

Alguna idea por que falla?
Muchas gracias de antemano.
Saludos
Valora esta pregunta
Me gusta: Está pregunta es útil y esta claraNo me gusta: Está pregunta no esta clara o no es útil
0
Responder