Bienvenidos a Iseries Venezuela

Las mejores prácticas, recursos, tips, enlaces, videos y artículos para informáticos relacionados con el Iseries y el As/400 lenguajes de programación RPG, ILE RPG y SQL.

The best practices, resources, tips, links, videoes and articles for computer related to the Iseries and the As/400 languages of programming RPG, ILE RPG and SQL.

Friday, August 30, 2013

Construir La clave de Lectura Desde una Estructura de Datos

 








Supongamos tenemos un archivo llamado: SISTEMAS que contiene
El inventario de Sistemas, Módulos y Programas del Departamento de Sistemas
Declaramos  una estructura de datos:

D CLAVEFILE DS  likerec(Sistemas:*key)
D SistemaID                  2A
D ModuloID                   2A
D ProgramaID              2A

Con la palabra clave LIKEREC establecemos que la DS va a ser una clave de acceso al archivo SISTEMAS
Una vez que los campos de la estructura de datos tienen los valores de acceso que necesitamos podemos realizar la siguiente operación:

En este ejemplo especificamos que usamos los tres primeros campos de la estructura de datos para armar la clave de lectura

  
Chain %KDS(CLAVEFILE:3)  sistemas;

También podemos hacer esto:
En este ejemplo especificamos que usamos los dos primeros campos de la estructura de datos para armar la clave de lectura

  SetLL %KDS(CLAVEFILE : 2 ) Sistemas;


¿y qué hago con esto?

Esta función es particularmente útil cuando recibimos por parámetro string de data de otras aplicaciones  y nos toca “desglosar”  en campos separados los datos recibidos para  luego armar claves totales y parciales necesarias para acceder a su vez a otros archivos o tablas.

Esto puede verse como una manera de restituir la declaración de  KLIST del RPG III. Para aquellos que puedan añorar la programación tradicional y no desean colocar en RPG FREE un chain con varias claves en el código del programa tal como esto:
Chain (clave1:clave2:clave3:clave4) pueden utilizar esta función
 Pueden utilizar el %KDS como otra alternativa de programación



Si te pareció interesante, reenvíalo a un amigo haciendo click en el sobrecito que está al final del artículo. El conocimiento es valioso, compártelo.


Autor: Ing. Liliana Suárez 


No comments: