Hola de nuevo, utilizo oraedit para hacer las pruebas y en el escribo lo siguiente:
Código SQL
[-]declare
cod number := 0;
salida number;
begin
salida := XXX(8,888,1,3,3,cod);
end;
Esto funciona perfectamente, fijate en que necesito declarar cod antes de invocar a la funcion.
Luego en mi aplicacion,en la query escribo:
select XXX(8,888,1,3,3,0) from dual
pero claro me dice que el ultimo parametro no es correcto:
ORA-06572: La función XXX tiene argumentos externos
entonces tengo que pasarle un parametro de tipo number que tengo que declarar antes pq si pongo directamente esto:
select XXX(8,888,1,3,3,cod) from dual
me contesta: "ORA-00904: \"COD\": identificador no válido"
en resumen: tengo que definir primero el parametro cod. He probado haciendo un declare primero, algo asi:
declare cod number;begin select XXX(8,888,1,3,3,cod) from dual; end;
pero me devuelve:
ORA-06550: línea 1, columna 26:\nPLS-00428: se espera una cláusula INTO en esta sentencia SELECT"
tambien he intentado crear un parametro en la query:
consulta->Parameters->CreateParameter("cod",ftInteger,pdInputOutput,20,0);
(no existe el tipo de dato number asi que he utilizado integer...)
y tampoco funciona, me contesta: ORA-00904: \"COD\": identificador no válido"
Alguna idea? Gracias
