Debugging Agent - HelpSystems · 2017-09-20 · permiso por escrito previo de Tango/04. Marcas...

87
Debugging Agent Guía de Usuario 5.0 VDW

Transcript of Debugging Agent - HelpSystems · 2017-09-20 · permiso por escrito previo de Tango/04. Marcas...

Debugging AgentGuía de Usuario

5.0VDW

VISUAL Message Center Debugging Agent Guía de Usuario

El software descrito en este documento se distribuye bajo un contracto de licencia y puede utilizarse

únicamente de acuerdo a los términos de uso de dicho acuerdo.

Aviso de Copyright

Copyright © 2013 Tango/04. Todos los derechos reservados.

Fecha de documento: Febrero 2011

Versión de documento: 1.01

Versión de producto: 5.0

Ninguna parte de esta publicación puede reproducirse, transmitirse, transcribirse, almacenarse en un

sistema de recuperación o traducirse a ningún idioma o lenguaje de programación, de ninguna forma ni

medio, electrónico, mecánico, magnético, óptico, químico, manual, o de cualquier otro tipo, sin el

permiso por escrito previo de Tango/04.

Marcas Registradas

Cualquier referencia a nombres de productos registrados son propiedad de las respectivas empresas.

Soporte Técnico

Para soporte técnico visite nuestra página web en www.tango04.com.

Tango/04 Computing Group S.L. Avda. Meridiana 358, 5 A-B Barcelona 08027 España

Teléfono: +34 93 274 0051

Tabla de Contenidos

Tabla de Contenidos

Tabla de Contenidos.......................................................................... III

Cómo Usar esta Guía......................................................................... VI

Capítulo 1

Características Técnicas....................................................................... 1

Capítulo 2

Autorizaciones ................................................................................... 92.1. Autorización para ejecutar mandatos ...........................................................10

2.2. Tipo de Autorización .....................................................................................10

2.3. Teclas de Función.........................................................................................10

2.4. Usuario De ....................................................................................................11

2.5. Usuario A ......................................................................................................11

Capítulo 3

VISUAL Message Center Debugging Agent .......................................... 123.1. Distribución General .....................................................................................12

3.2. Proyectos de Depuración .............................................................................13

3.3. Vistas de Módulo .........................................................................................14

3.4. Restricciones ................................................................................................14

3.5. Ventana Principal..........................................................................................15

3.6. Administrador de Proyectos..........................................................................15

© 2013 Tango/04 Computing Group Página III

Tabla de Contenidos

3.7. Ventana de Trabajos.....................................................................................15

3.8. Ventana de Depuración ................................................................................17

3.9. Navegador de Programa...............................................................................19

3.9.1. Lista de Variables....................................................................................19

3.9.2. Explorador de Aplicaciones ....................................................................20

3.10. Ventana de Objetos ....................................................................................20

3.11. Ventana de Miembros Fuente ....................................................................21

3.12. Ventana de Chat ........................................................................................21

3.13. Diálogos ......................................................................................................22

3.13.1. Diálogo Propiedades del Proyecto........................................................22

3.13.2. Explorador de Trabajos ........................................................................22

3.13.3. Diálogo Opciones de Entorno ...............................................................23

3.13.4. Diálogo Información del Sistema .........................................................26

3.13.5. Diálogo Recuperación de Sesión de Depuración ................................27

3.13.6. Diálogo Iniciar Programa.......................................................................27

3.13.7. Diálogo Finalizar Trabajo ......................................................................28

3.13.8. Diálogo Detenido en Programa No-Depurable .....................................28

3.13.9. Diálogo Archivo de Listado COBOL en Spool.......................................28

3.13.10. Diálogo Condición de Ruptura ...........................................................29

3.13.11. Diálogo Iniciar Sesión SEU ................................................................29

3.13.12. Diálogo Buscar....................................................................................30

3.13.13. Diálogo Propiedades de la Variable....................................................30

3.13.14. Diálogo Trabajar con Variables...........................................................31

3.13.15. Utilidad de Entrada de Mandatos .......................................................31

3.14. Asistente para Mapeo de Fuentes .............................................................32

3.14.1. ¿Qué son las Reglas de Mapeo?..........................................................33

3.14.2. Asistente para Búsqueda de Fuentes ...................................................33

3.14.3. Crear/Modificar Reglas de Búsqueda ..................................................34

3.14.4. Generalizar Reglas ...............................................................................35

3.15. Test Tracker................................................................................................36

Capítulo 4

Que hacer para…........................................................................... 374.1. Iniciar un Nuevo Proyecto de Depuración ....................................................37

4.2. Guardar un Proyecto de Depuración ............................................................37

4.3. Abrir un Proyecto de Depuración..................................................................37

4.4. Depurar un Programa en Ejecución..............................................................37

4.5. Añadir/Eliminar Puntos de Ruptura...............................................................38

4.6. Añadir/Eliminar Variables de la Lista de Variables .......................................38

4.7. Depurar un Programa ...................................................................................38

4.8. Modificar una Variable ..................................................................................39

4.9. Generar Informes de Cobertura....................................................................39

© 2013 Tango/04 Computing Group Página IV

Tabla de Contenidos

Capítulo 5

Referencia....................................................................................... 415.1. Personalizar Barras de Herramientas...........................................................41

5.2. Iniciando una sesión de depuración con VISUAL Message Center Debugging Agent desde una sesión AS/400 ....................................................................41

5.2.1. VDW Starter ............................................................................................42

5.2.2. Utilizando Client Access Organizer (*PCO) ............................................44

5.2.3. Utilizando el Mandato Remoto de AS/400 (*RMTCMD) ........................45

5.3. Lenguaje de Mandatos de Depuración .........................................................50

5.3.1. Convenciones de Sintaxis.......................................................................50

5.3.2. Procesos .................................................................................................51

5.3.3. Localidad y Entidades .............................................................................52

5.3.4. Sentencias del Editor ..............................................................................52

5.3.5. Sentencias de Depuración ......................................................................57

5.3.6. Sentencia Sistema ..................................................................................64

5.3.7. Tabla de Referencia Rápida ...................................................................64

5.4. Iconos ...........................................................................................................65

5.4.1. Iconos de Tipo de Trabajo ......................................................................65

5.4.2. Iconos de Tipo de Mensaje en Anotaciones ...........................................66

5.4.3. Iconos de Tipo de Objeto ........................................................................66

5.5. Accesos Directos ..........................................................................................68

5.5.1. Asignaciones por defecto de Teclas de Acceso Directo .........................68

5.5.2. Personalizar Teclas de Acceso Directo ..................................................69

5.6. Controlando VISUAL Message Center Debugging Agent ............................69

5.6.1. Parámetros de Línea de Mandatos.........................................................69

5.6.2. Controlando VISUAL Debugger con DDE ..............................................69

5.6.3. Sintaxis de Mandatos..............................................................................70

5.7. Errores ..........................................................................................................71

5.7.1. Errores en el Servidor .............................................................................71

5.7.2. Errores Internos de VISUAL Debugger...................................................77

Apéndices

Apéndice A: Contactar con Tango/04 ................................................. 78

Acerca de Tango/04 Computing Group ............................................... 80

Aviso Legal...................................................................................... 81

© 2013 Tango/04 Computing Group Página V

Cómo Usar esta Guía

© 2013 Tango/04 Computing Group Página VI

Cómo Usar esta Guía

Este capítulo explica cómo usar las Guías de Usuario de Tango/04 y comprender las convenciones

tipográficas usadas en toda la documentación de Tango/04.

Convenciones Tipográficas

Los siguientes términos, formatos de texto y símbolos convencionales se utilizan en toda la

documentación impresa de Tango/04:

Convention Description

Negrita Mandatos, botones en pantalla y opciones de menú.

Cursiva azul Referencias y enlaces a otras secciones en el manual o a otra documentación que contiene información relevante.

Cursiva Texto mostrado en pantalla, o variables donde el usuario debe sustituir sus propios detalles.

Monospacia Mandatos de entrada como mandatos o código System i, o texto que los usuarios deben teclear.

MAYUSCULA Claves de teclado, como CTRL para la tecla Control y F5 para la tecla de función que está etiquetada como F5.

Notas e información adicional de utilidad.

Consejos y pistas que mejoran la experiencia de usuario al trabajar con este producto.

Importante: información adicional que es altamente recomendable que el usuario tenga en cuenta.

Aviso: El no seguir esta información podría derivar potencialmente en serios problemas.

Características Técnicas

Capítulo 11 Características Técnicas

Interfaz

• Interfaz totalmente integrada con Windows de 32 bits

• Ejecutable desde Windows, PDM o cualquier línea de mandatos 5250

• Inicio de edición de SEU desde la sesión de depuración con un sólo clic

• Cantidad de información mostrada ilimitada (no limitada a pantallas 24x80 o 27x132) (sólo

dependiente de la resolución y del tamaño de la fuente)

• Mandatos y teclas de función tipo SEU (T/TOP/B/BOTTOM/F/FIND, etc.)

• No es necesario recordar ningún comando para utilizar el producto.

Administración de Seguridad

• Interfaz AS/400

− Tabla de autorización basada en el AS/400

− Proporciona entradas independientes para cada "Usuario De / Usuario A", o definición de

autorizaciones genéricas (*ALL)

− Entradas diferentes para cada función: capturar trabajo / ejecutar mandato / chat

− Diferentes niveles de autorización: autorizado / no autorizado / necesita autorización en

línea por mensaje

− Validación de contraseñas en sistemas remotos

• Autorizaciones por trabajo interactivo/batch.

• Autorizaciones por subsistema

• Autorizaciones por usuario

Selección de Trabajos

• Búsqueda del Trabajo a Depurar en una ventana

• Filtro de trabajos configurable y potente

• Lista de trabajos realzadas con iconos para identificar fácilmente el tipo de los trabajos

• Accesos directos a "Sólo Interactivo" y "Sólo Batch" para acceso fácil a los trabajos

© 2013 Tango/04 Computing Group Página 1

Características Técnicas

• Columnas dimensionables, reordenables y ordenación definida por el usuario

• Recuerda el último trabajo depurado

• Encapsula el trabajo en diferentes proyectos

Información del Sistema

• Muestra información general del AS/400 (nombre del AS/400, modelo, submodelo, nivel de

seguridad, tipo de conexión)

• Muestra información de la versión del OS/400 (nivel de versión del OS/400, nivel PTF)

• Posibilidad de asociar una Descripción para identificar fácilmente cada sistema

Depuración

• Integración OPM/ILE totalmente transparente.

• Tecnología Crash-Recovery de recuperación de fallos mejorada.

• Soporte de depuración OPM nativo, es decir, no es necesario recompilar programas OPM con

opciones de *SRCDBG o *LISTDBG.

• Asistente para Mapeo de Fuentes: Tecnología de Localización de Fuentes Remotos que le

permite depurar programas (ILE y OPM) aun cuando el miembro fuente se encuentra en un

AS/400 diferente.

• Asistente de Configuración para una conexión sencilla.

• Extremadamente rápido, aun cuando se utiliza una conexión lenta vía Internet.

Ver, Cambiar y Monitorizar Variables, Indicadores y Campos

• Ver los valores de las variables con un clic en el código fuente

• Ver los valores de las variables como sugerencias o en una ventana

• Modificar variables

• Evaluar expresiones complejas

• Mostrar todos los campos en formato registro

• Monitorizar cambios en variables (el total o un cierto número de bytes desde la posición de

inicio)

• Lista de variables

• Indicación visual del cambio en una variable controlada

• Fácil indicación con casillas de verificación para monitorización de variables incluida en la

ventana de la lista de variables

• Soporte de variables RPG PLIST y KLIST

• La lista de variables se guarda en los Proyecto de Depuración

Administración de Puntos de Ruptura

• Colocar/Eliminar todos los puntos de ruptura utilizando una tecla de función

© 2013 Tango/04 Computing Group Página 2

Características Técnicas

• Colocar/Eliminar los puntos de ruptura condicionales, incondicionales, o bloques temporales

de puntos de ruptura utilizando el ratón

• Colocar/Eliminar puntos de ruptura con una tecla de función o con un mandato

• Muestra visualmente las sentencias con puntos de ruptura

• Ir a la sentencia con el punto de ruptura activado

• Colocar/Eliminar puntos de ruptura con un clic en una indicación

• Mostrar la sentencia en ejecución para los programas en ejecución

• Ejecutar hasta el cursor

• Múltiples puntos de ruptura temporales (parar sólo una vez en la línea) con iconos y

indicaciones diferentes

• Animación

Detección de Código no Probado

• Indicación de las sentencias no probadas

• Búsqueda de sentencias no probadas

• Informe de partes de programa no probadas

Localización de Código no Utilizado

• Indica el código no utilizado (rutinas no llamadas) en COBOL, CL, RPG, simplificando el

mantenimiento del programa

• Código no utilizado mostrado en el Árbol de Fan-In (indicado en gris)

Administración general de la depuración

• Recuperación automática de sesiones de depuración después de un fallo de comunicación

• Almacena todos los módulos y programas en proyectos para una recuperación más fácil y

rápida

• Fácil introducción de cualquier programa en ejecución en cualquier trabajo en modo

depuración con un doble clic en la pila de llamadas

• Fácil cambio entre módulos, haciendo clic en el Navegador de Programa, en una tecla de

función o en un botón

• Botones seleccionables con nombres mostrando todos los módulos cargados

• Explore múltiples fuentes de cualquier librería o AS/400 en ventanas separadas mientras está

depurando

• Ejecute el programa a ser probado desde cualquier línea de mandatos, menú, o llamada

normal (no se obliga a llamarlo desde dentro del depurador)

• Opcionalmente, puede ejecutar el programa (o mandato) desde dentro del entorno de prueba

con parámetros

• Detección inteligente del fin del programa en depuración

• Rápido cambio de la vista de depuración desde *STMT, *SOURCE, *LISTING

© 2013 Tango/04 Computing Group Página 3

Características Técnicas

• Anotaciones de mandatos desplazables/ocultables con historial de todos los mandatos de

depuración

• Muestra inmediatamente los valores de las variables y los monitores cambiados de un

programa en ejecución sin poner puntos de ruptura con anterioridad

Búsqueda Avanzada

• Búsqueda de sentencias probadas / no probadas

• Búsqueda de sentencias con puntos de ruptura

• Búsqueda de caracteres normales en orden normal /inverso, desde la primera o última

sentencia, o todas ( *ALL)

• La búsqueda está en ventana, acceso directo o mandato

• Búsqueda de líneas de comentarios

• Indicación visual de los resultados cuando se buscan todas las ocurrencias ( *ALL) en una

ventana separada

• Resultados seleccionables mediante un clic para posicionarse inmediatamente en el código

fuente cuando se buscan todas las ocurrencias ( *ALL)

Documentación

• Impresión del código fuente

• Impresión con Color Coding Opcional

• Indentación RPG / RPGLE opcional en la impresión

• Indentación CLP / CLPLE opcional en la impresión

• Indicación de sentencias probadas / no probadas

• Imprime código fuente de AS/400s remotos

• Tipo y tamaño de fuente personalizable

• Color Coding personalizable con diferentes perfiles

• Cortar y Pegar formateado con atributos de texto enriquecido

Captura de Pantalla

• Captura de pantalla hasta la última tecla pulsada

• Manejo automático de pantallas 24 x 8 y 27 x 132

• Indicación en pantalla de las entradas y del estado de espera de mensajes, funciones, formato

de fichero de pantalla, y tiempo de inactividad

• Función de Copiar al Portapapeles de toda la pantalla de modo texto ( o de un área

seleccionable)

• Copia al Portapapeles en modo texto e imagen la pantalla completa o el área seleccionada.

• Fuentes y colores personalizables

• Importación de ficheros de atributos de colores NS/Elite 5.11 (*.ATT)

© 2013 Tango/04 Computing Group Página 4

Características Técnicas

• Puede mostrar múltiples pantallas al mismo tiempo

• Capacidad de Auto Refresco con intervalo personalizable

Información del Trabajo

• Soporta trabajos interactivos, por lotes y de autoarranque

• Información general del trabajo detallada: tipo, estado, prioridad, y más

• Registro histórico de trabajos

• Contenido del Área de Datos Locales ( Local Data Area, *LDA) en formato carácter y

hexadecimal

• Lista de objetos QTEMP

• Lista de Librerías incluyendo librerías actuales, de producción, de usuario y de sistema

• Acceso a los objetos contenidos en cada librería desde la Lista de Librerías con un doble clic

• Listado completo de la pila de llamadas incluyendo información OPM y ILE

• Captura de programas desde la pila de llamadas, con un menú sensible al contexto accesible

con el botón derecho del ratón

• Puede capturar múltiples trabajos a la vez

Explorador de Aplicaciones

• Visualización jerárquica del flujo de ejecución

• Interfaz navegable para profundizar de los programas llamados

• Muestra todos los objetos referidos desde los programas (incluyendo ficheros y formatos,

áreas de datos y programas)

• Muestra Módulos ILE y Programas de Servicio ILE

• Menú sensible al contexto con el botón derecho para abrir fácilmente cualquier Objeto referido

en el modo explorador del Fuente y de Objetos, incluyendo código fuente ILE

• Indicación de uso individual por formato de registro (entrada, salida, actualización, etc.)

• Integrado con el Explorador de Sistema para la fácil localización de objetos no calificados

• No requiere tener el código fuente disponible

Localizador de Código Fuente

• Identifica y recupera el Código Fuente correspondiente desde el Explorador de Objetos o el

Explorador de Aplicaciones

• Recupera automáticamente el código fuente de cualquier objeto de sistema, programa,

programa de servicio, o módulo ILE

• Puede localizar código fuente remotamente en una red, tanto manualmente como

automáticamente

• Extremadamente rápido

© 2013 Tango/04 Computing Group Página 5

Características Técnicas

Explorador de Fuentes

• Indicación de la sentencia ejecutada por programas en ejecución si está disponible

• Posibilidad de hacer clic en nombres de variables y mostrar sus valores

• Soporte para modo Ventana o Indicación para mostrar los valores de las variables

• Visualización de las variables en modo Carácter y Hexadecimal

• Muestra el Número de Sentencia y Fecha de Modificación

• Muestra información general del fuente: Fecha de creación, modificación, guardado,

recuperado, etc.

• Fuente y tamaño de fuente seleccionables por el usuario

• Potente función de búsqueda

• Soporte Copiar al Portapapeles (parcialmente o totalmente)

• Color Coding para RPG, CL, DDS, COBOL y C opcional para la fácil comprensión de la lógica

del programa

• Indentación opcional

• Opcionalmente muestra/oculta los comentarios.

• Puede abrir cualquier fuente sin un trabajo asociado

• Puede abrir un número ilimitado de fuentes a la vez

• Las Etiquetas y los nombres de Subrutinas actúan como Hipervínculos para una fácil y rápida

visualización del programa (el destino no necesita estar en modo depuración)

• Soporte Atrás/Adelante para posicionarse rápidamente cuando se utilizan Hipervínculos

• Cambie entre diferentes vistas de los fuentes (*TEXT, *LISTING, *STATEMENT y *EXPANDEDcon expansión automática de directivas /COPY)

Navegador de Programa

• Simplifica la comprensión de la lógica de los programas complejos

• Proporciona una forma muy eficiente de navegar por el programa

• Árbol de Fan-In: muestra una estructura jerárquica navegable que muestra todas las llamadas

internas y externas en un programa (incluyendo GOTOs, EXSR, CALLs, etc.)

• Árbol de Fan-Out: muestra todas las referencias para cada etiqueta, subrutinas, o llamadas

(Calls) para una comprensión más fácil de las dependencias y una exploración más rápida

• Posicionamiento en la sentencia seleccionada con un clic

• Habilitado el clic con el botón derecho para posicionarse en una definición o referencia

• Contraer / Expandir con un botón

Diccionario de Datos

• ¡ÚNICO! Herramienta de referencia excelente para rastrear datos en cualquier proyecto de

mantenimiento.

• Muestra las variables, indicadores, y campos referenciados en cada programa OPM

© 2013 Tango/04 Computing Group Página 6

Características Técnicas

• Muestra las variables, indicadores, y campos referenciados en cualquier lenguaje ILE

• Posibilidad de hacer clic en los nombres de las variables y mostrar los valores

• Soporte para modo Indicación o modo Ventana para visualizar los valores de las variables

• Visualización de las variables de carácter y hexadecimales

• Muestra el nombre, tipo y longitud

• Opcionalmente muestra/esconde los apuntadores del programa

• Ordenación por nombre o tipo con un clic

• No requiere el código fuente disponible

Explorador de Objetos

• Muestra información detallada de cada objeto accedido.

• Muestra tipo de objeto, tamaño, dominio, propietario, fecha de creación, salvado, recuperado,

nivel OS/400, localización de la fuente, fecha de última actualización, autoridad adoptada,

opción de recuperación de fuente CL, optimización, observabilidad, etc.

• Integrado con el Explorador del Sistema para localizar fácilmente el código fuente o

seleccionar otros objetos.

• No necesita que el código fuente esté disponible

• Puede abrir un número ilimitado de objetos a la vez

