Gracias Alex.
Desconocía la existencia de esta posibilidad, lástima que sólo esté disponible
en 7.3, yo estoy en una menos.
Lo que estaba intentado era simular en RPG el mismo comportamiento que tiene la
BBDD con los campos que admiten nulos en el momento de asignarles un valor por
defecto. Por ejemplo, cuando usamos un INSERT de SQL, si no especificamos un
campo la base de datos le asigna un valor por defecto. En el caso de que el
campo admita nulos su valor es éste.
Sin embargo, en RPG si defino una estructura de datos externa para tratar los
registro de un fichero:
H AlwNull( *USRCTL )
FFICH O E K DISK Prefix( 'FF.' )
F Alias
D FICH_T E DS ExtName( 'FICH' )
D Alias
D Template Qualified
D Inz( *EXTDFT )
D ff DS LikeDs( FICH_T )
D Inz( *LIKEDS )
Pensaba que al inicializar la estructura a partir de la definición de los
campos externos lo haría igual que en SQL, pero es al contrario.
Saludos,
Javier
De: [email protected]
[mailto:[email protected]] En nombre de Alex Martínez
Enviado el: lunes, 12 de junio de 2017 21:09
Para: forum.help400
Asunto: Re: Inicializar a nulos una estructura de datos
Creo que lo que quieres hacer era una de la novedades de la V7R3 para RPG
https://www.scottklement.com/presentations/Whats%20New%20and%20Exciting%20in%20RPG.pdf
El 12 de junio de 2017, 13:44, Javier Mora
<[email protected]<mailto:[email protected]>> escribió:
Hola a tod@s,
estoy trabajando en un programa que utiliza una tabla en la que se permiten los
campos nulos. En mis programas ILE RPG siempre utiliza una estructura de datos
para almacenar la fila (registro) leída, actualizada o insertada.
Me encuentro en el caso de una tabla en la que el 99,99% de los campos pueden
ser nulos y, al trabajar en RPG con su estructura, querría inicializarlos de
una vez a nulos. Intento algo parecido a esto:
%NullInd( ds ) = *ON;
En lugar de:
%NullInd( ds.campo1 ) = *ON;
%NullInd( ds.campo2 ) = *ON;
…
%NullInd( ds.campoN) = *ON;
No sé si he sido capaz de explicarme.
Un saludo,
Javier Mora
____________________________________________________
Ú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.