Depuracion iSeries de fuentes Genexus

18
Utilización de depuración en iSeries para programas generados en Genexus Ing. Xavier Espinoza [email protected]

Transcript of Depuracion iSeries de fuentes Genexus

Page 1: Depuracion iSeries de fuentes Genexus

Utilización de depuración en iSeries para programas

generados en GenexusIng. Xavier Espinoza

[email protected]

Page 2: Depuracion iSeries de fuentes Genexus

Conceptos importantes en desarrollo para iSeries

Depuración a nivel de iSeries

Agenda

Page 3: Depuracion iSeries de fuentes Genexus

Objeto Biblioteca contiene los demás objetos dentro del Sistema Operativo

Objeto Archivo permite abstraer las entradas y salidas de datos dentro del sistema.◦ Pantallas◦ Impresiones◦ Bases de datos

Objeto perfil de usuario (*USRPRF) Objeto descripción de trabajo (*JOBD)

Conceptos importantes en desarrollo para iSeries

Page 4: Depuracion iSeries de fuentes Genexus

Esquema de almacenamiento de información en archivos

Una biblioteca contiene archivos y los archivos a su vez almacenan los datos en miembros de archivos.

Análogo a tablas particionadas.

BIBLIOTECA/ARCHIVO(MIEMBRO)

Conceptos importantes en desarrollo para iSeries

Page 5: Depuracion iSeries de fuentes Genexus

En COBOL y RPG un archivo de datos se define mediante una estructura de datos.

La misma estructura de datos permite leer y escribir sobre el archivo de datos.

En RPG o COBOL al no existir una interacción con un gestor de base de datos (DBMS), los índices deben construirse conforme el criterio del programador.

Genexus asiste en la creación de índices

Conceptos importantes en desarrollo para iSeries

Page 6: Depuracion iSeries de fuentes Genexus

Para almacenar un fuente dentro del iSeries debe crearse un archivo de fuentes (Source Physical Files).

Por defecto o convención se crean los siguientes archivos fuentes:◦ QRPGSRC : Fuentes RPG◦ QDDSSRC : Fuentes de Definición de Datos◦ QCBLSRC : Fuentes Cobol◦ QCLSRC : Fuentes de Lenguaje de Control (CL)

Conceptos importantes en desarrollo para iSeries

Page 7: Depuracion iSeries de fuentes Genexus

Genexus crea el fuente RPG, DDS o CL dependiendo lo que vaya a realizar y lo envía vía FTP al iSeries a un archivo de fuentes

Vía FTP ejecuta un comando remoto de compilación

El resultado de compilación se presenta en una impresión del iSeries y vía mensaje.

Conceptos importantes en desarrollo para iSeries

Page 8: Depuracion iSeries de fuentes Genexus

Recomendaciones para la compilación en Genexus:◦ Cambiar la notificación a *BREAK en el perfil de

cada programador para que sepa que paso con la compilación.

◦ La cola de procesos debe estar atada a un subsistema que permita la ejecución de varios procesos a la vez.

◦ Entender el funcionamiento del ciclo de compilación para poder intervenir.

Conceptos importantes en desarrollo para iSeries

Page 9: Depuracion iSeries de fuentes Genexus

Recomendaciones para la compilación en Genexus:◦ Cambiar la notificación a *BREAK en el perfil de

cada programador para que sepa que paso con la compilación.

◦ La cola de procesos debe estar atada a un subsistema que permita la ejecución de varios procesos a la vez.

◦ Entender el funcionamiento del ciclo de compilación para poder intervenir.

Conceptos importantes en desarrollo para iSeries

Page 10: Depuracion iSeries de fuentes Genexus

Recomendaciones para la compilación en Genexus:◦ Dependiendo el caso debe permitirse la creación

de fuentes.◦ Manejar herramientas de generación de

programas en RPG (STRPDM, DSPFFD, DSPPF, etc.)

Conceptos importantes en desarrollo para iSeries

Page 11: Depuracion iSeries de fuentes Genexus

Recomendaciones para la compilación en Genexus:◦ Dependiendo el caso debe permitirse la creación

de fuentes.◦ Manejar herramientas de generación de

programas en RPG (STRPDM, DSPFFD, DSPPF, etc.)

◦ Entender en algo lo que hace el fuente y como trabaja RPG para proceder a depurar.

Conceptos importantes en desarrollo para iSeries

Page 12: Depuracion iSeries de fuentes Genexus

Se utilizan los siguientes comandos:◦ STRIDSB para programas RPG/400◦ STRDBG para programas ILE/RPG

En el entorno actual y tradicional se generan programas RPG/400.

ILE RPG es un entorno más avanzado pensado para modularización e integración con otros lenguajes (COBOL, C++, CL, etc.).

Depuración a nivel iSeries

Page 13: Depuracion iSeries de fuentes Genexus

Configuración en iSeries◦ Valores para generador RPG

Delete iSeries Sources : No Compile options: DEBUG

Configuración en pantalla verde◦ Tener la lista de bibliotecas con las necesarias

para ejecutar directamente con un CALL.◦ Configurar las opciones del programa STRISDB en

ejecución

Depuración a nivel iSeries

Page 14: Depuracion iSeries de fuentes Genexus

Ejecución en pantalla verde

1) STRISDB F42) Ingresar el programa a depurar (punto de entrada) PGM3) Actualizar archivos producción UPDPROD *YES 4) Ingresar los parámetros iniciales PARM5) Enter

Depuración a nivel iSeries

Page 15: Depuracion iSeries de fuentes Genexus

Opciones del programa STRISDB◦ F5 Ejecución paso a paso◦ F6 Insertar un punto de quiebre (breakpoint)◦ F11 Visualizar el contenido de una variable en

donde este ubicado el cursor◦ F13 Ejecutar hasta cursor◦ F14 Añadir más programas a depurar◦ F17 Ejecutar hasta el siguiente punto de quiebre◦ F23 Cambiar el valor de una variable

Depuración a nivel iSeries

Page 16: Depuracion iSeries de fuentes Genexus

Consideraciones◦ Tener nociones de lo que hace el fuente RPG

generado por Genexus◦ En RPG es importante conocer el tipo de

sentencia (Columna 15) F para declaraciones de archivo I para declaraciones de variables de entrada E para declaraciones de variables de salida (pantalla) C Comandos de ejecución

Depuración a nivel iSeries

Page 17: Depuracion iSeries de fuentes Genexus

Consideraciones◦ Si en la columna 16 aparece un * esto indica la

inclusión de un comentario◦ Para guiar al programador se insertan comentarios

en RPG para ubicar el fuente Genexus◦ La lectura y escritura de archivos se utilizan

registros y se aperturan los índices o archivos según el comportamiento del programa.

◦ Al final del fuente RPG se incluyen constantes para enlazar alias declarados en la ejecución a los archivos reales. Se utiliza el comando OVRDBF dentro del iSeries para mapear archivos

Depuración a nivel iSeries

Page 18: Depuracion iSeries de fuentes Genexus

Recomendaciones◦ Utilizar el comando STRPDM en entorno iSeries◦ Utilizar opciones en PC

Websphere Development Studio IBM Rational Development for i Opciones Open Source (RPGNG)

Depuración a nivel iSeries