• Muestra información del módulo ILE y del Programa de Servicio

Explorador de Sistema

• Permite la navegación y la selección gráficas de librerías AS/400, objetos, y miembros de

archivo.

• Potentes capacidades de filtrado

• Visualización gráfica de tipos de objetos

• Cuatro vistas seleccionables: iconos pequeños, iconos grandes, lista y detalles

• Posibilidad de llamarlo desde cualquier ventana del producto y utilizado en la Lista de

Librerías, el Explorador de Aplicaciones, el Explorador de Objetos y el Explorador del Fuente.

Ejecución de Mandatos

• Permite la ejecución de cualquier mandato en el trabajo capturado

• Permite la ejecución incluso si el trabajo está en modo "entrada inhibida"

• Completa visualización de los mensajes de ejecución

Chat

• Permite chat en modo texto con cualquier otro usuario AS/400

• Soporte de "Alias" para cambiar el nombre de identificación

• Posibilidad de interrumpir el chat en cualquier momento desde cualquiera de las partes

• Permite chats con múltiples usuarios al mismo tiempo desde un sólo PC

© 2013 Tango/04 Computing Group Página 7

Características Técnicas

• Magnífica herramienta para comunicarse con sus usuarios cuando no tenga línea telefónica

disponible

Rendimiento

• Utilización mínima de recursos del AS/400

• No se necesita un PC dedicado

• Tecnología Speed-Cache de Tango/04 para listado y captura rápidos de trabajos

Tecnología Cliente/Servidor

• Producto optimizado para 32 bits (compatible con Windows 95, 98 y NT)

• Listas con iconos, accesos directos, opciones personalizables

• Tecnología de comunicaciones NiceLink©

• Ayuda en línea gráfica y totalmente sensible al contexto

• Barra de herramientas personalizables

• Todas las ventanas se pueden redimensionar, mover y maximizar

• Múltiples archivos de personalización definibles por el usuario.

• Interfaz de llamada DDE para fácil integración con otras aplicaciones Windows o desde una

sesión de emulación.

Avanzado Motor de Comunicaciones (NiceLink©)

• Basado en Nicelink© (preparado para trabajar con diferentes protocolos)

• Soporte para direccionador APPC, TCP/IP, y conexiones directas Microsoft SNA Server.

• Soporte para futuras conexiones NiceLink© sin cambios.

• Utilidad de Configuración Gráfica

• Botón de Comprobación de Conexión y facilidades avanzadas de solución de problemas.

• Asistente de Configuración para conexiones fáciles

• Extremadamente rápido incluso utilizándolo con conexiones a Internet lentas

© 2013 Tango/04 Computing Group Página 8

Autorizaciones

Capítulo 2 2 Autorizaciones

Por motivos de seguridad, la gestión de autorizaciones está localizada en el AS/400, no en el PC.

La pantalla Trabajar con Autorizaciones de VISUAL Message Center Debugging Agent (WRKDBGAUT), de

la librería VISUALW, le permite definir las funciones del producto que el usuario, que se conecta al AS/

400, está autorizado a ejecutar sobre un trabajo: capturar un trabajo, depurar un trabajo, ejecutar

mandatos en ese trabajo, e iniciar una sesión de chat con el usuario de ese trabajo.

VISUAL Message Center Debugging Agent comprueba la autorización requerida cada vez que se inicia

una petición sobre un trabajo.

Puede ver esa pantalla en la imagen inferior.

Nota Para utilizar VISUAL Message Center Debugging Agent, necesita estar incluido en la lista de

autorización de V_DEBUGGER ( si no está seguro sobre esto, utilice el mandato del AS/400

DSPAUTL), o tener autoridad *ALLOBJ.

© 2013 Tango/04 Computing Group Página 9

Autorizaciones

También puede ir a cualquiera de los siguientes temas:

• Usuario De

• Usuario A

• Tipo de Autorización

• Teclas de Función

2.1 Autorización para ejecutar mandatosEspecifique la autorización para ejecutar mandatos realizada por Usuario De en trabajos Usuario A.

Los posibles valores son:

• S: Especifique S para indicar que se utilizará la autoridad Usuario De.

• G: Especifique G para indicar que se utilizará la autoridad de grupo Usuario De.

• T: Especifique T para indicar que se utilizará la autoridad Usuario A.

• Q: Especifique Q para indicar que se utilizará la autoridad QSECOFR.

2.2 Tipo de AutorizaciónEspecifique la autorización asignada al Usuario especificado en Usuario De para iniciar una petición

sobre un trabajo remoto propiedad del usuario especificado en Usuario A.

Los valores posibles son:

• Y: Especificar Y para indicar que el usuario indicado en Usuario De puede iniciar una petición

sobre un trabajo remoto propiedad del usuario Usuario A.

• N: Especificar N para indicar que el usuario indicado en Usuario De no puede iniciar una

petición sobre un trabajo remoto propiedad del usuario Usuario A.

• M: Especificar M para indicar que se enviará un mensaje al usuario --Usuario A-- para

permitir al usuario Usuario De iniciar una petición sobre un trabajo remoto propiedad del

usuario Usuario A.

2.3 Teclas de FunciónLas teclas de función siguientes se aplican al trabajo con la pantalla de autorización de VISUAL

Message Center Debugging Agent (WRKDBGAUT).

• F1=Ayuda: Muestra información adicional sobre la utilización de la pantalla.

• F3=Salir: Finaliza la tarea actual y retorna a la pantalla des de la que se inició la tarea.

• F5=Refrescar: Actualiza la información visualizada.

• F12=Cancelar: Retorna a la pantalla o al menú anterior.

• F16=Imprimir lista: Imprime la lista completa. El fichero de Spool se envía a la cola de salida,

y se puede ver utilizando el mandato WRKSPLF.

• F17=Inicio: Muestra el primer elemento de la lista al principio de la pantalla.

• F18=Final: Muestra el último elemento de la lista al final de la pantalla.

© 2013 Tango/04 Computing Group Página 10

Autorizaciones

• F21=Mandato de sistema: Muestra una ventana en la que se pueden introducir mandatos de

sistema AS/400.

2.4 Usuario DeEspecifique el nombre del perfil de usuario que iniciará la petición desde el PC. Los valores posibles

son:

• *ALL: Especifique *ALL para indicar una autorización genérica para que todos los perfiles de

usuario puedan iniciar una petición sobre cualquier trabajo remoto propiedad del usuario

indicado en Usuario A.

• Nombre de Usuario: Especifique un nombre de perfil de usuario válido. Si introduce un

nombre de usuario y existe una autorización genérica para Usuario De, el nombre de usuario

tiene prioridad sobre la autorización genérica.

2.5 Usuario AEspecifique el nombre del usuario a cuyo trabajo quiere dar soporte. Los valores posibles son:

• *ALL: Especifique *ALL para indicar una autorización genérica para todos los perfiles de

usuario del sistema.

• Nombre de Usuario: Especifique un nombre de usuario válido. Si introduce un nombre de

usuario y existe una autorización genérica *ALL, el nombre de usuario tiene prioridad sobre la

autorización genérica.

© 2013 Tango/04 Computing Group Página 11

VISUAL Message Center Debugging Agent

Capítulo 3 3 VISUAL Message Center Debugging Agent

3.1 Distribución GeneralVISUAL Message Center Debugging Agent ofrece una interfaz de usuario Centrada en los Datos: Se

concentra en objetos AS/400 y Proyectos de Depuración. La siguiente imagen muestra la distribución

típica de la ventana de VISUAL Message Center Debugging Agent.

La Ventana Principal, en la parte superior de la pantalla, le ofrece las tareas más comunes en VISUAL

Message Center Debugging Agent. Desde la Ventana Principal puede Abrir un Trabajo, Abrir un

Miembro Fuente, Abrir un Objeto AS/400, Iniciar una sesión SEU, Iniciar una sesión de Chat, Mostrar el

Administrador de Proyectos,...

El Administrador de Proyectos le proporciona las herramientas de administración para tratar con

proyectos. Desde el Administrador de Proyectos puede: Crear un Nuevo Proyecto de Depuración,

Cargar un Proyecto de Depuración desde el disco, Guardar un Proyecto de Depuración al disco,

Cambiar entre diferentes Proyectos, Abrir los Objetos en un Proyecto,... Cuando esté seleccionando el

trabajo y el programa que desea depurar, se visualizarán dos diálogos importantes:

El Explorador de Trabajos le permitirá seleccionar los trabajos del AS/400 con los que quiere trabajar.

Desde una lista del estilo "Trabajar con Trabajos Activos", que puede ordenar y filtrar como desee,

simplemente haciendo doble clic el trabajo deseado.

El Explorador de Sistema será su herramienta para tomar objetos del AS/400, como el programa a

depurar, o cualquier otro objeto que quiera examinar. Si ya es un usuario de Windows, descubrirá que

© 2013 Tango/04 Computing Group Página 12

VISUAL Message Center Debugging Agent

explorar su AS/400 es tan fácil como explorar su PC: el mismo aspecto, navegar bibliotecas como si

fueran carpetas, seleccionar objetos con un doble clic,...

La Ventana de Depuración será normalmente su ventana de "trabajo". Como se espera de cualquier

depurador, muestra el código del programa que está siendo depurado y un amplio conjunto de

herramientas de depuración, que incluye Puntos de Ruptura (incondicionales, condicionales,

temporales), Monitores, Lenguaje de Mandatos Flexible, Herramienta de Búsqueda Avanzada, Lista de

Variables,...

Pero VISUAL Message Center Debugging Agent también le proporciona un amplio conjunto de

poderosas herramientas para navegar, explorar y comprender sus programas, como el Navegador de

Programa, las características de Codificación en Colores, Hipervínculos de Código Fuente, el

Explorador de Aplicaciones, la posibilidad de cambiar entre diferentes vistas de un módulo, ....

Además, le ofrece muchos detalles relacionados con el programa, como Información del Programa,

Información del Módulo, Información del Miembro Fuente, Diccionario de Datos,...

La Ventana de Trabajo le ofrece todas las propiedades del Trabajo disponibles (Pantalla, Anotaciones

del Trabajo, LDA, QTEMP, LIBL,...), y también le permite interactuar con el trabajo, ejecutando

mandatos en el propio trabajo.

La Ventana de Objetos le proporciona la información relacionada con cualquier tipo de objeto en el AS/

400: archivos físicos, archivos lógicos,...

El Explorador de Fuentes, muy similar al Explorador de Sistema, le permitirá seleccionar los miembros

fuente del AS/400 que quiera examinar. Además, si el código fuente está localizado en un Sistema AS/

400 remoto, la tecnología de Localización de Código Fuente le permitirá especificar dónde está, ¡y lo

tendrá en su pantalla!

La Ventana de Miembros Fuente le ofrece no sólo el texto del miembro fuente, utilizando Codificación

en Colores cuando esté disponible, sino también los detalles del miembro fuente, como las fechas en

que se creó, modificó, ....

La Ventana de Chat es la ventana que utilizará para mantener una conversación de texto con cualquier

usuario en el AS/400. Cuando necesite hablar para intercambiar ideas sobre sus programas, hablar con

usuario sobre un fallo que hayan encontrado,... si no tiene un teléfono o otra forma de comunicarse con

ellos, puede usar la utilidad de chat.

3.2 Proyectos de Depuración Un Proyecto de Depuración encapsula los objetos necesarios para depurar un programa en el AS/400:

El propio programa, y el trabajo depurado. El trabajo probablemente cambiará entre las sesiones de

depuración, porque el trabajo puede no estar activo o puede haber terminado desde la sesión de

depuración previa.

Pero un Proyecto de Depuración de VISUAL Message Center Debugging Agent es más que eso:

También le permite encapsular otros objetos de AS/400 en el proyecto. Estos objetos pueden ser

trabajos, miembros fuente, o cualquier otro tipo de objeto.

Esto le permite mantener juntos los objetos relacionados con el proceso de depuración. Obtendrá todos

sus detalles si va al Administrador de Proyectos y abre el objeto.

© 2013 Tango/04 Computing Group Página 13

VISUAL Message Center Debugging Agent

3.3 Vistas de Módulo Dependiendo de los datos de depuración incluidos en el módulo cuando fue creado por el compilador (a

través de los valores Opciones del Compilador y Vistas de Depuración), el objeto Módulo podría

tener las siguientes Vistas de Módulo disponibles:

• *LISTING: Una vista de listado generada para depurar el objeto programa. La información

mostrada en la vista depende del valor especificado del parámetro OPTION (*SHOWCPY o

*EXPDDS).

• *TEXT: Una vista de miembro fuente generada para depurar el objeto programa compilado.

Esta vista no está disponible si el miembro fuente raíz es un archivo DDM. También, si el

miembro fuente ha sido modificado después de la compilación del módulo, la vista *TEXTpuede ser diferente que el miembro fuente, pero es el fuente exacto del módulo que se está

ejecutando en ese momento.

• *EXTENDED: Una vista de miembro fuente que incluye las copias generadas para depurar el

objeto programa compilado. De hecho, esta vista es la misma que la vista *TEXT, pero incluye

también cada miembro fuente incluido con la directiva del compilador /COPY.

• *STATEMENT: Una vista de lista que le permite depurar el objeto programa utilizando los

números de línea mostrados en la columna de más a la izquierda de la sección de código del

listado generado por el compilador.

3.4 RestriccionesLa versión actual de VISUAL Message Center Debugging Agent tiene las siguientes restricciones.

Modelo de Programación

Los programas OPM sólo pueden ser depurados si fueron compilados con las opciones *SRCDBG y/o

*LSTDBG.

Lenguaje de Programación

No hay soporte para Java en esta versión.

Versión OS/400

Las versiones de OS/400 previas a V3R7 no soportan:

• Monitores.

• Las Sentencias Cualificar y Evaluar, cuando se depuran programas OPM, incluso compilados

con las opciones *SRCDBG y/o *LSTDBG, en versiones de OS/400 anteriores a V3R7.

Proyecto de Depuración

• No está permitido abrir dos o más proyectos para depurar el mismo programa al mismo

tiempo, incluso si los trabajos para depurarlos son diferentes.

• No está permitido abrir dos o más proyectos para depurar el mismo trabajo al mismo tiempo,

incluso si los programas a depurar son diferentes.

Trabajos:

• Esta versión no soporta la depuración de Trabajos en Cola de Trabajos.

© 2013 Tango/04 Computing Group Página 14

VISUAL Message Center Debugging Agent

Nuestro equipo de desarrollo está trabajando para superar estas restricciones tan pronto como sea

posible, y puede esperar que estas restricciones se solucionarán en las siguientes versiones, con

características adicionales incluidas. Contacte su distribuidor autorizado para pedir cualquier mejora o

funcionalidad no proporcionada.

3.5 Ventana PrincipalLa Ventana Principal se localiza en la parte superior de la pantalla cuando está maximizada, pero

puede cambiarla a un tamaño personalizado y Añadirla donde quiera. Haga clic en la imagen inferior

para obtener una descripción de cada elemento.

Figura 1 – Ventana Principal

3.6 Administrador de ProyectosEl Administrador de Proyectos organiza y proporciona acceso rápido a los proyectos de depuración

abiertos. La versión actual de VISUAL Message Center Debugging Agent le permite depurar diversos

programas en el mismo proyecto (necesario para depurar completamente programas que realicen

llamadas a otros programas o programas de servicio), y también tener diversos proyectos de

depuración abiertos al mismo tiempo (pero sólo cuando no compartan ni los mismos programas ni el

mismo trabajo de depuración).

Haga clic en la imagen inferior para obtener una descripción de cada elemento.

Figura 2 – Administrador de Proyectos

3.7 Ventana de TrabajosVISUAL Message Center Debugging Agent visualiza toda la información relacionada con los trabajos

capturados en la ventana de trabajos. También permite abrir diferentes trabajos, de este modo puede

acceder los trabajos de diferentes usuarios al mismo tiempo. El número de ventanas que puede

mantener abiertas depende de la memoria de su PC. Haga clic en la imagen para obtener una

descripción detallada de cada elemento.

© 2013 Tango/04 Computing Group Página 15

VISUAL Message Center Debugging Agent

Figura 3 – Ventana de Trabajos

La información relacionada con los trabajos se muestra en diferentes páginas que se pueden

seleccionar con las pestañas de la parte inferior de la ventana:

Página de Pantalla

Esta página sólo está habilitada cuando el trabajo es interactivo, y visualiza la pantalla del trabajo.

Página de Anotaciones del Trabajo

Muestra las anotaciones del trabajo capturado. Cada entrada en las anotaciones tiene un icono

asociado al tipo de mensaje. Refiérase al tema Iconos de Mensajes en Anotaciones para una

descripción detallada.

Página de Área de Datos Local (LDA)

Muestra el Área de Datos Local del trabajo. También puede escoger verla en formato CHAR o HEX.

Página de Lista de Bibliotecas (LIBL)

Muestra la Lista de Bibliotecas del trabajo. Puede redimensionar y reordenar los campos de la lista

arrastrando y soltando las cabeceras de las columnas de la lista.

Puede hacer doble clic en cualquiera de las bibliotecas para abrir el Explorador de Sistema y ver el

contenido de la biblioteca.

Página de Contenido de QTEMP

Muestra un listado del contenido de la biblioteca temporal del trabajo. Muestra el nombre del objeto,

tipo, atributo y texto descriptivo.

Puede redimensionar y reordenar los campos de la lista arrastrando y soltando las cabeceras de las

columnas de la lista.

También puede ordenar la lista de objetos simplemente haciendo clic en la cabecera de la columna

deseada, y ordenando la lista de objetos por nombre, tipo, ....

© 2013 Tango/04 Computing Group Página 16

VISUAL Message Center Debugging Agent

Página de Pila de Llamadas

Muestra la pila de llamadas del trabajo, esto es, los programas que ya se están ejecutando en el

trabajo, y el orden de invocación de esos programas.

Puede incluir o excluir los Programas de Sistema y VISUAL Debugger de ser mostrados, sólo

marcando o desmarcando la casilla de verificación de la parte inferior de la página.

Puede redimensionar y reordenar los campos de la lista arrastrando y soltando las cabeceras de las

columnas de la lista.

Y también, puede depurar programas que ya se estén ejecutando en el trabajo. Simplemente haga

doble clic sobre el programa que desee depurar, o haga clic con el botón derecho y seleccione Depurar

del menú contextual, y se creará automáticamente un Proyecto de Depuración para depurar el

programa. La Ventana de Depuración se abrirá, y se mostrará el código fuente (si está disponible),

señalando la sentencia actualmente en ejecución.

Página de Información del Trabajo

Muestra detalles sobre el trabajo: Tipo de Trabajo, Estado del Trabajo, Prioridad del Trabajo, Time

Slice, conmutadores, Fecha del Trabajo, Inicio del Trabajo, Entrada del Sistema, Última Interacción del

Usuario y Última Interacción del Sistema.

Página de Mandatos

Le ofrece la posibilidad de ejecutar mandatos en los trabajos capturados desde su PC. Usted puede

teclear mandatos directamente en la línea de mandatos (==>) y pulsar Intro para someter el mandato,

F4 para solicitar parámetros adicionales, y F9 para recuperar mandatos previos.

Si usted ejecuta un mandato con salida a pantalla, dicha salida aparecerá en la pantalla del trabajo

capturado. Puede ver la salida simplemente cambiando a la Página de Pantalla y refrescándola. Por

favor, tenga en cuenta que el mandato puede requerir una interacción del usuario (por ejemplo, pulsar

F3) para finalizar normalmente. Para evitar la necesidad de una respuesta del usuario, usted puede

redirigir la salida a un archivo o a un archivo en spool, y mirar mas tarde dicho archivo o entrada de

spool.

3.8 Ventana de DepuraciónDesde la Ventana de Depuración depurará sus programas. Como es de esperar, visualiza el código

fuente del programa, pero también mucha información relacionada, y herramientas para depurar y

explorar la aplicación.

© 2013 Tango/04 Computing Group Página 17

VISUAL Message Center Debugging Agent

Figura 4 – Ventana de depuración

A la izquierda, puede ver el Navegador de Programa, que le permite comprender y navegar por su

aplicación. La información relacionada con el programa se muestra en diferentes páginas que pueden

ser seleccionadas con las pestañas de la parte inferior de la ventana.

Página Fuente

Esta página visualiza el código fuente del módulo actualmente seleccionado. También muestra la Lista

de Variables. Haga clic en los hipervínculos para navegar por el código fuente. Seleccionar cualquier

expresión del código fuente y hacer clic en el botón Editar Lista Editar Variable permite añadir la

expresión a la Lista de Variables. Cuando la aplicación está ejecutándose o detenida, seleccionar

cualquier expresión y hacer clic con el botón derecho mostrará el valor de la expresión. Los símbolos en

la Área Estado de Sentencia, el panel gris a la izquierda del código fuente, tienen los siguientes

significados:

Indica que es una sentencia ejecutable.

• Haga clic sobre él para añadir un Punto de Ruptura.

• Presione Shift y haga clic para añadir un Punto de Ruptura Condicional.

• Presione Ctrl y haga clic para añadir un Punto de Ruptura Temporal.

Indica que el programa está detenido en esa sentencia.

Indica que la operación del programa se ha reanudado en esa sentencia.

Indica que la sentencia se ha ejecutado.

Un Punto de Ruptura Incondicional está activo en la sentencia.

• Haga clic para eliminarlo.

Un Punto de Ruptura Condicional está activo en la sentencia.

• Haga clic para eliminarlo.

Un Punto de Ruptura Temporal está activo en la sentencia.

© 2013 Tango/04 Computing Group Página 18

VISUAL Message Center Debugging Agent

• Haga clic para eliminarlo.

Página Información del Fuente

Visualiza información relacionada con el código fuente, fecha y hora de creación, fecha y hora de

modificación,...

Página de Información de Objeto

Muestra detalles de los Objetos Programa y Módulo.

Explorador de Aplicaciones

Muestra el árbol de referencias de la aplicación, que es la estructura jerárquica de los objetos referidos

por la aplicación. Además, permite al usuario navegar por esa estructura.

Diccionario de Datos

Muestra la lista de las variables utilizadas por el módulo activo. Si el programa se está ejecutando,

seleccione y haga clic en una variable para ver su valor. Haciendo clic en el botón Editar Variable le

permite añadir la variable a la Lista de Variables.

3.9 Navegador de ProgramaEl Navegador de Programa utiliza técnicas de ingeniería inversa para analizar el código fuente, y

construir dos vistas complementarias del programa:

Vista Fan-Out ( ): Imagine que su código fuente es un manual de 300 páginas. Si usted estuviese

buscando cierta información en el manual, ¿buscaría a ciegas página a página por todo el manual?

¡Desde luego que no! Primero miraría la Tabla de Contenidos para buscar el Capítulo y el Apartado y la

página en que se encuentran. El Fan-Out actúa como una Tabla de Contenidos. Proporciona la

estructura, sentencia a sentencia, del programa. Una Tabla de Contenidos es también el lugar idóneo

para obtener una idea rápida del manual, que temas trata, etc. De forma análoga, el Fan-Out

proporciona al programador una vista rápida de la lógica del programa.

Vista Fan-In ( ): Usando la misma analogía, si usted estuviese buscando todas las referencias a una

palabra o tema específico, usted pasaría de la Tabla de Contenidos directamente al final del manual, al

Índice. Esta es la vista de Fan-In.

Ambas vistas le permiten navegar por el código: haga clic en una subrutina, una llamada a una

subrutina. Cualquier elemento en los árboles Fan-Out y Fan-In, y el código fuente se posicionará

automáticamente en este punto. También puede expandir o colapsar en una profundidad concreta,

utilizando los botones de la parte inferior. También puede seleccionar, en la Página Opciones, lo que

quiere ver o no ver en los árboles: etiquetas, bifurcaciones, llamadas externas,...

El Navegador de Programa le dará una herramienta única para las tareas de análisis de impacto,

revisión, modificación y ampliación de prestaciones. Le da una visión clara de las referencias cruzadas

y las dependencias del programa. Con el Navegador de Programa es un juego de niños saber qué

partes del código fuente se verán afectadas por cualquier cambio.

3.9.1 Lista de VariablesLa Lista de Variables muestra una lista de expresiones que son evaluadas cada vez que la operación

del programa se suspende a causa de una sentencia paso a paso, un punto de ruptura alcanzado o un

cambio en una variable monitorizada. La Lista de Variables muestra la expresión que se evalúa, su tipo,

© 2013 Tango/04 Computing Group Página 19

VISUAL Message Center Debugging Agent

y su valor cuando el programa se está ejecutando. También muestra el campo Monitor que permite

activar / desactivar rápidamente monitores para las variables de la Lista de Variables, simplemente

marcando / desmarcando la casilla de verificación monitor. Referirse al tema Sentencia Monitorizar para

una descripción detallada de qué son y cómo funcionan los monitores.

Tan sólo tiene que seleccionar la variable en el fuente, arrástrela a la Lista de Variables o pulse el botón

de Editar Variable ( )para añadir la variable a la vista.

3.9.2 Explorador de Aplicaciones El Explorador de Aplicaciones es una de las características únicas de VISUAL Message Center

Debugging Agent. Muestra el árbol de referencias de una aplicación, que es la estructura jerárquica de

los objetos referidos por la aplicación. Además, permite al usuario navegar por la estructura: Haciendo

clic con el botón derecho sobre un objeto en el árbol, le permitirá abrir ese objeto en una nueva

ventana, añadir programas a una sesión de depuración,...

Figura 5 – Explorador de Aplicaciones

Algunos objetos por lo general no tienen una biblioteca especificada (esto es, están localizados en

alguna biblioteca en la Lista de Bibliotecas) y tendrá que especificarla antes de poder expandir el nodo

de ese objeto.

3.10 Ventana de ObjetosVISUAL Message Center Debugging Agent visualiza toda la información relacionada con objetos en

una ventana muy similar a la Ventana de Depuración: la Ventana de Objetos. La información se

muestra en diversas páginas que se pueden seleccionar a través de las pestañas de la parte inferior de

la ventana:

Página Miembro Fuente

Cuando está disponible, muestra el código fuente del objeto. Cuando el lenguaje de programación es

RPG III, RPG IV, DDS, COBOL, CL o C, le permite personalizar su configuración de Color Coding a

través del Diálogo de Configuración de Color Coding, y hacer clic en los hipervínculos para navegar por

el código fuente. El Navegador de Programa también está disponible para navegar y entender el

programa.

© 2013 Tango/04 Computing Group Página 20

VISUAL Message Center Debugging Agent

Página Información del Fuente

Muestra información relacionada con el código fuente, fecha y hora de creación, fecha y hora de

modificación,...

Página de Información de Programa/Módulo/Objeto

Muestra detalles sobre los Objetos.

Explorador de Aplicaciones

Muestra el árbol de referencias de la aplicación, que es la estructura jerárquica de los objetos referidos

por la aplicación. Además, permite al usuario navegar por esa estructura.

Diccionario de Datos

Muestra la lista de las variables utilizadas por el módulo activo. Si el programa se está ejecutando,

seleccione y haga clic en una variable para ver su valor. Haciendo clic en el botón Editar Variable le

permite añadir la variable a la Lista de Variables.

Página Post Mortem RPG

Muestra información detallada un programa RPG III en ejecución. Cuando un programa falla, el Post

Mortem RPG le da un informe detallado del estado del programa en ese momento.

VISUAL Message Center Debugging Agent le permite tener varias ventanas de objetos abiertas, de

manera que pueda acceder diferentes objetos al mismo tiempo. El número de ventanas que puede

mantener abiertas depende de la memoria de su PC.

3.11 Ventana de Miembros Fuente VISUAL Message Center Debugging Agent visualiza toda la información relacionada con miembros

fuente en una ventana muy similar a la Ventana de Depuración.: la Ventana de Miembros Fuente. La

información se muestra en diversas páginas que se pueden seleccionar a través de las pestañas de la

parte inferior de la ventana:

Página Miembro Fuente

Cuando está disponible, muestra el código fuente del objeto. Cuando el lenguaje de programación es

RPG III, RPG IV, DDS, COBOL, CL o C, le permite personalizar su configuración de Color Coding a

través del Diálogo Configuración Color Coding, y hacer clic en los hipervínculos para navegar por el

código fuente. El Navegador de Programa también está disponible para navegar y entender el

programa.

Página Información del Fuente

Muestra información relacionada con el código fuente, fecha y hora de creación, fecha y hora de

modificación,...

3.12 Ventana de Chat VISUAL Message Center Debugging Agent también le da la posibilidad de "conversar" (en modo texto)

con cualquier usuario AS/400.

© 2013 Tango/04 Computing Group Página 21

VISUAL Message Center Debugging Agent

Figura 6 – Ventana de chat

3.13 Diálogos

3.13.1 Diálogo Propiedades del ProyectoEl Diálogo Propiedades del Proyecto se muestra para ver o introducir información sobre un Proyecto de

Depuración. Puede verlo en la imagen inferior.

Figura 7 – Diálogo de Propiedades del Proyecto

3.13.2 Explorador de Trabajos El Explorador de Trabajos le permite seleccionar trabajos del sistema AS/400 actualmente conectado.

Puede verlo en la imagen siguiente.

Figura 8 – Explorador de Trabajos

© 2013 Tango/04 Computing Group Página 22

VISUAL Message Center Debugging Agent

3.13.3 Diálogo Opciones de EntornoEl Diálogo Opciones de Entorno le permite configurar el Entorno de VISUAL Message Center

Debugging Agent. Las opciones de Entorno se agrupan en cinco categorías:

• Generales

• Editor de Miembros Fuente

• Emulación 5250

• Mapeo de Teclado

• Servidor

• Seguridad

• Caché

Opciones Generales

Las Opciones Generales le permiten personalizar el comportamiento de VISUAL Message Center

Debugging Agent en ciertas situaciones. Puede ver la página Opciones Generales abajo.

Figura 9 – Opciones Generales en el Diálogo de Opciones de Entorno

Opciones del Editor de Miembros Fuente

Las Opciones del Editor de Miembros Fuente le permiten personalizar su Editor de Miembros Fuente.

Puede elegir entre la Utilidad Estándar SEU del AS/400, o cualquier editor basado en PC.

© 2013 Tango/04 Computing Group Página 23

VISUAL Message Center Debugging Agent

Figura 10 – Opciones del Editor de Miembros Fuente

Al marcar la opción "Activar Aplicación de Edición" automáticamente le abrirá su aplicación de edición,

siempre que seleccione editar una fuente.

Opciones de Emulación 5250

Esta página le permite especificar cual es su Software de Emulación 5250, para que su sesión 5250

sea activada automáticamente cuando usted inicie una sesión de SEU.

Figura 11 – Opciones de Emulación 5250 en el Diálogo de Opciones de Entorno

Opciones de Mapeo de Teclado

En el pasado, las aplicaciones tenían un conjunto de teclas de acceso directo predefinidas,

combinaciones de pulsaciones de teclas que efectuaban rápidamente tareas predefinidas. Cada

vendedor de programas utilizaba un conjunto diferente de teclas de acceso directo para sus

aplicaciones, forzando al usuario a aprender el conjunto de teclas de acceso directo para cada

aplicación. El Sistema operativo Windows® ha solucionado parcialmente este problema estandarizando

teclas de acceso directo para ciertas acciones (Ctrl+C para Copiar, Ctrl+V para Pegar, etc.).

Pero las aplicaciones Cliente/Servidor son un asunto distinto: incluso cuando la aplicación Cliente está

basada en Windows, el usuario normalmente tiene conocimiento previo de los accesos directos en

aplicaciones similares que se ejecutan en el Servidor, con un Sistema Operativo no Windows® , por

ejemplo OS/400.

La solución a ese problema es dejar que el usuario defina su propio conjunto de accesos directos. Con

aplicaciones habilitadas para KMF, como VISUAL Message Center Debugging Agent, esto se consigue

con el Editor KMF.

© 2013 Tango/04 Computing Group Página 24

VISUAL Message Center Debugging Agent

Las Opciones de mapeo de teclado permiten que el usuario configure sus asignaciones de accesos

directos.

Figura 12 – Opciones de Mapeo de Teclado en el Diálogo Opciones de Entorno

Opciones del Servidor

Esta página le permite modificar parámetros relacionados con la comunicación con su sistema AS/400.

Figura 13 – Opciones del Servidor en el Diálogo Opciones de Entorno.

Time Out: El tiempo máximo que VISUAL Message Center Debugging Agent estará esperando la

respuesta del AS/400. Si después de este intervalo, no se ha recibido ninguna respuesta, se devolverá

un error NiceLinkNiceLink Time Out Error (-11), y perderá la conexión. Incremente este valor para evitar

desconexiones por time-out.

Polling Time: Cuando se está llevando a cabo una acción asíncrona en el AS/400, como la ejecución

de un mandato, o se está esperando que el usuario de AS/400 envíe un mensaje de chat, VISUAL

Message Center Debugging Agent debe comprobar el sistema periódicamente, con un intervalo de

tiempo denominado Polling-Time, para comprobar si la acción se ha completado. Cada vez que el PC

chequea el AS/400, se produce una conversación. Si se está conectando a un AS/400 lento, o si tiene

una carga pesada, y tiene un Polling Time muy bajo, este tráfico de comunicaciones incrementa los

tiempos de respuesta. Puede incrementar el Polling Time para evitar esta situación.

Opciones de Seguridad

Debido a limitaciones de la arquitectura del controlador de las estaciones de trabajo 5250 de OS/400, la

captura de la pantalla de usuarios que * a la vez * están introduciendo datos con el teclado, puede

resultar en la pérdida mínima posible de teclas. La página de Opciones de Seguridad permite al usuario

© 2013 Tango/04 Computing Group Página 25

VISUAL Message Center Debugging Agent

utilizar el modo más seguro de recuperación de la pantalla, que deshabilita la capacidad Auto

Refresco pero convierte a VISUAL Message Center Debugging Agent en totalmente transparente para

el usuario cuyo trabajo se está capturando. Si el modo más seguro de recuperación no se utiliza, se

habilita el Auto Refresco.

Figura 14 – Opciones de Seguridad en el Diálogo de Opciones de Entorno

Opciones de Caché

VISUAL Message Center Debugging Agent utiliza un directorio temporal o Caché para almacenar

algunos datos del AS/400 que cambian con poca frecuencia, y mejorar el rendimiento cuando estos

datos se necesitan a menudo: Si los datos solicitados han cambiado, se vuelven a recuperar del AS/

400, pero si no es así, se recuperan de la copia almacenada en la caché, que es más rápido que

recuperarlos del AS/400.

La "Cantidad de espacio de disco a usar" define el tamaño máximo de disco que la información

almacenada en el directorio de caché puede tener. La primera vez que se ejecuta VISUAL Message

Center Debugging Agent, se toma dicho valor como el 1% del espacio libre de disco, pero usted puede

cambiar éste valor cuando lo desee.

Figura 15 – Opciones de caché en el Diálogo de Opciones de Entorno

3.13.4 Diálogo Información del Sistema El Diálogo Información del Sistema le proporciona información relacionada con el Sistema AS/400 al

que está conectado en este momento, y relacionada con el estado de VISUAL Message Center

Debugging Agent.

© 2013 Tango/04 Computing Group Página 26

VISUAL Message Center Debugging Agent

Información del Sistema AS/400: Fecha del Sistema, Hora del Sistema, Número de Serie del AS/400,

Modelo y Submodelo AS/400, Versión OS/400, Último Cumulativo Cargado(Nivel PTF) y Nivel de

Seguridad.

Estado del Producto: Versión del Producto en el AS/400, Versión del Producto en el PC, Estado del

Producto y Versión Operativa.

3.13.5 Diálogo Recuperación de Sesión de Depuración Un tema relevante cuando se está depurando utilizando un depurador basado en PC es qué ocurre en

el caso de un fallo de conexión de red, o si falla el PC. VISUAL Message Center Debugging Agent le

protege de la posibilidad de que esto ocurra. Simplemente reconecte VISUAL Message Center

Debugging Agent con el mismo trabajo, y Tome el Control del trabajo.

Figura 16 – Diálogo Recuperación de Sesión de Depuración

VISUAL Message Center Debugging Agent le alertará de que hubo un fallo en la sesión anterior. Debido

a que tan sólo un usuario puede depurar un trabajo, si existe otra sesión activa de VISUAL Message

Center Debugging Agent, será cancelada, y se eliminará cada punto de ruptura.

Si el trabajo a depurar no responde, es posible que al tomar el control, el trabajo pueda continuar con

una ejecución normal, evitando cancelar anormalmente el trabajo (por ejemplo, cuando la conexión

entre el PC y el AS/400 se ha perdido).

3.13.6 Diálogo Iniciar ProgramaCuando quiere empezar a ejecutar el programa en depuración, y quiere hacerlo desde el PC haciendo

clic en el botón Ejecutar ( )o utilizando la Sentencia Ejecutar en la línea de mandatos, se le pedirá que

introduzca el programa a llamar y sus parámetros. Si está depurando un Programa (Objeto *PGM), este

programa se mostrará por defecto, pero puede especificar otro programa que llame el que está

depurando. Si está depurando un Programa de Servicio (Objeto *SRVPGM), debe especificar el

programa a llamar.

Figura 17 – Diálogo Iniciar Programa

© 2013 Tango/04 Computing Group Página 27

VISUAL Message Center Debugging Agent

3.13.7 Diálogo Finalizar TrabajoSi está depurando un Trabajo por Lotes (Batch) y intenta detener el programa depurado, la única forma

de hacerlo es finalizando el Trabajo. El Diálogo Finalizar Trabajo le permite definir cómo quiere finalizar

el programa.

Figura 18 – Diálogo Finalizar Trabajo

3.13.8 Diálogo Detenido en Programa No-DepurableLos programas no depurables son aquellos que fueron compilados sin información de depuración, o

bien, programas OPM COBOL cuyo archivo de listado de compilación en spool no existe. Esto significa

que no es posible depurar dicho programa. Aún así, la ejecución de un programa puede detenerse en

un programa no depurable a causa de una sentencia paso a paso, un monitor o una condición de

excepción. Cuando esto sucede, se muestra el siguiente diálogo. Usted debe seleccionar la acción

apropiada:

Figura 19 – Diálogo Detenido en Programa no depurable

Las acciones disponibles son las siguientes:

Continuar: Esta acción no añade el programa detenido a la sesión de depuración pero realiza una

sentencia PASO A PASO. El punto de ejecución se mostrará en el programa previo, el que llamó al

detenido.

Pausar: Esta acción simplemente suspende la ejecución del programa. Una vez que la ejecución está

suspendida, puede Añadir un punto de ruptura en una sentencia ejecutada después del programa

detenido, y continuar la ejecución con una sentencia EJECUTAR.

Si usted necesita depurar este programa, deberá recompilarlo incluyendo información de depuración:

• Si el programa es un Programa ILE, deberá especificar un valor de "Vistas de Depuración"

diferente de *STMT o *NONE en los Parámetros Adicionales del Compilador.

• Si el programa es un Programa OPM, deberá especificar un valor para "Opciones de listado

fuente" diferente de *NOSOURCE, *NOSRC, *NOSRCDBG o *NOLSTDBG en los Parámetros

Adicionales del Compilador

3.13.9 Diálogo Archivo de Listado COBOL en SpoolPara depurar Programas OPM COBOL se necesita el Archivo de Listado COBOL en Spool generado

por el compilador, independientemente de cuales fueron las opciones de compilación utilizadas.

VISUAL Message Center Debugging Agent busca de forma automática éste archivo en spool. Pero si

© 2013 Tango/04 Computing Group Página 28

VISUAL Message Center Debugging Agent

no puede localizar el archivo, se mostrará el siguiente diálogo para que usted cambie los valores de

búsqueda por defecto:

Figura 20 – Diálogo de Archivo de Listado COBOL en Spool

Como se puede observar, usted puede seleccionar:

• Usuario de Compilación COBOL: El nombre del usuario que compiló el programa y generó el

archivo en spool. Usted puede especificar cualquier nombre de usuario válido, o elegir entre

uno de los siguientes valores predefinidos:

− *ALL: Busca entre todos los archivos en spool con el Nombre de Listado indicado, sin

tener en cuenta el usuario que compiló el programa.

− *CURRENT: Busca un archivo en spool con el Nombre de Listado indicado, generado por

el usuario con que se inició la sesión de VISUAL Message Center Debugging Agent.

− *PGM: Busca un archivo en spool con el Nombre de Listado indicado, generado por el

propietario del programa.

• Nombre de Listado: El nombre del archivo en spool. Puede especificar cualquier nombre

válido, o utilizar el valor predefinido *PGM, es decir, el nombre del programa.

3.13.10 Diálogo Condición de Ruptura Diálogo Condición de Ruptura se visualiza cuando intenta Añadir un Punto de Ruptura Condicional

manteniendo presionada la tecla Shift y haciendo clic en el Área de Estado de Sentencia en una

sentencia ejecutable. El Diálogo le permite introducir la condición que suspenderá la operación del

programa, en la sentencia seleccionada, cuando se cumpla la condición. Para ver la condición, una vez

ya se ha colocado el punto de ruptura condicional, haga clic con el botón derecho sobre el icono del

punto de ruptura condicional ( ) en el Panel de Estado de Sentencia de la sentencia.

Figura 21 – Diálogo Condición de Ruptura

3.13.11 Diálogo Iniciar Sesión SEU Puede empezar a editar un Miembro Fuente desde VISUAL Message Center Debugging Agent

simplemente haciendo clic en el botón Iniciar Sesión SEU ( ). Dependiendo de la ventana en que esté

cuando haga clic en el botón, necesitará proporcionar el Trabajo en que se iniciará la sesión SEU, y el

Miembro fuente que desea editar. También puede elegir editar, explorar o imprimir el miembro.

© 2013 Tango/04 Computing Group Página 29

VISUAL Message Center Debugging Agent

Es importante notar que la sesión SEU se iniciará en la sesión del trabajo 5250, no en VISUAL

Message Center Debugging Agent.

Si usted ha definido cual es su programa de emulación 5250, su sesión 5250 será activada

automáticamente, es decir, traída a un primer plano, con el miembro fuente especificado listo para ser

editado.

Figura 22 – Diálogo Iniciar Sesión SEU

3.13.12 Diálogo BuscarIncluso cuando el Lenguaje de Mandatos de Depuración proporciona la sentencia BUSCAR para

realizar búsquedas en sus miembros fuente, puede tener una sintaxis complicada para patrones de

búsqueda complejos. El Diálogo Buscar proporciona una herramienta muy intuitiva para buscar en sus

miembros fuente:

• Buscar cualquier cadena de texto en la página de Texto.

• Buscar distintos tipos de sentencia en la página de Sentencias.

• Buscar sentencias modificadas en una fecha específica en la página de Cambios.

Los resultados del procedimiento de búsqueda se visualizan en Anotaciones de Mandatos, pero dichos

resultados pueden Resaltarse en el fuente marcando la opción de Resaltar Resultados. Las sentencias

que coincidan con la condición de búsqueda serán resaltados usando el color indicado. Haga clic en las

anotaciones de mandatos, y se marcará en el fuente. Puede verlo en la imagen inferior. Haga clic en

cualquiera de las opciones para obtener una descripción detallada.

Figura 23 – Diálogo Buscar

3.13.13 Diálogo Propiedades de la VariableEl Diálogo Propiedades de la Variable le permite editar las expresiones de la Lista de Variables.

Puede verlo en la imagen inferior. Haga clic en cualquier elemento para obtener una explicación

detallada.

© 2013 Tango/04 Computing Group Página 30

VISUAL Message Center Debugging Agent

Figura 24 – Diálogo Propiedades de la Variable

3.13.14 Diálogo Trabajar con VariablesEl Diálogo Trabajar con Variables no sólo le permite ver el valor o resultado de una expresión en un

formato adecuado, sino que también le deja modificar el valor de una variable. Puede verlo en el

diálogo inferior.

Figura 25 – Diálogo Trabajar con Variables

Como puede ver, puede escoger entre "Formato Hexadecimal" para ver las variables en hexadecimal, y

"cadena entre Comillas", para mostrar cadenas enmarcadas por comillas o sin ellas.

También puede escoger "Mostrar Tipos de Campo" para variables de registro o estructura, y se

mostrará el tipo de cada campo.

La opción "Dereferenciar Apuntadores" es una funcionalidad única y extremadamente útil para el

desarrollo en C. Por ejemplo, en lenguaje de programación C, las variables de cadena de caracteres se

implementan como apuntadores a arrays de caracteres. La variable de cadena en si misma es un

apuntador, no una cadena de caracteres. Mostrándola como una variable mostrará los contenidos de la

variable apuntadora, o lo que es lo mismo, un lugar en la memoria, en lugar de la cadena de caracteres.

Si marca esta opción indica a VISUAL Message Center Debugging Agent que dereferencie las variables

apuntadoras, con lo que no se mostrarán los contenidos del apuntador, si no los del lugar en la memoria

indicada por el apuntador, la cadena de caracteres en el ejemplo anterior. Pero la dereferenciación no

sólo se aplica a las variables de cadena, sino también a los apuntadores de estructura, que se utilizan

ampliamente en C.

3.13.15 Utilidad de Entrada de Mandatos La Utilidad de Entrada de Mandatos AS/400 emula la pantalla de prompt nativa del AS/400: Siempre

que necesite mas AS/400 es como un formulario con campos de entrada para que usted le proporcione

la información (valores de parámetro) necesarios para ejecutar el mandato. Cuando es posible, se

© 2013 Tango/04 Computing Group Página 31

VISUAL Message Center Debugging Agent

proporciona el valor por defecto del sistema para cada campo. Usted puede usar el valor por defecto

que muestra en el campo o teclear otro diferente.

Consulte la descripción detallada para más información al respecto.

Figura 26 – Utilidad de Entrada de Mandatos para el mandato Someter Trabajo

3.14 Asistente para Mapeo de Fuentes Muchas compañías suelen tener varios sistemas AS/400. La situación común es la siguiente:

• Las aplicaciones se desarrollan en una Máquina de Desarrollo, la máquina donde se crea y

modifica el código fuente de la aplicación, y donde se crean los programas utilizando el

compilador. Las primeras pruebas funcionales se realizan en esta máquina, utilizando bases

de datos de prueba. Las bases de datos de prueba son bases de datos con la misma

estructura que tendrán cuando la aplicación pase a producción, pero con pequeñas cantidades

de datos, en muchos casos, datos sintéticos generados para realizar las pruebas.

• Cuando la aplicación ha sido probada a nivel funcional, se mueve a una Máquina de

Integración o de Prueba. Muchas veces, el código fuente también se copia en esa máquina,

pero en diferentes localizaciones. La máquina de prueba tiene bases de datos casi reales, esto

es, con mucha más información que las que había en la máquina de desarrollo, y datos reales

actualizados desde las bases de datos de producción. La máquina de test suele tener una

cantidad de trabajo mayor que la máquina de desarrollo, porque diferentes aplicaciones están

siendo probadas concurrentemente. La aplicación es también probada en esa máquina, pero

es una prueba de más alto nivel, trabajando bajo condiciones casi reales, y si la aplicación

falla, no hay riesgo de perder información valiosa.

• Cuando la aplicación ha superado con éxito todas las pruebas realizadas en la máquina de

prueba o de integración, finalmente se mueve a la Máquina de Producción, la máquina

donde se encuentran todas las aplicaciones que manipulan la información valiosa de la

compañía. El código fuente casi nunca se copia a la máquina de la producción.

Una de las características más destacadas de VISUAL Message Center Debugging Agent es la

capacidad para depurar un programa que ya está en ejecución. Así, cuando se detecta un error en la

Máquina de Prueba o en la Máquina de Producción, puede depurar el programa en el momento preciso

en que se produce el error. El beneficio principal de esta funcionalidad es que el programador no

necesita reproducir las mismas condiciones de error en la Máquina de Desarrollo. Reproducir las

condiciones de error es siempre difícil, cuando no imposible. Pero el problema común en otros

© 2013 Tango/04 Computing Group Página 32

VISUAL Message Center Debugging Agent

depuradores es que el objeto de programa referencia un miembro fuente que no existe en la misma

máquina, haciendo imposible depurar el programa.

El Asistente de Mapeo de Fuentes le permite definir cómo recuperar los miembros fuente

referenciados por los programas. Utilizando un sistema de mapeo basado en reglas, el Asistente de

Mapeo de Fuentes indicará a VISUAL Message Center Debugging Agent cómo obtener los miembros

fuente necesarios para depurar los programas.

3.14.1 ¿Qué son las Reglas de Mapeo?El Asistente de Mapeo de Fuentes es un sistema de mapeo basado en reglas. El Proceso de Mapeo

traduce una referencia a un miembro fuente en una referencia a otro miembro fuente. Para simplificar la

exposición siguiente, nos referiremos al miembro fuente siendo mapeado como al fuente, y al miembro

fuente resultado del proceso de mapeo como destino. La forma en que el proceso de mapeo traduce la

fuente para obtener el destino se referirá como el Esquema de Mapeo.

Como puede haber deducido, no cada fuente se debe mapear de la misma forma al mismo destino:

necesitaremos diferentes esquemas de mapeo para diferentes fuentes. Pero tener diferentes

esquemas de mapeo introduce una nueva pregunta: ¿Qué esquema de mapeo debe utilizarse en cada

caso? La respuesta son las Reglas de Mapeo.

Las Reglas de Mapeo definen cuando debe utilizarse una regla, y qué esquema de mapeo debe

utilizarse. Las reglas de mapeo tienen dos partes:

• El patrón de concordancia: que define cuándo utilizar una regla. Cada vez que se necesita

traducir un fuente, el fuente se compara con el patrón de concordancia. Si la comparación

tiene éxito, la regla se aplicará.

• El patrón de reemplazo: que define el esquema de mapeo. Cuando se aplica la regla de

mapeo, el patrón de reemplazo se aplica al fuente para obtener el destino.

El Asistente de Mapeo de Fuentes está formado básicamente por una lista ordenada de reglas de

mapeo, y la lógica para el proceso de mapeo. Cuando un fuente necesita ser traducido, el proceso de

mapeo busca una regla en la lista cuyo patrón de concordancia se compare con éxito con el fuente, y

entonces, el patrón de reemplazo se aplica para obtener finalmente el destino.

3.14.2 Asistente para Búsqueda de FuentesPuede ver el Asistente para Búsqueda de Fuentes en la imagen inferior.

Figura 27 – Asistente para Búsqueda de Fuentes

© 2013 Tango/04 Computing Group Página 33

VISUAL Message Center Debugging Agent

Como puede ver, muestra la lista de reglas de mapeo. Las Reglas de Mapeo pueden estar activadas

(cuando la casilla de verificación está marcada) o desactivadas (cuando la casilla no está marcada).

Cuando cualquier objeto se refiere a un miembro fuente, el Asistente de Mapeo de Fuentes busca una

Regla de Mapeo que concuerde con ese miembro. La regla que concuerde se busca en el orden

visualizado, de arriba a abajo. Si se encuentra una regla que concuerde con el miembro referido, se

aplica, es decir, se reemplaza con el miembro especificado por la regla de mapeo. Si no se encuentra

ninguna regla que concuerde, el miembro fuente original no se reemplaza. Pero si ese miembro no se

encuentra en el sistema, el Asistente de Mapeo de Fuentes automáticamente muestra un diálogo para

introducir una nueva regla de mapeo para reemplazar ese miembro.

Por defecto, las reglas se Ordenan Automáticamente por especificidad, esto es, las reglas que

correspondan a un rango más específico de miembros se comprueban primero, y las que correspondan

a un rango más general después. De todas formas, si desea que se comprueben en un orden diferente,

puede seleccionar Reglas ordenadas de forma personalizada, y mover las reglas arriba y abajo en la

lista utilizando los botones Mover Arriba y Mover Abajo.

En el Asistente de Mapeo de Fuentes podrá crear Nuevas reglas, y Modificar, Generalizar y Eliminar

reglas ya definidas.

3.14.3 Crear/Modificar Reglas de Búsqueda Puede ver el Diálogo de Crear/Modificar Reglas de Mapeo en la imagen inferior:

Figura 28 – Diálogo Crear/Modificar Regla de Mapeo: Reemplazo Local

Este diálogo le permite definir o modificar una regla de mapeo de fuentes. La regla de mapeo está

definida por:

• El Patrón de Concordancia:

− Cuando conectado a: Este campo especifica el nombre del sistema actual local ( el

sistema AS/400 al que la aplicación está conectada) en el momento en que se comprueba

la regla. Puede entrar el nombre del sistema AS/400, pero el valor especial *ANY también

es válido. Cuando se especifica *ANY, la regla concordará con cualquier sistema al que la

aplicación esté conectada.

− Si un objeto referencia el Miembro Fuente: Este campo especifica la localización

absoluta del miembro fuente que será traducido. La sintaxis para la localización absoluta

es:

<Nombre Sistema>: <Nombre Librería> / <Nombre Fichero> ( <Nombre Miembro>)

También puede especificar el valor especial *ANY para cualquiera de los nombres.

• El Patrón de Reemplazo:

© 2013 Tango/04 Computing Group Página 34

VISUAL Message Center Debugging Agent

− Reemplazarlo con... El Miembro Fuente Local: Esta opción reemplazará el fuente

referido con el miembro fuente especificado en el sistema local. El patrón de reemplazo

debería especificarse de la forma:

<Nombre Librería> / <Nombre Fichero> ( <Nombre Miembro> )

Puede especificar el valor especial *SAME para cualquiera de los nombres. Cuando se

especifica *SAME, el miembro fuente reemplazado tendrá el mismo valor en este nombre.

− Reemplazarlo con... El Miembro Fuente Remoto: Esta opción reemplazará el fuente

referenciado con el miembro fuente especificado del sistema remoto. El patrón de

reemplazo debería especificarse de la forma:

<Nombre Librería> / <Nombre Fichero> ( <Nombre Miembro> )

También puede especificar el valor especial *SAME para cualquiera de los nombres.

Cuando se especifica *SAME, el miembro fuente reemplazado tendrá el mismo valor en

este nombre.

− Cuando esta opción esta seleccionada, el diálogo se expandirá para mostrar los métodos

disponibles para conectar al sistema remoto: DDM y NiceLink.

Figura 29 – Diálogo Crear/Modificar Regla de Mapeo: Reemplazo Remoto

3.14.4 Generalizar ReglasPuede ver el Diálogo de Generalización de Reglas en la imagen siguiente:

Figura 30 – Diálogo de Generalización de Reglas

Generalizar una regla es modificar la regla para aplicarla a un rango mayor de miembros fuente. Por

ejemplo, la regla siguiente:

© 2013 Tango/04 Computing Group Página 35

VISUAL Message Center Debugging Agent

"Cuando se esté conectado a TANGOSAN, reemplazar los miembros fuente TANGO96:VISUALDEMO/QRPGSRC(CMDLN_LOOP) por *LOCAL:*SAME/*SAME(*SAME)"

reemplaza las referencias a los miembros fuente TANGO96:VISUALDEMO/QRPGSRC(CMDLN_LOOP) desde

TANGOSAN con el mismo miembro en la máquina local, es decir, TANGOSAN. Si desea aplicar la misma

regla a todos los miembros fuente del archivo VISUALDEMO/QRPGSRC, el botón Generalizar le permitirá

cambiar la regla automáticamente por

"Cuando se esté conectado a TANGOSAN, reemplazar los miembros fuente TANGO96:VISUALDEMO/QRPGSRC(*ANY) por *LOCAL:*SAME/*SAME(*SAME)"

la cual reemplaza cualquier referencia a un miembro fuente de DEBUDEMO/QRPGLESRC, por el mismo

miembro fuente en el sistema local.

3.15 Test TrackerMientras usted depura su código, Test Tracker trabaja en un segundo plano para rastrear que ha

probado y que no ha probado. Este nuevo módulo puede, mas tarde, generar un informe personalizado

en formato HTML, detallando el código que ha sido probado y el que no, e incluir información adicional

como el porcentaje de código probado e información de compilación del programa.

Usted puede definir por completo el informe HTML: cabeceras, pies de página, insertar el logo de su

empresa, seleccionar que programas o módulos desea incluir en el informe,... guarde el informe

generado en disco, y envíelo por correo al responsable de desarrollo, póngalo en su página web...

Los programadores ya no tendrán que probar su código una y otra vez sin control alguno, y los

responsables de desarrollo pueden tener la certeza que las pruebas se están realizando de forma

adecuada.

Visite el tema Informes de Cobertura para ver lo fácil que resulta verificar sus aplicaciones de forma

correcta.

Figura 31 – El Generador de Informes de Test Tracker en acción

© 2013 Tango/04 Computing Group Página 36

Que hacer para…

Capítulo 4 4 Que hacer para…

4.1 Iniciar un Nuevo Proyecto de DepuraciónPara Iniciar un Nuevo Proyecto de Depuración, siga estas instrucciones:

Paso 1. Vaya al Administrador de Proyectos

Paso 2. Haga clic en el botón Nuevo Proyecto

Paso 3. Seleccione el Programa y el Trabajo a Depurar en el Diálogo Propiedades del

Proyecto.

Paso 4. Se mostrará la Ventana de Depuración, y ahora ya está listo para depurar.

4.2 Guardar un Proyecto de DepuraciónPara Guardar un Proyecto de Depuración, siga estos pasos:

Paso 1. Vaya al Administrador de Proyectos

Paso 2. Haga clic en el botón Guardar Proyecto

Paso 3. Introduzca un nombre de fichero para el proyecto

4.3 Abrir un Proyecto de DepuraciónPara Abrir un Proyecto de Depuración, siga estos pasos:

Paso 1. Vaya al Administrador de Proyectos

Paso 2. Haga clic en el botón Abrir Proyecto

Paso 3. Seleccione el Trabajo a Depurar en el Diálogo Propiedades del Proyecto.

Paso 4. Se mostrará la Ventana de Depuración, y ahora ya está listo para depurar.

4.4 Depurar un Programa en EjecuciónPara iniciar un nuevo proyecto de depuración, siga estos pasos:

Paso 1. En la Ventana Principal, haga clic en el botón de Abrir Trabajo y seleccione el trabajo

en el que se está ejecutando el programa.

Paso 2. En la Ventana de Trabajo, seleccione la página Pila de Llamadas.

© 2013 Tango/04 Computing Group Página 37

Que hacer para…

Paso 3. Busque el trabajo que desea depurar y selecciónelo con un doble clic.

Paso 4. Se mostrará la Ventana de Depuración, indicando la sentencia actualmente en

ejecución, y ahora ya está listo para depurar el programa.

4.5 Añadir/Eliminar Puntos de RupturaPara Añadir Puntos de Ruptura en un módulo, la sentencia sobre la que quiere colocarlo debe ser

ejecutable. Puede distinguir las sentencias ejecutables por un punto azul ( ) en el Panel de Estado

de Sentencia.

• Busque la sentencia en la que quiere colocar el Punto de Ruptura.

• Para colocar un Punto de Ruptura Incondicional, haga clic en el punto azul en el Panel de

Estado de Sentencia.

• Para colocar un Punto de Ruptura Condicional, mantenga presionada la tecla Shift y haga

clic en el punto azul en el Panel de Estado de Sentencia.

• Para colocar un Punto de Ruptura Temporal, mantenga presionada la tecla Ctrl y haga clic

en el punto azul en el Panel de Estado de Sentencia.

Para Eliminar un Punto de Ruptura, haga clic en el icono del Punto de Ruptura ( , o ) en el

Panel de Estado de Sentencia..

4.6 Añadir/Eliminar Variables de la Lista de VariablesPara Añadir una Variable a la Lista de Variables, siga estos pasos.

• Seleccione la variable en el código fuente simplemente manteniendo presionado el botón

izquierdo del ratón y marcando la variable.

• Arrastre la variable seleccionada a la Lista de Variables o bien

• Haga clic en el botón editar lista de variables ( ) y presione para mostrar el Diálogo de

Propiedades de la Variable.

Para Eliminar una Variable de la Lista de Variables:

• Seleccione la Variable en la Lista de Variables.

• Pulse la tecla Suprimir, o bien haga clic en el botón derecho del ratón, y seleccione Eliminar del

menú contextual.

4.7 Depurar un ProgramaUna vez que haya introducido puntos de ruptura en los módulos que quiere depurar, ejecutará el

programa. Puede ejecutar el programa de diferentes maneras:

• Desde la sesión AS/400 (realizando un mandato CALL, desde un menú...): El programa se

iniciará, y será suspendido cuando se alcance un punto de ruptura, cuando una variable

monitorizada cambie, o cuando se lance una excepción.

• Desde VISUAL Message Center Debugging Agent: La primera vez que realice cualquiera de

las acciones siguientes, se le pedirá introducir el programa a llamar y los parámetros para ese

programa:

− Presionando el botón Ejecutar ( ).El programa se iniciará (la primera vez, cuando el

programa todavía no se esté ejecutando) o continuará (si el programa ya ha sido iniciado y

© 2013 Tango/04 Computing Group Página 38

Que hacer para…

está detenido), y será suspendido cuando se alcance un punto de ruptura, cuando una

variable monitorizada cambie, o cuando se detecte una excepción.

− Pulsando el botón de Paso por Instrucción ( ), se ejecutará una sentencia,

deteniéndose en la siguiente. Si la sentencia ejecutada es una llamada a un procedimiento

en otro módulo o a un programa externo, se detendrá en ese módulo o programa.

− Pulsando el botón de Paso por Rutina ( ), se ejecutará una sentencia, deteniéndose en

la siguiente sentencia del mismo módulo, esto es, no se detendrá dentro de otros módulos

o programas externos llamados.

• Desplazando el código fuente y situando el cursor (no el ratón) en la sentencia en la que desea

que el programa se detenga, y entonces, presionando la tecla de acceso directo a Ejecutar

Hasta el Cursor, F4 por defecto.

Una vez que el programa está detenido, puede Mostrar y Modificar cualquier Variable, simplemente

seleccionándola en el código fuente o en la Lista de Variables, y haciendo clic en el botón Trabajar con

Variables ( ).

4.8 Modificar una VariablePara Modificar una Variable

Paso 1. Si la variable está en la Lista de Variables, selecciónela.

Paso 1. Haga clic en la celda de 'valor' para pasar a modalidad de edición, e introduzca el

nuevo valor.

Paso 1. Si la variable no está en la Lista de Variables, seleccione la variable en el código fuente

manteniendo presionado el botón izquierdo del ratón y marcándola.

Paso 1. Haga clic en el botón Trabajar con Variables ( ), para mostrar el Diálogo Trabajar con

Variables, e introduzca el nuevo valor.

4.9 Generar Informes de CoberturaGenerar Informes de Cobertura es tan sencillo como entrar en el menú de Test Tracker en la Ventana

de Depuración y seguir las opciones que le ofrece paso a paso:

Iniciar un Nuevo Test: elimina las marcas de cobertura ( )de su código fuente. Usted puede elegir

entre eliminar las marcas de cobertura de:

• La Selección Actual: para volver a probar un grupo de sentencias.

• El Módulo Actual: Para volver a probar sólo este módulo.

• El Programa Actual: Para volver a probar todo el programa.

• El Proyecto Activo: Para volver a probar todos los programas del proyecto.

Añadir Puntos de Ruptura Temporales: Los puntos de ruptura temporales son la base para las

pruebas de cobertura. Cuando usted realiza un test de cobertura, usted quiere estar seguro de que

determinadas sentencias (las seleccionadas, resaltadas, el módulo actual, los módulos abiertos o los

programas de su proyecto) han sido ejecutadas al menos una vez. Esto se consigue añadiendo puntos

de ruptura. Los puntos de ruptura temporales suspenden la ejecución del programa la primera vez, y

sólo la primera vez que dicha sentencia va a ser ejecutada. Esto evita que la ejecución se detenga en

cada una de las iteraciones de un bucle, o cada vez que se llama a la misma subrutina

© 2013 Tango/04 Computing Group Página 39

Que hacer para…

Lanzar el Test de Cobertura: Arranca el programa en modo de auto-depuración o animación, es decir,

cada vez que se alcanza un punto de ruptura, la ejecución del programa se reanuda automáticamente.

Esto es suficiente para recibir la notificación de que la sentencia ha sido ejecutada, es decir, ha sido

probada.

Resaltar Puntos de Ruptura no Ejecutados: Una vez que el programa ha terminado, usted tiene una

forma muy sencilla de saber cuánto ha sido probado cada módulo: tan sólo de un vistazo a la línea de

estado, en la parte inferior de la ventana:

Le muestra dos estadísticas de prueba importantes:

• Cobertura de Ejecución: el porcentaje de sentencias ejecutables que han sido ejecutadas.

• Cobertura de Puntos de Ruptura: el porcentaje de puntos de ruptura que han sido alcanzados.

Pero dichas medidas tan sólo son indicadores globales del progreso del proceso de prueba: A no ser

que usted alcance el 100% en ambos porcentajes, no tiene garantías de que las partes problemáticas

del programa hayan sido probadas. Lo mejor que puede hacer es Resaltar los Puntos de Ruptura no

Ejecutados para ver que partes de la aplicación no han sido probadas.

Personalizar el Informe de Cobertura: Una vez que se obtengan porcentajes de cobertura lo bastante

buenos, usted está listo para generar su informe de cobertura. Seleccione esta opción y podrá

personalizar el aspecto de su informe, de acuerdo al modelo de documentación que utilice en su

empresa o a sus preferencias de estilo: Cabeceras, pies de página, logo de la empresa,... Un asistente

muy sencillo de utilizar le guiará paso a paso para que usted defina el aspecto final de su informe.

Informe de Cobertura: Las pruebas de cobertura han terminado, y ahora, el Informe de Cobertura le

mostrará todos los resultados del proceso de pruebas: estadísticas, resúmenes y gráficos para cada

módulo y programa de su aplicación.

© 2013 Tango/04 Computing Group Página 40

Referencia

Capítulo 5 5 Referencia

5.1 Personalizar Barras de HerramientasLas Barras de Herramientas pueden personalizarse a través del Diálogo de Edición de Barras de

Herramientas. Generalmente, pulsando el botón derecho del ratón sobre la barra de herramientas que

desea personalizar, se despliega un menú de contexto que le ofrece la posibilidad de personalizar la

barra de herramientas. Puede ver el Diálogo de Edición de Barras de Herramientas en la imagen

inferior.

Para eliminar un botón de mandato de la barra de herramientas, tan sólo tiene que arrastrarlo fuera de

la barra, o buscar en la categoría adecuada y hacer doble clic en él.

Para añadir un botón de mandato, busque el botón en la categoría adecuada, arrástrelo hasta la barra

de herramientas y suéltelo en la posición deseada. También puede hacer doble clic en el botón, y este

se añadirá a la derecha de todo, en la barra de herramientas.

Para cambiar el orden de los botones en la barra, tan sólo tiene que arrastrarlos a la posición deseada.

Pulse el botón Restaurar para deshacer los cambios y volver a la configuración previa.

Figura 32 – Diálogo de Edición de Barras de Herramientas

5.2 Iniciando una sesión de depuración con VISUAL Message Center Debug-ging Agent desde una sesión AS/400Para empezar directamente desde una sesión AS/400, primero debe tener instalado, configurado y

comprobado VISUAL Message Center Debugging Agent en su PC. Esto no es una guía de instalación

© 2013 Tango/04 Computing Group Página 41

Referencia

de VISUAL Message Center Debugging Agent. Para más información sobre cómo funciona la

instalación, consulte el documento Guía de Instalación de VISUAL Message Center Debugging

AgentGuía de Instalación de VISUAL Message Center Debugging Agent que corresponda a la versión

del producto que vaya a instalar.

Iniciando una sesión de depuración

Puede empezar a depurar un programa de dos formas distintas:

• Utilizando la interfaz gráfica de usuario de VISUAL Message Center Debugging Agent

• Directamente desde una sesión AS/400

Iniciando una sesión de depuración directamente desde una sesión AS/400

Para depurar un programa (y opcionalmente, para iniciar su ejecución) con VISUAL Message Center

Debugging Agent directamente desde una sesión AS/400 debe utilizar el mandato VISUALW desde la

librería VISUALW. También puede llamar VISUAL Message Center Debugging Agent desde un PDM si

crea una opción para el usuario que llama el mandato VISUALW.

Por ejemplo, podría introducir el siguiente mandato para iniciar una sesión de depuración con el

programa DEMO en la librería QGPL en el trabajo desde el que se introduce el mandato

VISUALW/VISUALW QGPL/DEMO

Ya que algunos parámetros no requeridos no se han indicado, se utilizarán los valores por defecto. Por

ejemplo, como se ve a continuación, se hará la llamada al programa indicada (VISUALDEMO/DEMO_PGM),

y se añadirá un punto de ruptura en la primera instrucción ejecutable (PEP) del módulo DEMO del

programa. Client Access Organizer también se puede utilizar como método de conexión (se

proporcionará más información sobre esto más adelante). Esto es:

VISUALW/VISUALW DBGOBJ(VISUALDEMO/DEMO_PGM) DBGJOB(*) OBJTYPE(*PGM) MODULE(*PEP) UPDPROD(*YES) SETBKP(*FIRST) EXEC(*PGM) PCCALL(*PCO) NICELINK(TANGO96) EXECPGM(*DBGPGM) PARM(*N)

Para más información sobre el mandato VISUALW, presione F4 para solicitar entrada de parámetros o

presione F1 para ayuda sobre el mandato VISUALW.

Tipos de conexión disponibles

Para poder utilizar el mandato VISUALW, debe seleccionar un método de comunicación entre el AS/400

y el PC. El parámetro PCCALL del mandato VISUALW define el tipo de conexión a utilizar. Hay dos tipos

de conexión posibles:

• a través de VDW Starter (recomendado)

• a través de Client Access Organizer (método alternativo)

• a través de la función Mandato Remoto de AS/400 (método alternativo))

5.2.1 VDW StarterVDW Starter le proporciona una forma fácil y fiable de arrancar VISUAL Message Center Debugging

Agent desde su sesión 5250.

Nota Cada vez que utilice este mandato, los valores se guardarán para ser utilizados otra vez en

el futuro. Esto le ahorrará tener que introducir valores redundantes cada vez, o tener que

utilizar el mandato CHGCMDDFT para alterar estos valores permanentemente. También puede

guardar sus valores en una opción PDM personalizada.

© 2013 Tango/04 Computing Group Página 42

Referencia

Cuando se ejecuta el mandato VISUALW en el AS/400, el AS/400 conecta con VDW Starter, y le "dice"

que arranque VISUAL Message Center Debugging Agent para depurar el programa especificado en los

parámetros de VISUALW.

Para que el AS/400 pueda comunicarse con VDW Starter, VDW Starter tiene que estar siendo

ejecutado. Pero no se preocupe, usted no tiene que arrancar VDW Starter cada vez que quiera arrancar

VISUAL Message Center Debugging Agent desde su sesión: esto no tendría sentido! VDW Starter se

arranca automática al iniciarse Windows, es decir, cuando inicia su PC. Puede ver a VDW Starter activo

en la parte derecha de la barra de tareas de Windows, como en la imagen siguiente:

Figura 33 – DW Starter en ejecución en la barra de sistema

Haga click con el botón derecho del mouse en el icono de VDW Starter de la barra de tareas para

desplegar un menú con las siguientes opciones:

• Configuration: Le permite configurar VDW Starter.

• VISUAL Message Center Debugging Agent: Para arrancar VISUAL Message Center

Debugging Agent.

• Exit: Para apagar VDW Starter. Esto impedirá que VISUAL Message Center Debugging Agent

pueda ser arrancado desde su sesión AS/400.

Configuración

VDW Starter es extremadamente sencillo de configurar. De hecho, se configura automáticamente

durante la instalación, y sólo tendrá que variar su configuración en una situación muy concreta.

Puede ver la pantalla de configuración de VDW Starter en la imagen inferior. Haga click en cualquier

elemento de la misma para obtener una descripción detallada:

Figura 34 – Pantalla de Configuración de VDW Starter

VDW Starter es un daemon TCP/IP, es decir, un programa que "escucha" o espera a que un programa

cliente le pida que realice una determinada acción. VDW Starter escucha al mandato VISUALW de su

AS/400, que le pide que arranque VISUAL Message Center Debugging Agent.

© 2013 Tango/04 Computing Group Página 43

Referencia

VDW Starter escucha a los sistemas AS/400 configurados en el NiceLink Configurator. Cuando

decimos que "escucha", queremos decir que está esperando a que se realice una conexión a un

determinado puerto TCP/IP. Si usted no está familiarizado con TCP/IP, puede pensar que un puerto es

un punto de entrada para conexión, algo así como un "enchufe software".

Cuando se solicita una conexión, VDW Starter verifica que dicho puerto esté habilitado (marcado en la

lista de sistemas AS/400) para el sistema AS/400 que solicita la conexión, y si lo está, procede a

arrancar VISUAL Message Center Debugging Agent.

La única situación en la que usted puede que necesite cambiar la configuración aparece si existe otra

aplicación PC usando el mismo puerto TCP/IP port que cualquiera de los sistemas AS/400 de la lista.

En este caso, tan sólo tiene que seleccionar el sistema AS/400 en la lista, hacer click con el botón

derecho del mouse, y seleccionar "Cambiar Número de Puerto". Puede entrar cualquier número entre

0 y 65,535, pero se recomienda utilizar números por encima de 1024, ya que los números por debajo de

éste valor están asignados a servicios TCP/IP estándar, tales como telnet, http o ftp.

Si usted está interesado en temas de seguridad, por favor, visite el tema Cuestiones de Seguridad.

Cuestiones de Seguridad

Hoy en día, en la "era de Internet", casi todos los que trabajan con ordenadores están interesados en la

seguridad cuando se conecta a Internet usando el protocolo de red TCP/IP. Muchos de los problemas

de seguridad aparecen por el hecho de usar el protocolo de red TCP/IP, por lo que una vez que sabe

como funciona VDW Starter, usted puede estar preguntándose si está abriendo algún tipo de "agujero

de seguridad" en su PC o en su AS/400.

La respuesta es que es prácticamente imposible que un usuario no autorizado lleve a cabo cualquier

acción maliciosa en su sistema.

En primer lugar, VDW Starter tan sólo puede arrancar programas en su PC, por lo que no puede, de

ningún modo, hacer nada en sus sistemas AS/400. Y el único programa que puede arrancar en su PC

es VISUAL Message Center Debugging Agent, que es una aplicación verificada que no puede dañar su

PC en modo alguno.

Segundo, sólo se puede conectar con VDW Starter desde sus sistemas AS/400, los que aparecen

listados en la Pantalla de Configuración. Si una petición de conexión llega de cualquier otra fuente, es

automáticamente rechazada, y le informa a usted acerca de éste intento de conexión no autorizado.

Si usted está realmente preocupado sobre la seguridad, debería proteger sus sistema con una

aplicación de tipo firewall.

5.2.2 Utilizando Client Access Organizer (*PCO)Este método es simple, pero es mejor utilizar el programa VDW Starter. Para usar el PCO, hay que

utilizar el valor *PCO en el mandato VISUALW.

Debería tener en cuenta que no todos los programas de emulación soportan este tipo de conexión

correctamente. Client Access Organizer está disponible para AS/400 desde la primera versión de OS/

400, cuando Windows todavía no existía y los únicos programas de emulación 5250 trabajaban con

DOS, y no han cambiado sustancialmente desde entonces.

Para utilizar la conexión con Organizer, debería tener en cuenta las siguientes consideraciones:

• No puede ejecutar Organizer desde una estación de trabajo no programable.

• El producto se iniciará desde el PC desde el que se está ejecutando el mandato.

• No necesita ninguna configuración especial del PC.

© 2013 Tango/04 Computing Group Página 44

Referencia

• No todos los programas de emulación soportan las funciones de Organizer.

Probando Client Access Organizer

Para probar si su programa de emulación 5250 soporta Client Access Organizer, haga lo siguiente:

• Abra una sesión AS/400.

• Ejecute el mandato STRPCO PCTA(*NO).

• Entonces ejecute el mandato STRPCCMD PCCMD('C:\WINDOWS\CALC.EXE') PAUSE(*NO)

Si se ha abierto la Calculadora en su PC, y puede continuar trabajando normalmente en su AS/400,

entonces su emulación soporta correctamente las funciones de Client Access Organizer. Si por otro

lado, la calculadora no se abre, o si detecta anomalías en su sesión AS/400 (la sesión se ha

desconectado o es imposible introducir mandatos en su sesión AS/400), esto significa que su

emulación no soporta las funciones de Client Access Organizer, así que debería intentar utilizar otro

producto de emulación, o utilizar el método de conexión Mandato Remoto.

Utilizando el mandato VISUALW con Client Access Organizer

VISUALW/VISUALW DBGOBJ(VISUALEDEM/DEMO_PGM) PCCALL(*PCO) NICELINK(TANGO96)

En este ejemplo, el valor *PCO del parámetro PCCALL indica que la llamada a VISUAL Message Center

Debugging Agent se realizará a través de Client Access Organizer..

5.2.3 Utilizando el Mandato Remoto de AS/400 (*RMTCMD)Este método requiere más trabajo para realizar la configuración, así que se recomienda sólo en casos

donde no se pueda utilizar Client Access Organizer. Para utilizar el Mandato Remoto, utilice el valor

*RMTCMD en el mandato VISUALW, y los valores correspondientes del parámetro RMTLOCNAME como se

describe en los temas siguientes.

La función del mandato remoto de AS/400 le permite establecer una conexión vía SNA o TCP/IP a un

sistema remoto (incluso si está conectado localmente), y ejecutar un mandato específico en este

sistema. El sistema remoto podría ser otro AS/400, un sistema UNIX o S/390, o en el caso que nos

ocupa, un PC con Windows.

Para utilizar la conexión con el mandato remoto, debe tener en cuenta las siguientes consideraciones:

• Necesita tener Client Access instalado en su AS/400 y en su PC.

• Puede ejecutar un mandato remoto desde cualquier estación de trabajo, programable o no.

• Puede ejecutar un mandato remoto desde cualquier PC de la red en que se ha configurado el

soporte de mandato remoto.

• Necesita una configuración especial en su PC, que será diferente dependiendo de si utiliza

TCP/IP o SNA

• Debe dar información específica sobre si está utilizando SNA o TCP/IP en el parámetro

RMTLOCNAME en el mandato VISUALW (por ejemplo, si utiliza TCP/IP debería poner la IP del

PC).

Nota Se asume que la calculadora de Windows está instalada en su PC en el directorio Windows.

Si no es así, utilice cualquier otro ejecutable para realizar la prueba.

© 2013 Tango/04 Computing Group Página 45

Referencia

Configurando una Conexión para Mandatos Remotos con TCP/IP

Utilice el método de mandato remoto con TCP/IP si no puede utilizar Client Access Organizer y si está

utilizando TCP/IP en el AS/400 y en el PC. Debería iniciar la conexión TCP/IP en el AS/400 de

antemano.

Para configurar la conexión del PC, abra el programa de administración de las propiedades de Client

Access: puede acceder a él a través del Panel de Control, o en la carpeta Client Access. Seleccione la

pestaña "Mandato Remoto".

Seleccione la función "Añadir":

En el parámetro Sistema especifique la dirección IP de su AS/400 o su nombre de sistema (sólo si está

utilizando un servidor de nombres). Esto significa que está autorizando un petición de mandato remoto

que viene del AS/400. Si en lugar del nombre pone un asterisco (*), podrá enviar mandatos remotos a

su PC desde cualquier AS/400.

Nota Las pantallas siguientes pueden no coincidir exactamente con la versión y el lenguaje que

tenga instalado para Client Access. Busque las opciones que se parezcan más a las

indicadas.

Consejo El número IP y el nombre de usuario mostrados en la pantalla son sólo un ejemplo. Debería

indicar el número IP que corresponda a su sistema. Si no sabe el número IP, contacte con

su Administrador de Sistema, o ponga un asterisco en el parámetro Sistema.

© 2013 Tango/04 Computing Group Página 46

Referencia

Si especifica un nombre de usuario y una contraseña, también debe especificarlos en el mandato

VISUALW

