Mandato AT ENTRY
Define un punto de interrupción en el punto de entrada especificado en el bloque especificado.
- *
- Establece un punto de interrupción en cada
ENTRYde cualquier bloque. - mandato
- Un mandato de z/OS Debugger válido. Si utiliza la modalidad depuración remota, solo puede especificar mandatos soportados en la modalidad depuración remota.
- condición
- Una expresión condicional válida de z/OS Debugger.
Notas de uso
- Para programas VS COBOL II, z/OS Debugger sólo da soporte al mandato
AT ENTRY *. - Para especificar un punto de interrupción
AT ENTRYpara un programa que no resulta conocido para z/OS Debugger, debe realizar una de las acciones siguientes:- Si el nombre del programa es el mismo que block_spec, no es necesario que cualifique block_spec con el nombre del programa.
- Si el nombre del programa no es el mismo que block_spec, tiene que calificar block_spec con el nombre de un programa. Cuando z/OS Debugger detecta un nombre de programa que coincide con el que ha especificado, se establece el punto de interrupción.
- Un punto de interrupción
ENTRYestablecido para una unidad de compilación que se convierte en no activo (uno que no esté en el enclave actual), se suspende hasta que la unidad de compilación se convierta en activa. Un punto de interrupciónENTRYestablecido para una unidad de compilación que se suprime del almacenamiento se suspende hasta que la unidad de compilación se vuelve a cargar. Un punto de interrupción suspendido no se puede desencadenar hasta que se vuelva a activar. - Para una aplicación CICS en z/OS Debugger, este punto de interrupción se borra al final del último proceso de la aplicación. Para una aplicación no CICS en z/OS Debugger, se borra al final de un proceso.
- Los puntos de interrupción
ENTRYpara bloques en un programa captado o cargado se convierten en puntos de interrupción diferidos cuando se libera ese programa. - El mandato
AT ENTRYno se puede utilizar mientras se reproducen sentencias registradas utilizando los mandatosPLAYBACK. - No puede utilizar el mandato
AT ENTRYpara detener la entrada en una rutina Language Environment MAIN para un enclave distinto del primer enclave si no dispone de datos de depuración para la unidad de compilación que lo contiene. - Puede restringir las circunstancias bajo las que se alcanza el punto de interrupción
AT ENTRYespecificando una condiciónWHEN. Si se especifica una condiciónWHEN, z/OS Debugger se detiene en el punto de interrupciónAT ENTRYsi el punto de entrada especificado coincide con el punto de entrada actual y si la condiciónWHENes verdadera. - Se pueden utilizar los siguientes operadores condicionales en una condición:
- =
- Compara si dos operadores son iguales.
- ¬=
- Compara si dos operadores no son iguales.
- <
- Determina si el operando izquierdo es menor que el operando derecho.
- >
- Determina si el operando izquierdo es mayor que el operando derecho.
- <=
- Se determina si el operando de la izquierda es inferior o igual al operando de la derecha.
- >=
- Se determina si el operando de la izquierda es superior o igual al operando de la derecha.
- &
- Operación "and" lógica.
- |
- Operación "or" lógica.
- Si utiliza el mandato
AT ENTRYcon una condiciónWHEN, cada vez que z/OS Debugger alcance la entrada, evalúa la condición. Si la condición se evalúa como verdadera (true), z/OS Debugger se detiene y se ejecuta el mandato asociado al punto de interrupción. - Cuando z/OS Debugger evalúa la condición y la condición no es válida,
z/OS Debugger lleva a cabo una de las acciones siguientes:
- Si
SET WARNINGse establece enON, se detiene z/OS Debugger y se muestra un mensaje indicando que no ha podido evaluar la condición. Debe especificar un mandato para indicar qué acción desea que realice z/OS Debugger. - Si
ESTABLECER AVISOestá enOFF, z/OS Debugger no detiene ni muestra un mensaje del cual no haya podido evaluar la condición. z/OS Debugger continúa ejecutando el programa.
- Si
- Un mandato
AT ENTRYdiferido crea un valor implícito deNAMES INCLUDEpara el destino del valorAT ENTRYdiferido. - No puede utilizar el mandato
AT ENTRYpara detener la entrada de un bloque anidado en un programa C o C++. Un bloque anidado es un grupo de sentencias delimitadas por { y }. El compilador asigna un nombre a estos bloques utilizando el patrón siguiente: %BLOCKn, donde n es un número asignado de forma secuencial.
Ejemplos
- En la entrada del programa
subrx, inicialice la variableixy continúe con la ejecución del programa. El valor actual del lenguaje de programación es COBOL.AT ENTRY subrx PERFORM SET ix TO 5; GO; END-PERFORM; - En la entrada del programa
myprogcon el parámetromyparm, para detener el punto de entrada paramyprogsolamente cuandomyparmequivalga a100, especifique el mandato siguiente:AT ENTRY myprog WHEN myparm=100;
Consulte los temas siguientes para obtener más información relacionada con el material descrito en este tema.
