No exactamente, Javier.
La vista debe apuntar a varias tablas distintas, todas ellas en la misma
biblioteca, pero debe crearse en una biblioteca distinta a aquella en la
que están las tablas.
El proceso está montado en un CL que recupera unos valores del entorno
de trabajo del usuario, y con ello compone tanto la biblioteca en la que
están las tablas como la biblioteca en la que debe estar la vista. Hace
un CHGCURLIB para poner como biblioteca actual la de la vista, un
ADDLIBLE con la biblioteca en la que están las tablas, y lanza la
ejecución de un RUNSQLSTM sobre un miembro que contiene el CREATE VIEW.
Y cuando ejecuta el RUNSQLSTM crea la vista en la biblioteca de las
tablas, en lugar de en la biblioteca que yo le pongo como CURLIB.
---
https://paredes.info
[email protected]
El 05/09/2019 00:36, datil400 escribió:
¿Quieres decir que cada vista deberá apuntar a las mismas tablas
pero de diferentes bibliotecas?
Yo intenté crear una vista que tomara dinámicamente las tablas base
en función de la lista de bibliotecas. A la conclusión que llegué
es que la vista memoriza la biblioteca en el momento de su creación y
siempre las usará, independientemente de la lista de bibliotecas.
Tampoco he sido capaz de crear vistas con tablas en dos o más
bibliotecas. He tenido que calificar co la biblioteca aquellas que no
residían en la biblioteca de la vista.
Javier
El mié., 4 sept. 2019 21:29, Manuel Antonio Ramirez Raygada
<[email protected]> escribió:
Buenas tardes Juan Carlos:
El Create View no utiliza *CURLIB para ser creado, pero podrías
recuperarla curlib si utilizas en tu CL de creación el comando
RTVJOBA CURLIB(&CURLIB).
En esa variable recuperas la biblioteca curlib y la puedes usar como
parámetro de la biblioteca del Create View.
_MANUEL A. RAMIREZ RAYGADA_
_ANALISTA DE SISTEMAS - AS400_
El mié., 4 sept. 2019 a las 11:15, Juan Carlos Paredes
(<[email protected]>) escribió:
Buenas tardes, compañeros:
Tengo que crear una vista que hace la UNION de varias tablas. La
cuestión es que necesito crearla en una biblioteca diferente de
aquella
en la que están las tablas. Y no puedo calificar directamente la
vista
en el CREATE VIEW, porque el nombre de la biblioteca donde debe
crearse
es variable en función del entorno de trabajo.
He tratado de solucionarlo poniendo esa biblioteca en la lista
como
*CURLIB. Pero por alguna extraña razón, aunque en la lista de
bibliotecas la veo como CURLIB (con lo que debería ser la que
utilizara
el CREATE al no estar calificado) me está creando la vista en la
biblioteca en que residen las tablas, y no en la CURLIB.
He comprobado que, si califico directamente la vista, sí la crea
donde
debe y apunta a las tablas que debe. Pero a través de la CURLIB,
no.
¿Alguna idea al respecto?
--
https://paredes.info
[email protected]
____________________________________________________
Únete a Recursos AS400, nuestra Comunidad ( http://bit.ly/db68dd
)
Forum.Help400 © Publicaciones Help400, S.L.
____________________________________________________
Únete a Recursos AS400, nuestra Comunidad ( http://bit.ly/db68dd )
Forum.Help400 © Publicaciones Help400, S.L.
____________________________________________________
Únete a Recursos AS400, nuestra Comunidad ( http://bit.ly/db68dd )
Forum.Help400 © Publicaciones Help400, S.L.
____________________________________________________
Únete a Recursos AS400, nuestra Comunidad ( http://bit.ly/db68dd )
Forum.Help400 © Publicaciones Help400, S.L.