Si selecciona la opción Iniciar automáticamente mandato remoto entrante (opción recomendada, Client

Access se ocupará de ejecutar el daemon de mandato remoto de TCP/IP en su PC. De otra manera,

tendrá que iniciarlo manualmente.

Para iniciar el daemon manualmente, abra una sesión DOS en su PC y ejecute el comando

CWBRXD.EXE:

Probando la Conexión para Mandato Remoto vía TCP/IP

RUNRMTCMD CMD('C:\WINDOWS\CALC.EXE') RMTLOCNAME('192.168.0.2' *IP) RMTUSER(ROBERTO) RMTPWD(XXXXXX)

Utilice el parámetro RMTLOCNAME para especificar la dirección IP o el nombre de servidor de su PC.

Utilice los parámetros RMTUSER y RMTPWD si indica usuarios autorizados en la configuración de Client

Access.

Nota Si inicia el daemon de mandato remoto manualmente, también puede cerrarlo cuando

quiera. Para hacerlo, cuando ya no necesite el servicio de mandato remoto, abra otra sesión

DOS y ejecute el comando CWBRXDSD.EXE

© 2013 Tango/04 Computing Group Página 47

Referencia

Utilizando el Mandato VISUALW con Mandatos Remotos vía TCP/IP

VISUALW/VISUALW DBGOBJ(VISUALDEMO/DEMO_PGM) PCCALL(*RMTCMD) NICELINK(TANGO98.TANGO) RMTLOCNAME('192.168.0.2' *IP ROBERTO XXXXX)

El valor *RMTCMD indica que la activación de VISUAL Message Center Debugging Agent se hará con el

Mandato Remoto con el protocolo TCP/IP, con la dirección IP 192.168.0.2 y el usuario ROBERTO(parámetro RMTLOCNAME). El valor del parámetro NICELINK especifica el nombre por el que se

especifica el AS/400 en NiceLink en el PC.

Configurando una Conexión de MANDATO REMOTO vía SNA

Utilice el método de mandato remoto con IP SNA si no puede utilizar Client Access Organizer y si está

utilizando APPC como protocolo de conexión entre el AS/400 y el PC.

Se indica abajo cómo configurar este tipo de conexión con el NS/Router (tanto si es la versión NetSoft /

NetManage o la de Client Access de IBM). Si está utilizando otro direccionador (router), busque en la

documentación del fabricante para ver cómo configurar soporte para el mandato remoto de Client

Access Organizer (si está disponible).

Para configurar la conexión del PC, abra la ventana de Propiedades de NS/Router desde NS/

Administrator y seleccione la pestaña Común.

Nota Cada vez que utilice este mandato, los valores se guardarán para ser utilizados otra vez en

el futuro. Esto le ahorrará tener que introducir valores redundantes cada vez, o tener que

utilizar el mandato CHGCMDDFT para alterar estos valores permanentemente. También puede

guardar sus valores en una opción PDM personalizada.

Nota Las pantallas siguientes pueden no coincidir exactamente con la versión y el lenguaje que

tenga instalado para Client Access. Busque las opciones que se parezcan más a las

indicadas.

Nota Establezca el valor Página de Código Servidor/PC de acuerdo con el lenguaje específico de

su país.

© 2013 Tango/04 Computing Group Página 48

Referencia

No debería cambiar nada en esa pantalla (no se preocupe si su ventana no es la misma que la del

ejemplo). Seleccione el botón Propiedades Avanzadas. Como dice el texto de ayuda, las opciones que

se definirán no serán válidas para todos los futuros routers. En la ventana "Propiedades Avanzadas",

seleccione "TPs Locales" y haga clic en el botón "Añadir".

Complete los campos como se detalla a continuación.

En el parámetro "TP Filespec", escriba:

C:\ARCHIV~1\IBM\CLIENT~1\AREXECDN.EXE.

Si no selecciona la opción "Seguridad de Conversación", no necesitará especificar un ID de usuario y

una contraseña para poder ejecutar un mandato remoto en su PC. Si no, debe especificar los IDs de

usuario y contraseñas autorizados en la pestaña "Seguridad" presionando el botón "Añadir".

Nota Cambie la ruta al programa indicado si especificó otro elemento o carpeta cuando instaló

Client Access.

© 2013 Tango/04 Computing Group Página 49

Referencia

Si configura opciones de seguridad, utilice el parámetro RMTLOCNAME del mandato VISUALW para indicar

los ID de usuario y las contraseñas autorizados.

Probando la Conexión de MANDATO REMOTO vía SNA

RUNRMTCMD CMD('C:\WINDOWS\CALC.EXE') RMTLOCNAME(MYNET.TANGO96 *SNA) RMTUSER(ROBERTO) MODE(BLANK)

Utilizando el Mandato VISUALW con Mandato Remoto vía SNA

VISUALW DBGOBJ(VISUALDEMO/DEMO_PGM) PCCALL(*RMTCMD) NICELINK(TANGO96) RMTLOCNAME(MYNET.ROBERTO *IP ROBERTO XXXXX)

El valor *RMTCMD indica que la activación de VISUAL Message Center Debugging Agent tendrá lugar a

través del mandato remoto con el protocolo SNA, con el nombre LU ROBERTO en la red MYNET y el

usuario ROBERTO (parámetro RMTLOCNAME). El valor del parámetro NiceLink especifica el nombre por el

que se especifica el AS/400 en NiceLink en el PC.

5.3 Lenguaje de Mandatos de Depuración

5.3.1 Convenciones de SintaxisLos temas siguientes definen la sintaxis del lenguaje de mandatos aceptado por VISUAL Message

Center Debugging Agent en la Línea de Mandatos de la Ventana de Depuración.

Nota Cada vez que utilice este mandato, los valores se guardarán para ser utilizados otra vez en

el futuro. Esto le ahorrará tener que introducir valores redundantes cada vez, o tener que

utilizar el mandato CHGCMDDFT para alterar estos valores permanentemente. También puede

guardar sus valores en una opción PDM personalizada.

© 2013 Tango/04 Computing Group Página 50

Referencia

La Sintaxis de un Lenguaje es el conjunto de normas que definen las construcciones válidas para ese

lenguaje, y está definida por Terminales y Construcciones:

• Los Terminales son palabras literales: palabras reservadas, símbolos de puntuación,

operadores,... es decir, las unidades mínimas aceptadas por el lenguaje.

• Las Construcciones son categorías sintácticas (es decir, no terminales), especificadas en

términos de terminales y relaciones entre ellos.

Los métodos más utilizados para especificar la sintaxis de un lenguaje son los Diagramas Sintácticos y

BNF (Backus Normal Form, a veces también llamada Backus Naur Form).

Diagramas Sintácticos

Los Diagramas Sintácticos son la forma más fácil de entender para especificar una sintaxis. Los

nombres en las cajas son construcciones. Los que están en círculos -palabras reservadas, operadores,

y puntuación- son terminales utilizados en construcciones; y están en negrita en los diagramas. Por

ejemplo, el Diagrama Sintáctico que define como Añadir una Variable a la Lista de Variables des de la

línea de mandatos es el siguiente:

Para leer un Diagrama Sintáctico, se siguen las flechas. Normalmente, hay más de un camino posible.

Este diagrama indica que hay dos palabras reservadas para Añadir una Variable a la Lista de Variables,

A y AV. Siguiendo al mandato está el nombre de la Variable, y a continuación, de forma opcional, se

puede especificar ver la variable en formato *HEX.

BNF: No es una notación gráfica, sino orientada a texto. Es una técnica estándar para definir un

lenguaje de ordenador. La variante utilizada en esta guía es como sigue:

• Las palabras entre comillas simples ' representan palabras literales (terminales).

• Las palabras entre los símbolos < (menor que) y > (mayor que), representan construcciones.

• Las Construcciones se definen de la siguiente forma:

<categoría_sintáctica>::=definición

• Los Corchetes [] envuelven elementos opcionales.

• Las Llaves {} envuelven elementos que pueden repetirse cero o más veces.

• Una línea vertical | separa alternativas.

Por ejemplo, el diagrama presentado anteriormente se puede expresar utilizando BNF como:

<Añadir_Variable_A_Lista_Variables>::= ( "A" | "AV" ) + <Variable> + ["*HEX"]

5.3.2 ProcesosUn Proceso es un programa en ejecución. Un Proceso se define por el código del programa, el

contenido de la memoria del proceso, y el entorno, definido por el trabajo en el que se ejecuta el

programa y los valores del sistema definidos por el sistema operativo.

© 2013 Tango/04 Computing Group Página 51

Referencia

Cuando un proceso se está depurando, se mueve entre diferentes estados o fases, desde que empieza

a ejecutarse hasta que acaba. El siguiente diagrama de flujo describe estos estados.

5.3.3 Localidad y EntidadesLocalidad es el término utilizado para describir el rango en el que una entidad puede ser referenciada

en un módulo. Los términos localidad y alcance son sinónimos. Por esta definición, la localidad de una

entidad está siempre limitada a la unidad de compilación en que fue declarada.

Entidad es una manera formal de describir todo lo que se puede declarar en un módulo. Variables,

procedimientos, etiquetas, tipos y constantes son entidades.

La localidad de una entidad está definida por el bloque en que es declarada. Una entidad es visible en

el bloque en que es declarada y en todos los bloques subordinados. Las variables pueden ser

referenciadas en el bloque en que se declaran.

Una entidad se puede declarar en un bloque que incluya otros bloques. La entidad declarada en el

bloque externo, que engloba los internos, es visible en bloques internos si el nombre no coincide con el

nombre de otras entidades de bloques internos. Una variable declarada en un bloque externo puede ser

referenciada en un bloque interno si no se declara ninguna variable con el mismo nombre en el bloque

interno.

Para cualificar completamente una localidad determinada en un programa, se deben identificar tanto el

programa como el módulo.

5.3.4 Sentencias del EditorLas sentencias del editor son aquellas que afectan la Ventana de Depuración, por ejemplo desplazar o

marcar el código fuente, interactuar con la Lista de Variables, .... Estas sentencias son:

• Sentencia Añadir Lista Variables

• Sentencia Añadir Variable

© 2013 Tango/04 Computing Group Página 52

Referencia

• Sentencia Buscar

• Sentencia Eliminar Lista Variables

• Sentencia Eliminar Variable

• Sentencia Evaluar

• Sentencia Fin

• Sentencia Info

• Sentencia Inicio

• Sentencia Modificar Variable

• Sentencia Mostrar Variable

• Sentencia Trabajar Con Variables

• Sentencia Vaciar Lista

Sentencia Añadir Variable

Descripción: Añade una nueva variable o expresión a la Lista de Variables.

Sintaxis: <Sentencia Añadir Variable> ::= ("A" | "AV" | "ADDVAR" ) + <Expresión> + ["*HEX"]

Comentarios: Referirse a la Sentencia Evaluar para una descripción detallada de las expresiones

válidas.

Sentencia Añadir Lista Variables

Descripción: Muestra la Lista de Variables.

Sintaxis : <Sentencia Añadir Lista Variables> ::= "AL" | "ADDLIST"

Sentencia Fin

Descripción: Mueve el cursor al final de código fuente.

Sintaxis : <Sentencia Final> ::= "B" | "BOT" | "BOTTOM"

© 2013 Tango/04 Computing Group Página 53

Referencia

Sentencia Modificar Variable

Descripción: Modifica el valor de una variable.

Sintaxis: <Sentencia Modificar Variable> ::= ( "C" | "CV" | "CHGVAR" ) + <Variable> + "=" + <Expresión>

Comentarios: <Variable> debe ser un identificador de variable válido.

Referirse a la Sentencia Evaluar para una descripción detallada de las expresiones válidas.

Sentencia Vaciar Lista

Descripción: Vacía la lista de variables, eliminando cada variable o expresión de la lista.

Sintaxis : <Sentencia Vaciar Lista> ::= "CL" | "CLRLIST"

Sentencia Evaluar

Descripción: Evalúa una expresión. La expresión puede incluir variables. Este mandato se incluye sólo

por compatibilidad con VISUAL Debugger 5250.

Sintaxis: <Sentencia Evaluar> ::= ( "CALC" | "COMPUTE" ) + <Expresión>

Comentarios: Referirse a la Sentencia Evaluar para una descripción detallada de las expresiones

válidas.

Sentencia Mostrar Variable

Descripción: Muestra el valor de la expresión especificada en anotaciones de mandatos. La expresión

puede incluir variables. Este mandato se incluye sólo por compatibilidad con VISUAL Debugger 5250.

Sintaxis: <Sentencia Mostrar Variable> ::= ( "D" | "DV" | "DSPVAR" ) + <Expresión >

© 2013 Tango/04 Computing Group Página 54

Referencia

Comentarios: Referirse a la Sentencia Evaluar para una descripción detallada de las expresiones

válidas.

Sentencia Buscar

Descripción: Busca una cadena de texto en el código fuente. Los resultados son resaltados en el

código fuente, y en anotaciones de mandatos. Para destacar cada ocurrencia, haga clic en anotaciones

de mandatos. El comando de búsqueda es el más complejo, pero puede utilizar el Diálogo Buscar para

simplificar las búsquedas.

Sintaxis :

• <Sentencia Buscar> ::= ( "F" | "FIND" ) + [ <Qué Buscar> ] + [ <Opciones de Búsqueda> ] + [ <Opciones de mayúsculas/minúsculas>]

• <Qué Buscar> ::= <Cadena> | "*BKP" | "*EXE" | "*NOEXE" | "*CHG" | "*COM" | "*NOCOM"

• <Opciones de Búsqueda> ::= "N" | "NEXT" | "P" | "PREV" | "F" | "FIRST" | "L" | "LAST" | "A" | "ALL"

• <Opciones de mayúsculas/minúsculas> ::= "C" | "CASE"

• <Cadena> ::= ( <Cadena de texto> | Comilla + <Cadena de texto> + Comilla )

Comentarios: Valores para <Qué Buscar>:

• <Cadena>: Cualquier cadena de texto, ya sea delimitada por comillas o no. Busca esa cadena

de texto en el código fuente.

• *BKP: Busca un punto de ruptura.

• *EXE: Busca una sentencia ejecutada.

© 2013 Tango/04 Computing Group Página 55

Referencia

• *NOEXE: Busca una sentencia no ejecutada.

• *CHG: Busca una sentencia con una fecha de modificación diferente.

• *COM: Busca un comentario.

• *NOCOM: Busca una sentencia ejecutable.

Valores para <Opciones de Búsqueda>:

• N, NEXT: Busca la siguiente ocurrencia.

• P, PREV: Busca la ocurrencia anterior..

• F, FIRST: Busca la primera ocurrencia.

• L, LAST: Busca la última ocurrencia.

• A, ALL: Busca las ocurrencias en todo el código fuente.

Valores para <Opciones de mayúsculas/minúsculas>

• C, CASE: Realiza una búsqueda sensible al patrón de mayúsculas y minúsculas introducido.

Sentencia Info

Descripción: Muestra información detallada del módulo o programa en las páginas Info. Módulo o Info.

Programa.

Sintaxis: <Sentencia Info> ::= ( "I" | "INFO" )

Sentencia Eliminar Variable

Descripción: Elimina la variable o expresión especificada de la lista de variables.

Sintaxis: <Sentencia Eliminar Variable> ::= ( "R" | "RV" | "RMVVAR" ) + <Expresión>

Sentencia Eliminar Lista Variables

Descripción: Esconde la lista de variables.

Sintaxis: <Sentencia Eliminar Lista> ::= "RL" | "RMVLST"

© 2013 Tango/04 Computing Group Página 56

Referencia

Sentencia Inicio

Descripción: Mueve el cursor al principio del código fuente.

Sintaxis : <Sentencia Inicio> ::= "T" | "TOP""

Sentencia Trabajar con Variables

Descripción: Muestra la Ventana Trabajar con Variables, permitiendo la modificación de la variable.

Sintaxis: <Sentencia Trabajar con Variables> ::= "WV" | "WRKVAR"

5.3.5 Sentencias de DepuraciónLas sentencias de depuración son aquellas que afectan el estado del programa depurado, esto es

modificación de puntos de ruptura, ejecutar el programa paso a paso,... Las sentencias de depuración

se basan en las APIs de Depuración proporcionada por el AS/400, pero VISUAL Message Center

Debugging Agent extiende la sintaxis definida en estas APIs para proporcionar al usuario más

flexibilidad y facilidad de uso. Para una descripción detallada de las APIs de Depuración del OS/400,

refiérase a la Referencia de la API del Sistema de IBM (IBM's System API Reference. Volume 1).

• Sentencia ATTR

• Sentencia Cualificar

• Sentencia Detener

• Sentencia Ejecutar

• Sentencia Ejecutar Hasta

• Sentencia Eliminar

• Sentencia Evaluar

• Sentencia Monitorizar

• Sentencia Paso a Paso

• Sentencia Pausa

• Sentencia Ruptura

© 2013 Tango/04 Computing Group Página 57

Referencia

Sentencia ATTR

Descripción: Retorna una descripción de la entrada de la tabla de símbolos de la variable del programa

introducida.

Sintaxis : < Sentencia ATTR> ::= "ATTR" + <Variable >

Comentarios: <Variable> se formatea de acuerdo con su tipo almacenado en la tabla de símbolos

HLL, y de acuerdo con el lenguaje del módulo en depuración. La localidad de las variables que

aparecen en una sentencia ATTR está definida por la sentencia cualificar ejecutada más recientemente.

Sentencia Ruptura

Descripción: La sentencia ruptura permite al programador introducir puntos de ruptura. Los puntos de

ruptura se introducen en el programa en depuración. Cuando el programa encuentra un punto de

ruptura, la operación es suspendida. VISUAL Message Center Debugging Agent permite cuatro tipos de

puntos de ruptura: Incondicional, Condicional, Temporal y Temporal-Condicional.

Los Puntos de Ruptura Incondicionales se entran introduciendo la sentencia ruptura de la forma

( "BREAK" | "AT" ) + <Rango Sentencias >

y suspenden la operación del programa cada vez que el punto de ejecución alcanza las sentencias

definidas por <Rango Sentencias >.

Los Puntos de Ruptura Condicionales se entran introduciendo la sentencia ruptura de la forma

( " BREAK" | "AT" ) + <Rango Sentencias> + "WHEN" + <Expresión >

y suspenden la operación del programa cada vez que el punto de ejecución alcanza las sentencias

definidas por <Rango Sentencias> y la expresión booleana definida en <Expresión> tiene el valor

VERDADERO. Si el valor es FALSO, la operación continúa sin interrupción. La expresión se interpreta

antes de ejecutar la sentencia con el punto de ruptura.

Los Puntos de Ruptura Temporales se entran introduciendo la sentencia ruptura de la forma

( " BREAK" | "AT" ) + <Rango Sentencias> + ("TMP" | "TEMPORARY ")

Funcionan exactamente como los puntos de ruptura incondicionales, pero son eliminados la primera

vez que se alcanza el punto de ruptura.

Los Puntos de Ruptura Temporales-Condicionales se entran introduciendo la sentencia ruptura de la

forma

( " BREAK" | "AT" ) + <Rango Sentencias> + "WHEN" + <Expresión> + ("TMP" | "TEMPORARY ")

Funcionan exactamente como los puntos de ruptura condicionales, pero son eliminados la primera vez

que el punto de ruptura es alcanzado.

Sintaxis:

• < Sentencia Ruptura> ::= ( "BREAK" | "AT" ) + <Rango Sentencias> + [ "WHEN" + <Expresión> ] + [ "TMP" | "TEMPORARY "]

• < Rango Sentencias> ::= ( <Posición> + [ ( "," | "-" ) + <Rango Sentencias>] ) | "ALL" | "*ALL" | "FIRST" | "*FIRST" | "PGM" | "*PGM "

© 2013 Tango/04 Computing Group Página 58

Referencia

Comentarios:

< Rango Sentencias> define el rango de sentencias donde se introducirán puntos de ruptura.

• ALL, *ALL, PGM, *PGM: Coloca puntos de ruptura en cada sentencia ejecutable del módulo.

• FIRST, *FIRST: Coloca un punto de ruptura en la primera línea ejecutable del módulo.

< Expresión > El resultado de la expresión debe tener un valor lógico cuando se evalúe. La localidad

de las variables utilizadas en expresiones condicionales está definida por el número de línea que define

la posición.

Ejemplos:

Para añadir puntos de ruptura en las líneas 1, 3 y 5:

BREAK 1,3,5

Para añadir puntos de ruptura condicionales en la línea 2, y de la línea 10 hasta la 20 sólo cuando la

variable AUX = 127

BREAK 2,10-20 WHEN AUX = 127

Sentencia Eliminar

Descripción: La sentencia eliminar le permite eliminar un rango de puntos de ruptura, o todos los

puntos de ruptura de un programa. También se utiliza para eliminar uno o más monitores.

Sintaxis :

• <Sentencia Eliminar> ::= "CLEAR" + ( <Rango Sentencias> | "PGM" | ( "WATCH" | "MONITOR" ) + ( "ALL" | <Lista Números Monitores> ) )

• <Rango Sentencias> ::= ( <Posición> + [ ( "," | "-" ) + <Rango Sentencias>] ) | "ALL" | "*ALL" | "FIRST" | "*FIRST" | "PGM" | "*PGM"

• <Lista Números Monitores> ::= ( <Número> + [ "," + <Lista Números Monitores> ] ) | "ALL" | "*ALL" | "PGM" | "*PGM"

Comentarios:

< Rango Sentencias> define el rango de sentencias de los que se eliminarán los puntos de ruptura.

• ALL, *ALL, PGM, *PGM: Elimina todos los puntos de ruptura del módulo.

< Lista Números Monitores> define la lista de monitores a eliminar.

• ALL, *ALL, PGM, *PGM: Elimina cada monitor del módulo.

© 2013 Tango/04 Computing Group Página 59

Referencia

Sentencia Evaluar

Descripción: Evalúa una expresión. El valor de la expresión se formatea de acuerdo con el tipo de la

expresión. La sentencia evaluar le permite mostrar el valor de una expresión o de un agregado, o

alterar el valor de una variable. La definición precisa de lo que se puede mostrar o alterar depende del

lenguaje del módulo que se está depurando.

Las variables se pueden mostrar o alterar cuando el procesamiento del programa está suspendido. La

operación del programa se suspende temporalmente como resultado de encontrar un punto de ruptura

o completar una sentencia paso a paso. También es suspendida cuando se cumple una condición de

monitorización.

Sintaxis :

• < Sentencia Evaluar> = ( "EVAL" | "LIST" ) + <Expresión> + [ <Opción de Formato> ]

• <Opción de Formato> ::= ":" + <Código de Formato> + [<Longitud >]

Comentarios:

<Expresión>: La localidad de las variables que aparecen en la <Expresión> de una sentencia evaluar

está definida por la Sentencia Cualificar ejecutada más recientemente.

Las variables son formateadas de acuerdo con su tipo almacenado en la tabla de símbolos HLL, y de

acuerdo con el lenguaje del módulo en depuración. Los formatos disponibles incluyen entero,

hexadecimal, exponencial, y dirección, entre otros.

<Opción de Formato> Permite forzar un formato de salida diferente del formato por defecto. El

<Código de Formato> puede ser uno de los siguientes:

La <Longitud> es un entero positivo que indica el número de bytes a formatear. Los valores por

defecto para los códigos de formato son como sigue:

Format Code Descripción

:c Un formato de un sólo carácter EBCDIC

:x Un formato hexadecimal.

:sUn formato de cadena de caracteres EBCDIC (sólo para los lengua-jes C y C++).

:fUn formato de cadena de caracteres EBCDIC (sólo para los lengua-jes C y C++).

:aUn formato de cadena de caracteres ASCII (sólo para los lenguajes ILE). La cadena se convierte del CCSID ASCII relacionado con el CCSID del trabajo al CCSID del trabajo.

:uUn formato de cadena de caracteres Unicode (sólo para lenguajes ILE). La cadena se convierte de Unicode CCSID 13488 al CCSID del trabajo.

© 2013 Tango/04 Computing Group Página 60

Referencia

Sentencia Monitorizar

Descripción: La sentencia monitorizar le permite pedir un punto de ruptura cuando el contenido de una

zona de almacenamiento especificada cambia respecto a su valor actual. Después de introducir una

condición de monitorización con éxito, un cambio del contenido de la zona de almacenamiento

monitorizada causa la suspensión de la operación del programa.

Sintaxis : < Sentencia Monitorizar> ::= ( "MONITOR" | "WATCH" ) + <Expresión> + [ ":" + <Tamaño de Almacenamiento>]

Comentarios: Es importante entender que la sentencia monitorizar establece la dirección de la zona de

almacenamiento monitorizada cuando se entra la sentencia, y que no cambia. Por esta razón, las

sentencias de monitorización sólo se aceptan durante la ejecución del programa, y se eliminan cuando

el programa finaliza.

<Expresión> se utiliza para determinar la dirección de la zona de almacenamiento a monitorizar. La

expresión debe ser resuelta como un lvalue (es decir, una localización que puede ser asignada). El

alcance de las variables de la expresión de la sentencia de monitorización está definida por la sentencia

cualificar más reciente.

La especificación del formato de <Tamaño de almacenamiento> es un carácter dos puntos seguido

por la longitud en bytes a controlar. El tamaño debe estar en un rango de 1 a 128 bytes. El tamaño de la

operación de comparación de monitorización es el mismo que el tamaño del tipo de la expresión, o el

tamaño especificado con el parámetro opcional <Tamaño de Almacenamiento>. Por ejemplo, si un

entero binario de 4 bytes se especifica sin el parámetro <Tamaño de Almacenamiento>, el tamaño de la

comparación es de 4 bytes. Si se especifica el parámetro <Tamaño de Almacenamiento>, éste invalida

la longitud de la expresión al determinar el tamaño de comparación.

La sentencia monitorización es equivalente a sentencia definida en la Referencia de la API del

Sistema de IBM (IBM's System API Reference) como sentencia Watch. VISUAL Message Center

Debugging Agent utiliza la notación "Monitor" en lugar de la notación "Watch" para evitar ambigüedad;

puede ser muy confuso cuando se habla sobre la Watch List. La watch list se identifica normalmente

con la lista de variables que está siendo mostrada actualmente en el depurador, y normalmente no tiene

nada que ver con el concepto del monitor.

Format Code Default

:c 1

:x La longitud del valor de la expresión

:s 30

:f 1024

:a 1024

:u 1024

© 2013 Tango/04 Computing Group Página 61

Referencia

Sentencia Pausa

Descripción: La sentencia pausa le permite suspender la ejecución del programa tan pronto como sea

posible. Puede no tener un efecto inmediato: por ejemplo, cuando el programa ha efectuado una

llamada a un procedimiento no depurable de sistema, no es posible suspender la ejecución hasta que

ha finalizado la llamada.

Sintaxis : < Sentencia Pausa> ::= "PAUSE "

Comentarios: Si el programa ya está detenido, una segunda sentencia pausa finalizará la ejecución del

programa.

Sentencia Cualificar

Descripción: La sentencia cualificar le permite definir la localidad de las variables que aparecen en

sentencias evaluar posteriores. La localidad está definida por el operando número de línea de la

sentencia cualificar. La localidad asignada es la del bloque en que aparece el número de línea.

Sintaxis : < Sentencia Cualificar> ::= "QUAL" + <Número de Línea >

Comentarios: La localidad asignada cuando se emite una sentencia cualificar mantiene su efecto

hasta que se emite la siguiente sentencia cualificar, o hasta que la ejecución se continúa con una

sentencia paso a paso o con una sentencia ejecutar.

VISUAL Message Center Debugging Agent define automáticamente la localidad actual del programa

cuando el programa suspende su operación a causa de una condición de paso a paso, una condición

de monitorización o una condición de punto de ruptura. De todas formas, se puede cambiar la localidad

utilizando la sentencia cualificar.

Sentencia Ejecutar

Descripción: La sentencia ejecutar inicia o continúa la ejecución del programa cuando ha sido

suspendida a causa de un punto de ruptura alcanzado, una condición de monitorización cumplida o una

excepción inesperada.

Cuando el programa todavía no ha sido iniciado, debería especificar el programa a ejecutar. Esto

permite depurar Programas de Servicio, que no pueden ser ejecutados directamente, pero son

iniciados cuando un programa realiza una llamada a un procedimiento implementado en el Programa

de Servicio.

Sintaxis : <Sentencia ejecutar> ::= "RUN" + [<Nombre Librería> + "/" + <Nombre Programa> + [<Lista Parámetros>] ]

Comentarios: Si la ruta del programa (<Nombre Librería> / <Nombre Programa>) a ejecutar se

omite, se muestra una ventana para especificarlo.

© 2013 Tango/04 Computing Group Página 62

Referencia

Sentencia Ejecutar Hasta

Descripción: La Sentencia Ejecutar Hasta inicia o continúa la ejecución del programa cuando ha sido

suspendida a causa de un punto de ruptura alcanzado, una condición de monitorización cumplida o una

excepción inesperada, y suspende la operación del programa cuando alcanza la sentencia

especificada.

Sintaxis : < Sentencia Ejecutar Hasta> ::= "RUNTO" + <Número de Sentencia >

Comentarios: <Número de Sentencia> debe ser una sentencia ejecutable. Si no, la operación del

programa será suspendida en la sentencia ejecutable siguiente.

Sentencia Paso a Paso

Descripción: La sentencia paso a paso le permite ejecutar una o más sentencias del programa en

depuración con propósito de prueba. El programa en prueba ejecuta el número de sentencias

especificado en el operando cuenta de la sentencia. La operación del programa se suspende al

completarse la sentencia paso a paso.

Sintaxis : <Sentencia Paso a Paso> ::= "STEP" + [ <Cuenta de la Sentencia> ] + [ "OVER" | "INTO" ]

Comentarios: <Cuenta de la Sentencia> es un valor entero mayor que 0. Si se omite, se ejecuta

una sentencia.

Las palabras reservadas OVER y INTO ordenan al depurador pasar o entrar en los procedimientos,

respectivamente.

Si OVER aparece en una sentencia paso a paso, el depurador no detiene la operación en ninguno de los

procedimientos llamados (paso a paso por procedimientos). Los procedimientos y las funciones se

ejecutan sin interrupción.

La palabra reservada INTO ordena al depurador de código fuente detenerse en los procedimientos

llamados (paso a paso por instrucciones).

Si no se introduce ni INTO ni OVER en la sentencia paso a paso, se asume OVER.

Hay algunos límites en los pasos. En el siguiente código no se puede entrar utilizando la sentencia paso

a paso:

• Procedimientos en módulos que no tengan datos de depuración.

• Módulos optimizados al nivel 40.

Sentencia Detener

Descripción: La sentencia detener le permite suspender la ejecución del programa inmediatamente.

Sintaxis : <Sentencia Detener> ::= "STOP"

© 2013 Tango/04 Computing Group Página 63

Referencia

Comentarios: Si el trabajo en depuración no es interactivo, es decir, un trabajo por lotes, la única

manera de detenerlo es finalizando el trabajo. Esto significa que no podrá continuar depurando el

trabajo inmediatamente: necesitará asignar otro trabajo por lotes al proyecto de depuración e iniciar una

nueva sesión de depuración sobre ese trabajo.

5.3.6 Sentencia SistemaDescripción: Las sentencias de sistema son aquellas que se ejecutan en el trabajo, es decir,

mandatos. Cualquier mandato no reconocido como una sentencia del editor o de depuración es un

mandato de sistema. De todas formas, como es posible que un mandato de sistema tenga el mismo

nombre que una palabra reservada para sentencias del editor o de depuración, existen palabras

reservadas opcionales para evitar ambigüedades.

Sintaxis : <Sentencia Sistema> ::= [ "SYS" | "SYSTEM" ] + <Mandato OS/400>

Comentarios: <Mandato OS/400> es cualquier mandato OS/400 válido.

SYS, SYSTEM son opcionales, y se deberían utilizar cuando haya un <Mandato OS/400> cuyo nombre

sea igual que el de alguna palabra reservada de las sentencias del editor o de depuración.

5.3.7 Tabla de Referencia Rápida

Sentencia Sintaxis

Añadir Variable ("A" | "AV" | "ADDVAR" ) + <Expresión> + ["*HEX"]

Añadir Lista Variables "AL" | "ADDLIST"

ATTR "ATTR" + <Variable>

Fin "B" | "BOT" | "BOTTOM"

Ruptura( "BREAK" | "AT" ) + <Rango Sentencia> + [ "WHEN" + <Expresión> ] + [ "TMP" | "TEMPORARY"]

Modificar Variable( "C" | "CV" | "CHGVAR" ) + <Variable> + "=" + <Expresión>

EliminarCLEAR + ( <Rango Sentencia> | "PGM" | ( "WATCH" | "MONITOR" ) + ( "ALL" | <Lista Números Monitores> ) )

Vaciar Lista "CL" | "CLRLIST"

Evaluar ( "CALC" | "COMPUTE" ) + <Expresión>

Mostrar Variable ( "D" | "DV" | "DSPVAR" ) + <Expresión>

Evaluar( "EVAL" | "LIST" ) + <Expresión> + [ <Opción de Formato> ]

© 2013 Tango/04 Computing Group Página 64

Referencia

5.4 Iconos

5.4.1 Iconos de Tipo de TrabajoCada Trabajo en la Lista de Trabajos tiene un Icono asociado en el primer campo, relacionado con su

tipo:

Buscar( "F" | "FIND" ) + [ <Qué Buscar> ] + [ <Opciones de Búsqueda> ] + [ <Opciones de mayúsculas/minús-culas>]

Info "I" | "INFO"

Monitorizar( "MONITOR" | "WATCH" ) + <Expresión> + [ ":" + <Longitud de Almacenamiento> ]

Pausa "PAUSE"

Cualificar "QUAL" + <Número de Línea>

Eliminar Variable ( "R" | "RV" | "RMVVAR" ) + <Expresión>

Eliminar Lista Varia-bles

"RL" | "RMVLST"

Ejecutar"RUN" + [<Nombre Librería> + "/" + <Nombre Pro-grama> + [<Lista Parámetros>] ]

Ejecutar Hasta "RUNTO" + <Número de Sentencia>

Paso a Paso"STEP" + [ <Cuenta de la Sentencia> ] + [ "OVER" | "INTO" ]

Detener "STOP"

Sistema [ "SYS" | "SYSTEM" ] + <Mandato OS/400>

Inicio "T" | "TOP"

Trabajar con Variables "WV" | "WRKVAR"

Sentencia Sintaxis

ASJ Trabajos de tipo Auto Arranque.

BCH, BCI, M36, PJ Trabajos de los tipos Batch, Batch Immediate, Advanced 36 Server, y Pre Start.

EVK Trabajos de tipo Evoke, iniciados por una petición de inicio de un procedimiento.

INT Trabajos de tipo Interactive

MRT Trabajos de tipo Multiple Requester Terminal

RDR Trabajos de tipo Reader

SBS Trabajos de tipo Subsystem

SYS Trabajos de tipo System

WRT, PDJ Trabajos de los tipos Writer y Print Driver

© 2013 Tango/04 Computing Group Página 65

Referencia

5.4.2 Iconos de Tipo de Mensaje en AnotacionesCada Mensaje en Anotaciones de Trabajo tiene un Icono asociado en el primer campo, relacionado con

su tipo:

5.4.3 Iconos de Tipo de ObjetoCada Objeto AS/400 tiene un Icono asociado, relacionado con su tipo y atributo:

Finalización Un mensaje que transmite el estado de la finalización de un trabajo.

Diagnóstico Un mensaje que indica errores en una función del sistema, errores en la aplicación o errores en datos de entrada.

Información Un mensaje que proporciona información general no relacionada con errores.

Pregunta Un mensaje que transmite información pero que también pide una respuesta.

Petición Un mensaje que es la respuesta a una pregunta recibida o a una notificación.

Notificación Un mensaje que describe una condición por la que un programa requiere una respuesta o una acción correctiva.

Excepción Un mensaje que describe una condición por la que un programa debe terminar anormalmente.

Respuesta Un mensaje que es la respuesta a una pregunta recibida o un mensaje notificado.

Otros Tipos

*PGM (*OPM)

*PGM (*ILE)

Un objeto programa (*PGM) contiene un conjunto de instrucciones que indican al sistema dónde obtener entradas, cómo procesarlas y dónde poner los resultados. Un programa se crea cuando se compila (programas *OPM) o cuando es construido a partir de uno o más objetos de tipo Módulo utilizando el mandato Crear Programa (CRTPGM) (programas *ILE).

*SRVPGM

Un objeto programa de servicio (*SRVPGM) contiene instrucciones que le dicen al ordenador dónde obtener entradas, cómo procesarlas, y dónde poner los resultados. Un programa de servicio se crea con el mandato Crear Programa de Servicio (CRTSRVPGM). Un programa de servicio no se puede llamar de la forma en que se llama un objeto *PGM.

*MODULE

Un objeto módulo (*MODULE) contiene un conjunto de instrucciones y la información que necesita cuando utiliza el objeto para crear un programa. Un objeto módulo es el resultado de los mandatos CRTxxxMOD.

© 2013 Tango/04 Computing Group Página 66

Referencia

*FILE

Un objeto fichero (*FILE) define un fichero de bases de datos, un fichero de dispositivo o un conjunto de registros relacionados en un fichero. Si el atributo del fichero es desconocido, este icono se utiliza para representarlo. Cuando el atributo es conocido, los ico-nos utilizados son los siguientes:

PF-SRC: Un fichero fuente, un fichero que contiene diversos miembros ( ). Cada miembro es un conjunto de sentencias de texto que pueden ser simplemente texto, el código fuente de un programa.

PF, PF-DTA, PF38: Fichero físico, los datos del fichero físico son los ficheros de una base de datos cuando se guardan los datos.

LF, LF38: Los ficheros lógicos definen cómo se presentarán o recibirán los datos de un programa. Este tipo de ficheros no contiene datos, pero proporciona un orden y un formato ( ) para uno o más ficheros físicos.

DSPF, DSPF38, DFU, DFUEXC, DFUNOTEXC: Los ficheros de visualización y los ficheros de visualización creados con la Utili-dad de Ficheros de Datos de AS/400 ( Data File Utility, DFU ) son ficheros utilizados para leer o guardar datos en una estación de pantalla, que le permiten definir el formato de los datos en la pan-talla.

ICFF, BSCF38, CMNF38, MXDF38: Ficheros utilizados para leer o guardar datos en una localización de comunicaciones remota, y que le permite definir el formato de los datos.

DDMF: Ficheros utilizados para leer y guardar datos en un sistema remoto.

DKTF: Un fichero de disquete es utilizado para leer y guardar datos en un dispositivo de disquete, pero no le permite definir el formato de los datos.

TAPF: Un fichero de cinta se utiliza para leer y guardar datos en un dispositivo de cinta.

PRTF, PRTF38: Los ficheros de impresora se utilizan para almacenar datos en un dispositivo de impresión o en una cola de salida de Spool. Le permiten definir el formato de los datos.

*DTAARA Un objeto de área de datos, un objeto que contiene un valor de datos que puede ser utilizado y cambiado por diversos trabajos.

*CMD Un objeto de mandato, un objeto que pide una función de sistema.

*MSGFUn objeto de fichero de mensajes, un objeto que contiene descripciones de mensajes utilizados para describir condiciones de estado y de error.

*PNLGRPUn objeto de grupo de paneles, un objeto que mantiene información de pantallas o de ayuda en línea para ser presentada en un dispositivo de pantalla.

Other Objects

© 2013 Tango/04 Computing Group Página 67

Referencia

5.5 Accesos Directos

5.5.1 Asignaciones por defecto de Teclas de Acceso DirectoLas Teclas de Acceso Directo son combinaciones de pulsaciones de teclas que hacen que la aplicación

realice una tarea específica. Las teclas de acceso directo son la forma más rápida de realizar una

acción. VISUAL Message Center Debugging Agent proporciona una utilidad Editor KMF, que permite

redefinir las acciones asociadas a las teclas de acceso directo. Las asignaciones por defecto se

detallan a continuación.

Acciones Generales

Copiar Ctrl+C

Buscar Ctrl+F

Buscar Siguiente Shift+F4

Ir Atrás Ctrl+B

Ir Adelante Ctrl+N

Información F11

Abrir Sesión Chat Ctrl+H

Abrir Trabajo Ctrl+J

Abrir Objeto Ctrl+O

Abrir Utilidad Entrada de Fuente (SEU) Shift+F2

Abrir Miembro Fuente Ctrl+S

Pegar Ctrl+V

Imprimir Ctrl+P

Refrescar F5

Mandato Sistema Shift+F9

Opciones Usuario Shift+F1

Ampliar Ctrl+A

Reducir Ctrl+Z

Acciones de Depuración

Colocar Todos los Puntos de Ruptura Shift+F10

Añadir Programa a Depurar Shift+F3

Cursor a Mandato / Fuente F10

Ir a Siguiente Punto de Ruptura Shift+F8

Ir a Punto de Ejecución Ctrl+G

Pausar /Detener Ejecución F3

Eliminar Todos los Puntos de Ruptura Shift+F11

Iniciar / Continuar Ejecución F12

Ejecutar Hasta el Cursor F4

© 2013 Tango/04 Computing Group Página 68

Referencia

5.5.2 Personalizar Teclas de Acceso DirectoLas asignaciones de teclas de acceso directo se pueden personalizar, esto es, personalizar, a través de

la utilidad Editor KMF. El Editor KMF permite editar los ficheros de mapeo de teclado (Keyboard

Mapping Files, *.KMF). Puede iniciar el Editor KMF desde la carpeta de VISUAL Message Center

Debugging Agent, o desde la página Mapeo del Teclado del Diálogo de Opciones de Entorno.

5.6 Controlando VISUAL Message Center Debugging Agent

5.6.1 Parámetros de Línea de MandatosVISUAL Message Center Debugging Agent acepta parámetros de línea de mandatos. Con esta

característica, puede hacer que VISUAL Debugger no muestre la Ventana de Inicio y:

• Conecte directamente al sistema AS/400

• Abra un Proyecto de Depuración

• Empiece un Nuevo Proyecto de Depuración

• Capture un trabajo

• Abra una sesión de chat

• Abra un objeto o miembro fuente

Por ejemplo, si desea iniciar VISUAL Message Center Debugging Agent conectando siempre a un

sistema llamado TANGO96, utilizando el protocolo TCP/IP, entonces debería editar las propiedades para

el Acceso Directo a VDebugger.Exe y cambiar el Destino a:

C:\Program Files\Tango04\VDebugger\VDebugger.Exe SYSTEM:TANGO96(TCPIP)

Consulte el tema Sintaxis de Comandos para más detalles.

5.6.2 Controlando VISUAL Debugger con DDE VISUAL Debugger puede controlarse externamente utilizando Intercambio de Datos Dinámico (

Dynamic Data Exchange (DDE). Aplicaciones de terceros pueden ejecutar acciones pasando

comandos a VISUAL Message Center Debugging Agent. La aplicación sólo necesita saber los nombres

del Topic y el Item para comunicarse con VISUAL Message Center Debugging Agent, y estos son:

• Topic : 'Process'

• Item : 'Comando'

Colocar/Eliminar Punto de Ruptura F6

Colocar/Eliminar Punto de Ruptura Condicional Shift+F6

Colocar/Eliminar Punto de Ruptura Temporal Ctrl+F6

Paso a Paso por Instrucciones F8

Paso a Paso por Procedimientos F9

Cambiar Módulo Abierto F7

Trabajar con Variables F2

Acciones de Depuración

© 2013 Tango/04 Computing Group Página 69

Referencia

Con el producto se proporciona una aplicación Delphi de ejemplo. Para soporte adicional, contacte con

el Soporte Técnico.

5.6.3 Sintaxis de MandatosVISUAL Message Center Debugging Agent puede aceptar mandatos, como Parámetros de Línea de

Mandatos o como Mensajes DDE. En ambos casos, los mandatos utilizan la misma sintaxis, definida

como sigue:

Mandato = ( '-' + ACCIÓN + ':' + ARGUMENTO + [ ' ' + ACCIÓN + ':' + ARGUMENTO ]] ), donde

Los valores para ACCIÓN son:

• SYSTEM: Para conectar a un sistema.

• PRJ: Para abrir un Proyecto de Depuración existente.

• JOB: Para capturar un trabajo.

• CHAT: Para abrir una sesión de chat.

• OBJECT: Para abrir un Objeto.

• MEMBER: Para abrir un miembro fuente.

Los valores de ARGUMENTO dependen de ACCIÓN

• Para SYSTEM, ARGUMENTO debería ser un nombre de Sistema directo o un nombre de Sistema

remoto ( Sistema Central/Sistema Remoto) y un protocolo de red soportado por NiceLink.

• Para PRJ, ARGUMENTO debe ser una ruta válida a un Fichero de Proyecto de Depuración

(*.DPF).

• Para JOB y CHAT, ARGUMENTO debería ser un nombre válido de un trabajo activo ( Nombre

Trabajo/Nombre Usuario/Número Trabajo).

• Para OBJECT, ARGUMENTO debería ser un nombre válido de Objeto ( Librería/Objeto(Tipo)).

• Para MEMBER, ARGUMENTO debería ser un nombre válido de miembro fuente ( Librería/Fichero

Fuente(Miembro)).

La tabla siguiente resume los posibles valores para ACCIÓN, ARGUMENTO y PAGINA:

Ejemplos:

Para conectar a un sistema directo llamado TANGO96 utilizando el protocolo APPC, y capturar el

proyecto ALEX8022/QSECOFR/110533, comenzando en la página de Pantalla, el comando debe ser:

SYSTEM:TANGO96(APPC) -JOB:ALEX8022/QSECOFR/110533,0

ACCIÓN ARGUMENTO

SYSTEM Sistema Central / Sistema Remoto(Protocolo)

PRJ Ruta Fichero

JOB Trabajo / Usuario / Número

CHAT Trabajo / Usuario / Número

OBJECT Librería / Objeto ( Tipo)

MEMBER Librería / Fichero Fuente (Miembro)

© 2013 Tango/04 Computing Group Página 70

Referencia

Para conectar al sistema remoto TANGUITO a través de TANGO96, utilizando el protocolo SNA Server

para conectar al sistema central, y TCP/IP para el sistema remoto, capturar el trabajo ROB8022/QSECOFR/110234 empezando en la página de Registro del Trabajo, y abrir el objeto VISUAL/DEMO(*PGM) empezando en la página del Explorador de Aplicaciones, el comando debe ser:

SYSTEM:TANGO96/TANGUITO(SNA Server/TCPIP) -JOB:ROB8022/QSECOFR/110234,1 -OBJECT:VISUAL/DEMO(*PGM),3

Observe los espacios entre las diferentes acciones.

5.7 Errores

5.7.1 Errores en el ServidorLa parte AS/400 de VISUAL Message Center Debugging Agent consiste principalmente en dos

programas Servidores localizados en la librería VISUAL_W, llamados VIINZW1C y VIINZW2C, que

proporcionan todos los datos al programa Cliente de VISUAL Message Center Debugging Agent,

instalado en el PC.

Ambos programas se comunican, pidiendo el uno al otro transmitir y enviar la información requerida

para desarrollar las tareas de la aplicación. Los programas del Servidor son capaces de detectar

algunas situaciones erróneas:

Error Code: 0201h

Descripción: Error Interno del programa.

Causa: Se ha detectado un error en el programa servidor. Esto nunca debería ocurrir, por lo tanto

contacte por favor con el Soporte Técnico para comunicar el error.

Error Code: 0202h

Descripción: Abrir conversación no válido con sistema remoto ya activado.

Causa: Se ha detectado un error en el programa cliente. Esto nunca debería ocurrir, por lo tanto

contacte por favor con el Soporte Técnico para comunicar el error.

Error Code: 0203h

Descripción: Abrir conversación no válido en pasarela AS/400.

Causa: Se ha detectado un error en el programa cliente. Esto nunca debería ocurrir, por lo tanto

contacte por favor con el Soporte Técnico para comunicar el error.

Error Code: 0204h

Descripción: Cerrar conversación no válido sin ningún sistema remoto activado.

Causa: Se ha detectado un error en el programa cliente. Esto nunca debería ocurrir, por lo tanto

contacte por favor con el Soporte Técnico para comunicar el error.

Error Code: 0205h

Descripción: El trabajo no existe o no está activo.

Causa: El trabajo ha acabado, o no puede ser capturado, así que no es posible recuperar información

relacionada con el proyecto.

© 2013 Tango/04 Computing Group Página 71

Referencia

Error Code: 0206h

Descripción: El trabajo está activado pero no está disponible para ejecutar funciones.

Causa: El estado del trabajo no le permite capturarlo.

Error Code: 0207h

Descripción: El Usuario XXX no está autorizado al usuario YYY.

Causa: El perfil de usuario XXX asignado a VISUAL Message Center Debugging Agent no le permite

acceder a usuarios con el perfil YYY. Compruebe su Tabla de Autorizaciones.

Error Code: 0208h

Descripción: YYY ha denegado una petición de autorización.

Causa: El perfil de usuario de VISUAL Message Center Debugging Agent tiene asignada una

autorización de tipo M, y el usuario YYY no ha aceptado la petición de autorización. Compruebe su

Tabla de Autorizaciones.

Error Code: 0209h

Descripción: YYY no ha respondido la petición de autorización.

Causa: perfil de usuario de VISUAL Message Center Debugging Agent tiene asignada una autorización

de tipo M, y el usuario YYY no ha respondido la petición de autorización. Compruebe su Tabla de

Autorizaciones.

Error Code: 020Ah

Descripción: El trabajo no responde. Probablemente ha finalizado, o ahora no está disponible.

Causa: El trabajo ha finalizado, o no puede ser capturado; no es posible recuperar información

relacionada con el trabajo.

Error Code: 020Bh

Descripción: Este trabajo no tiene LDA.

Causa: El trabajo no tiene un Área de Datos Local (Local Data Area o LDA), de forma que se muestra

vacío.

Error Code: 020Ch

Descripción: El usuario YYY no existe en el sistema remoto.

Causa: Está intentando conectar a un sistema remoto con un perfil de usuario que no está definido en

este sistema. Puede haber un error en el nombre de usuario, o quizás el nombre de usuario no está

definido. Si es así, pida a su administrador de sistema que defina el perfil de usuario.

Error Code: 020Dh

Descripción: Contraseña incorrecta.

Causa: Está intentando conectar a un sistema remoto con una contraseña incorrecta. Hay un error en

la contraseña. Intente conectar de nuevo.

© 2013 Tango/04 Computing Group Página 72

Referencia

Error Code: 020Eh

Descripción: El usuario YYY no está autorizado a utilizar VISUAL Message Center Debugging Agent

en el sistema remoto.

Causa: No tiene autorización para utilizar el producto en el sistema remoto al que intenta conectar. Pida

a su administrador de sistema que le dé autorización para utilizarlo.

Error Code: 020Fh

Descripción: La librería no existe.

Causa: Se ha detectado un error en el programa cliente. Esto nunca debería ocurrir, por lo tanto

contacte por favor con el Soporte Técnico para comunicar el error.

Error Code: 0210h

Descripción: Desbordamiento calculando el tamaño de la librería.

Causa: Se ha detectado un error en el programa servidor. Esto nunca debería ocurrir, por lo tanto

contacte por favor con el Soporte Técnico para comunicar el error.

Error Code: 0211h

Descripción: Tipo de mensaje desconocido.

Causa: Se ha detectado un error en el programa cliente. Esto nunca debería ocurrir, por lo tanto

contacte por favor con el Soporte Técnico para comunicar el error.

Error Code: 0212h

Descripción: El trabajo remoto ya ha finalizado la sesión de chat.

Causa: Se ha detectado un error en el programa cliente. Esto nunca debería ocurrir, por lo tanto

contacte por favor con el Soporte Técnico para comunicar el error.

Error Code: 0213h

Descripción: La función ya ha sido ejecutada en el trabajo remoto.

Causa: Se ha detectado un error en el cliente. Esto puede ocurrir si una instancia anterior del programa

( tal vez en el mismo PC o en otro PC) ha terminado anormalmente, o está ejecutando un mandato o

manteniendo una sesión de chat con los mismos trabajos.

Error Code: 0214h

Descripción: Error ejecutando el mandato OS/400.

Causa: Se ha detectado un error ejecutando un mandato OS/400.

Error Code: 0215h

Descripción: El miembro XXX no existe.

Causa: El miembro seleccionado no pudo ser encontrado en el sistema AS/400.

Error Code: 0216h

Descripción: El programa no tiene observabilidad.

Causa: El programa que está intentando depurar no tiene observabilidad, y no es posible depurarlo.

© 2013 Tango/04 Computing Group Página 73

Referencia

Error Code: 0217h

Descripción: Instrucción MI no encontrada.

Causa: La instrucción MI que el programa está ejecutando no corresponde a una sentencia exacta del

módulo fuente, así que no es posible traducirla.

Error Code: 0218h

Descripción: Programa no encontrado en la pila de llamadas.

Causa: El programa no se está ejecutando.

Error Code: 0219h

Descripción: Error general de llamada a la API.

Causa: Se ha detectado un error realizando una llamada a una API del sistema. Refiérase a los

detalles adicionales proporcionados con el mensaje de error para la explicación.

Error Code: 021Ah

Descripción: Su perfil de usuario no tiene autorización para la librería seleccionada.

Causa: Su perfil de usuario no ha sido autorizado a acceder objetos en esa librería. Pida a su

administrador de sistema que le dé autorización para utilizarla.

Error Code: 021Bh

Descripción: El fichero XXX no existe.

Causa: El fichero seleccionado no pudo ser encontrado en el sistema AS/400.

Error Code: 021Ch

Descripción: Su perfil de usuario no tiene autorización para el fichero seleccionado.

Causa: Su perfil de usuario no ha sido autorizado a acceder al fichero seleccionado. Pida a su

administrador de sistema que le dé autorización para utilizarlo.

Error Code: 021Dh

Descripción: El fichero seleccionado no es un fichero físico.

Error Code: 021Eh

Descripción: El fichero no pudo ser recuperado del sistema remoto.

Causa: El fichero seleccionado no pudo ser encontrado en el sistema AS/400.

Error Code: 0234h

Descripción: No se ha podido establecer la conexión DDM.

Causa: La versión actual de OS/400 en el sistema local XXX es VxRyMz. DDM sobre una conexión

TCP/IP se soporta en versiones OS/400 iguales o superiores a V4R4.

Error Code: 0235h

Descripción: No se ha podido establecer la conexión DDM.

Causa: El sistema remoto especificado (SYSTEM) no es un nombre válido de sistema remoto.

© 2013 Tango/04 Computing Group Página 74

Referencia

Recuperación:....Corrija el nombre de entrada de la localización remota y reintente.

Error Code: 0239h

Descripción: No se ha podido establecer la conexión DDM.

Causa: Este error no debería producirse nunca. Contacte a su proveedor autorizado para obtener

soporte técnico.

Error Code: 023Dh

Descripción: No se ha podido establecer la conexión DDM.

Causa: Se produjo un error durante el inicio de gestión de datos distribuidos (DDM) mientras se

intentaba establecer una conexión DDM. El error depende del protocolo de red utilizado por DDM:

SNA: Este error se produce porque el nombre del sistema remoto (XXX) no es válido.

TCP: Este error se produce porque la versión de OS/400 en el sistema remoto es menor de V4R4,o

porque el daemon TCP/IP DDM no se encuentra en la localización especificada (nombre de sistema,

dirección IP o número de puerto DRDA no válido).

Recuperación: Corrija el nombre de entrada de la localización remota y reintente.

Error Code: 023Eh

Descripción: No se ha podido establecer la conexión DDM.

Causa: Intento de mapear nombre de host a una dirección IP fallido debido a una de las siguientes

razones:

• No se encontró el nombre del Host.

• No existe dirección correspondiente a ese nombre de host.

• Error irrecuperable obteniendo el nombre del host.

• No hay respuesta del nombre del servidor – inténtelo más tarde.

Error Code: 023Fh

Descripción: No se ha podido establecer la conexión DDM.

Causa: Fallo de auditoría en el intento de conexión DDM TCP/IP.

Recuperación: ...Pida al Administrador del Sistema que elimine la petición de contraseña para

servicios DDM utilizando el mandato CHGDDMTCPA PWDRQD(*NO).

Error Code: 0240h

Descripción: Su perfil de usuario (XXX) no está autorizado en la biblioteca remota YYY.

Recuperación: Pida al Administrador del Sistema que cambie la autoridad *USE de la biblioteca a

QUSER.

Error Code: 0241h

Descripción: Su perfil de usuario (XXX) no está autorizado en el archivo remoto YYY.

Recuperación: Pida al Administrador del Sistema que cambie la autoridad *USE del archivo a QUSER.

© 2013 Tango/04 Computing Group Página 75

Referencia

Error Code: 0242h

Descripción: El archive XXX no existe en el sistema remoto YYY.

Error Code: 0243h

Descripción: La biblioteca XXX no existe en el sistema remoto YYY.

Error Code: 0244h

Descripción: El miembro remoto XXX se guardo con almacenamiento liberado en el sistema YYY.

Causa: Este error no debería producirse nunca.

Recuperación: Contacte a su proveedor autorizado para obtener soporte técnico.

Error Code: 0245h

Descripción: El miembro XXX no existe en el sistema remoto YYY.

Error Code: 0248h

Descripción: El archivo XXX no contiene miembros en el sistema remoto YYY.

Error Code: 0250h

Causa: Error inesperado al crear archivo DDM.

Recuperación: Contacte a su proveedor autorizado para obtener soporte técnico.

Error Code: 025Bh

Descripción: XXX Listado COBOL no encontrado.

Recuperación: Especifique el Cobol Compile User y el Listing Name apropiados o recompile el

programa y reintente la operación.

Error Code: 025Ch

Descripción: XXX Listado COBOL vacío.

Causa: El archivo de spool no es resultado de un compilador.

Recuperación: Recompile el programa y reintente la operación.

Error Code: 025Dh

Descripción: Procedure Division no se encontró en XXX.

Causa: El archivo de spool no es resultado de un compilador.

Recuperación: Recompile el programa y reintente la operación.

Error Code: 025Eh

Descripción: Sentencia COBOL no encontrada en XXX.

Causa: El archivo spool es obsoleto y no coincide con el programa.

Recuperación: Recompile el programa y reintente la operación.

© 2013 Tango/04 Computing Group Página 76

Referencia

Error Code: 025Fh

Causa: El usuario XXX no tiene autorización sobre el archivo spool generado por el compilador

COBOL.

Recuperación: Pida al Administrador del sistema que proporcione a su perfil de usuario autorización

sobre el archivo de spool.

Error Code: 0260h

Causa: No fué possible recuperar el listado XXX COBOL en el sistema remoto.

Recuperación: Busque una descripción detallada de la causa en el log del trabajo en el sistema remoto

y reintente.

5.7.2 Errores Internos de VISUAL DebuggerSi recibe cualquiera de los siguientes mensajes de error, contacte el Soporte Técnico tan pronto como

sea posible. Estos errores nunca deberían suceder, y reflejarían un error en la aplicación:

Error Code: 0101h

Descripción: Error Interno.

Error Code: 0103h

Descripción: Recibido un mensaje desconocido del servidor, error del protocolo interno.

© 2013 Tango/04 Computing Group Página 77

Apéndice A : Contactar con Tango/04

Apéndice AApéndice A: Contactar con Tango/04

North America

Tango/04 North America

PO Box 3301

NH 03458 Peterborough USA

Phone: 1-800-304-6872 / 603-924-7391

Fax: 858-428-2864

[email protected]

www.tango04.com

EMEA

Tango/04 Computing Group S.L.

Avda. Meridiana 358, 5 A-B

08027 Barcelona Spain

Phone: +34 93 274 0051

Fax: +34 93 345 1329

[email protected]

www.tango04.com

Italy

Tango/04 Italy

Viale Garibaldi 51/53

13100 Vercelli Italy

Phone: +39 0161 56922

Fax: +39 0161 259277

[email protected]

www.tango04.it

Sales Office in France

Tango/04 France

La Grande Arche

Paroi Nord 15ème étage

92044 Paris La Défense France

Phone: +33 01 40 90 34 49

Fax: +33 01 40 90 31 01

[email protected]

www.tango04.fr

Sales Office in Switzerland

Tango/04 Switzerland

18, Avenue Louis Casaï

CH-1209 Genève

Switzerland

Phone: +41 (0)22 747 7866

Fax: +41 (0)22 747 7999

[email protected]

www.tango04.fr

Latin American Headquarters

Barcelona/04 Computing Group SRL (Argentina)

Avda. Federico Lacroze 2252, Piso 6

1426 Buenos Aires Capital Federal

Argentina

Phone: +54 11 4774-0112

Fax: +54 11 4773-9163

[email protected]

www.barcelona04.com

© 2013 Tango/04 Computing Group Página 78

Apéndice A : Contactar con Tango/04

Sales Office in Peru

Barcelona/04 PERÚ

Centro Empresarial Real

Av. Víctor A. Belaúnde 147, Vía Principal 140 Edificio Real Seis, Piso 6

L 27 Lima

Perú

Phone: +51 1 211-2690

Fax: +51 1 211-2526

[email protected]

www.barcelona04.com

Sales Office in Chile

Barcelona/04 Chile

Nueva de Lyon 096 Oficina 702,

Providencia

Santiago

Chile

Phone: +56 2 234-0898

Fax: +56 2 2340865

[email protected]

www.barcelona04.com

© 2013 Tango/04Computing Group Página 79

Acerca de Tango/04 Computing Group

Acerca de Tango/04 Computing Group

Tango/04 Computing Group es una de las principales empresas desarrolladoras de software de gestión

y automatización de sistemas informáticos. El software de Tango/04 ayuda a las empresas a mantener

la salud operativa de sus procesos de negocio, mejorar sus niveles de servicio, incrementar su

productividad y reducir costes mediante una gestión inteligente de su infraestructura informática.

Fundada en 1991 en Barcelona, Tango/04 es IBM Business Partner y miembro de la iniciativa

estratégica IBM Autonomic Computing. Además de recibir numerosos reconocimientos de la industria,

las soluciones Tango/04 han sido validadas por IBM y tienen la designación IBM ServerProven™.

Tango/04 tiene más de mil clientes y mantiene operaciones en todo el mundo a través de una red de 35

Business Partners

Alianzas

Premios

Partnerships IBM Business Partner

IBM Autonomic Computing Business Partner

IBM PartnerWorld for Developers Advanced Membership

IBM ISV Advantage Agreement

IBM Early code release

IBM Direct Technical Liaison

Microsoft Developer Network

Microsoft Early Code Release

© 2013 Tango/04 Computing Group Página 80

Aviso Legal

Aviso Legal

Este documento y su contenido son propiedad de Tango/04 Computing Group o de sus respectivos propietarios cuando así se

indique. Cualquier utilización de este documento con una finalidad distinta de aquella con la cual ha sido creado está prohibida sin la

autorización expresa de su propietario. Asimismo queda prohibida la reproducción total o parcial de este documento por cualquier

medio físico, óptico, magnético, impreso, telemático, etc., sin la autorización expresa de su propietario.

La información técnica aquí contenida fue obtenida utilizando equipamiento e instalaciones específicas, y su aplicación se limita a

esas combinaciones especiales de productos y niveles de versiones de hardware y software. Cualquier referencia en este documento

a productos, software o servicios de Tango/04 Computing Group, no implica que Tango/04 Computing Group planee introducir esos

productos, software o servicios en cada uno de los países en los que opera o está representada. Cualquier referencia a productos de

software, hardware o servicios de Tango/04 Computing Group no está hecha con el propósito de expresar que solamente pueden

utilizarse productos o servicios de Tango/04 Computing Group. Cualquier producto o servicio funcionalmente equivalente que no

infrinja la propiedad intelectual o condiciones de licenciamiento específicas se podría utilizar en reemplazo de productos, software o

servicios de Tango/04 Computing Group.

Tango/04 Computing Group puede tener patentes o estar pendiente de obtención de patentes que cubren asuntos tratados en este

documento. La entrega de este documento no otorga ninguna licencia de esas patentes. La información contenida en este

documento no ha sido sometida a ningún test formal por Tango/04 Computing Group y se distribuye tal como está. El uso de esta

información o la implementación de cualquiera de las técnicas, productos, tecnologías, ideas o servicios explicitados o sugeridos por

el presente documento es responsabilidad exclusiva del cliente a quien está dirigido este documento, y es el cliente quien debe

evaluar y determinar la aplicabilidad y consecuencias de integrar esas técnicas, productos, tecnologías, ideas o servicios en su

entorno operativo.

Si bien cada ítem puede haber sido revisado por Tango/04 Computing Group en cuanto a su exactitud en una situación específica, no

existe ni se otorga ninguna garantía de que los mismos o similares resultados puedan ser obtenidos en otras situaciones o

instalaciones. Los clientes que intenten adaptar esas técnicas en sus propias instalaciones lo hacen bajo su propia cuenta,

responsabilidad y riesgo. Tango/04 Computing Group no será en ningún caso responsable directo o indirecto de cualquier daño o

perjuicio causado por el uso de las técnicas explicitadas o sugeridas en este documento, incluso si se han efectuado notificaciones

de la posibilidad de esos daños.

Este documento puede contener errores técnicos y/o errores tipográficos. Todas las referencias en esta publicación a entidades

externas o sitios web han sido provistas para su comodidad solamente, y en ningún caso implican una validación, garantía o respaldo

a esas entidades o sitios.

Las marcas siguientes son propiedad de International Business Machines Corporation en los Estados Unidos y/o otros países: AS/

400, AS/400e, System i, iSeries, e (logo)Server, i5, Operating System/400, OS/400, i5/OS.

Microsoft, SQL Server, Windows, Windows NT, Windows XP y el logotipo de Windows son marcas registradas de Microsoft

Corporation en los Estados Unidos y/o otros países. Java y todos los logotipos y marcas basadas en Java son propiedad de Sun

Microsystems, Inc. en los Estados Unidos y otros países. UNIX es una marca registrada en los Estados Unidos y otros países y se

licencia exclusivamente a través de The Open Group. Oracle es una marca registrada de Oracle Corporation. Otras marcas,

productos o servicios pueden ser marcas registradas de otras empresas.

© 2013 Tango/04 Computing Group Página 81