El cursor lo cierra correctamente (o al menos eso dicen las anotaciones
de trabajo).
Gracias.
---
url: http://www.paredes.info
mail: [email protected]
El 29/06/2017 18:04, Jesus Manuel Sanchez Montaña escribió:
> Hola:
>
> No se si es el caso, pero cuidado con esto:
>
> Names the prepared statement. If the name identifies an existing prepared
> statement, that previously prepared statement is destroyed. The name
> must not identify a prepared statement that is the SELECT statement of
> an open cursor.
>
> Saludo2.
>
> Nam
>
> -------------------------
>
> DE: Juan Carlos Paredes Castañón <[email protected]>
> ENVIADO: jueves, 29 de junio de 2017 17:11
> PARA: Forum Help 400
> ASUNTO: Una de procedimientos almacenados
>
> Buenas tardes, foro:
>
> A ver si alguien me puede echar una mano, porque llevo todo el día
> volviéndome loco con este tema y no encuentro solución:
>
> Tengo un procedimiento almacenado en SQL que obtiene datos de diferentes
> ordenadores (todos ellos AS/400). Tiene un primer cursor que, en función de
> un parámetro recibido obtiene los ordenadores a los que se tiene que
> conectar.
>
> Recorriendo este cursor, mediante SQL dinámico, prepara una sentencia para
> obtener, en un segundo cursor, unos acumulados de unidades pendientes en cada
> uno de los ordenadores. Este resultado lo graba en una tabla temporal, que
> luego es la que se devuelve (una vez procesados todos los ordenadores) como
> Result Set del procedimiento.
>
> La primera vez que ejecuto el procedimiento, todo funciona correctamente. Lo
> he probado desde STRSQL en pantalla verde, desde Ejecutar Scripts de SQL de
> System i Navigator y desde Data Studio.
>
> La segunda vez no me devuelve ningún resultado. Si cierro la conexión (me
> salgo del STRSQL, cierro la ventana de Ejecutar Scripts o desconecto de la
> base de datos en Data Studio) y la vuelvo a abrir, me devuelve correctamente
> los datos de nuevo.
>
> Revisando las anotaciones de trabajo, veo que la primera vez que lo ejecuto,
> al preparar dinámicamente el cursor, hace correctamente el prepare y abre el
> cursor.
>
> La segunda, llega a componer la variable para el prepare, pero cuando va a
> abrir el cursor me da el siguiente error:
>
> "Sentencia preparada ST2 no encontrada."
>
> ¿Alguna idea al respecto?
>
> Gracias.
>
> Juan Carlos.
>
> --
> url: http://www.paredes.info [1]
> mail: [email protected]
> ____________________________________________________
> Únete a Recursos AS400, nuestra Comunidad ( http://bit.ly/db68dd )
> Forum.Help400 (c) Publicaciones Help400, S.L.
Links:
------
[1] http://www.paredes.info
____________________________________________________
Únete a Recursos AS400, nuestra Comunidad ( http://bit.ly/db68dd )
Forum.Help400 © Publicaciones Help400, S.L.