Descripción General #
El comando 3270 Espera pertenece a la categoría de automatización para terminales de tipo TN3270. Su objetivo principal es pausar la ejecución del flujo hasta que se cumpla una condición específica en la terminal emulada o se alcance el tiempo límite configurado. Es el comando recomendado para sincronizar la interacción con el mainframe, garantizando que el robot espere a que la pantalla cargue completamente o a que el servidor termine de procesar una transacción antes de continuar con la ejecución.

Ejemplo de Uso Rápido #
Imagina que envías una transacción en el mainframe presionando [ENTER] y necesitas asegurarte de que el sistema haya terminado de procesarla antes de leer una respuesta:
- Configuras el comando
3270 Esperaeligiendo la condiciónEsperar texto aparezca. - Ingresas el valor
TRANSACCION EXITOSAen el campo de dato y defines un tiempo límite de10segundos. - STELA monitoreará la terminal hasta detectar la aparición de esa frase para continuar inmediatamente con los siguientes comandos.
Parámetros y Opciones #
Para configurar la sincronización de la terminal, se deben definir los siguientes parámetros:

- Condición (requerido): Situación técnica o estado de la pantalla que el robot debe esperar.
- Valores habituales:
Esperar texto aparezca: Aguarda a que un texto específico se vuelva visible en cualquier punto de la terminal.Esperar texto desaparezca: Aguarda hasta que un texto o indicador (como «PROCESANDO») deje de ser visible.Cursor en posición: Espera a que el cursor se posicione en una coordenada exacta de la grilla.Cursor fuera de posición: Espera a que el cursor se mueva de una posición determinada.Pantalla en blanco: Aguarda a que la pantalla quede completamente limpia de texto.Pantalla no vacía: Aguarda a que la terminal renderice caracteres tras un refresco o cambio de pantalla.
- Valores habituales:
- Dato (opcional): Información complementaria requerida según la condición seleccionada.
- Si la condición evalúa texto, se debe ingresar la cadena de caracteres esperada.
- Si la condición evalúa el cursor, se debe ingresar la coordenada en formato
fila,columnaofila/columna(por ejemplo,7,18).
- Tiempo de espera (opcional): Cantidad máxima de segundos que STELA esperará a que la condición se cumpla. Si se omite, se utilizará el tiempo de espera por defecto de la ejecución.
Ejemplos de Uso Avanzado #
- Sincronización por texto de respuesta: Espera hasta un máximo de 15 segundos a que la terminal muestre el mensaje de confirmación de un proceso batch.
- Configuración: condición:
Esperar texto aparezca, dato:PROCESO FINALIZADO, tiempo de espera:15
- Configuración: condición:
- Espera por cambio de foco del cursor: Aguardará hasta que el servidor mainframe posicione automáticamente el cursor en la celda de ingreso de clave (fila 8, columna 20) antes de escribir.
- Configuración: condición:
Cursor en posición, dato:8,20, tiempo de espera:5
- Configuración: condición:
- Espera de liberación de pantalla (Desaparición de aviso): Detiene el flujo hasta que el mensaje «SISTEMA OCUPADO» se retire de la pantalla del emulador.
- Configuración: condición:
Esperar texto desaparezca, dato:SISTEMA OCUPADO, tiempo de espera:20
- Configuración: condición:
Errores Comunes y Soluciones #
- Error: Se agota el tiempo de espera (Timeout) sin cumplir la condición.
- Solución: Confirma que el texto o las coordenadas ingresadas en el parámetro dato coincidan exactamente con la pantalla emulada, considerando mayúsculas y espacios. Si el mainframe responde con lentitud, incrementa el valor en el parámetro tiempo de espera.
- Error: Formato de coordenadas incorrecto para condiciones de cursor.
- Solución: Al utilizar condiciones como
Cursor en posición, asegúrate de ingresar los valores de fila y columna separados por coma o barra diagonal (ej.7,18o7/18).
- Solución: Al utilizar condiciones como
- Error: El flujo intenta interactuar con la pantalla antes de que cargue.
- Solución: Sustituye los comandos de pausa fija (
espera) por3270 Esperacon condiciones dinámicas comoPantalla no vacíaoEsperar texto aparezca, asegurando una sincronización precisa con el backend.
- Solución: Sustituye los comandos de pausa fija (