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: forum.help400-boun...@listas.combios.es 
[mailto:forum.help400-boun...@listas.combios.es] 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 
<jm...@musgrave.es<mailto:jm...@musgrave.es>> 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.

Responder a