- Notas relacionadas
- Primeros pasos
- Instalación y configuración
- Proyectos de automatización
- Acerca de la publicación de proyectos de automatización
- Diseñar automatizaciones
- Gestionar paquetes de actividades
- Configuración de los Ajustes del Proyecto de Actividades
- Firma de paquetes
- Control
- Importar entidades
- Experiencia de diseño moderna
- Vincular un proyecto a una idea en Automation Hub
- Usar Data Manager
- Dependencias
- Tipos de flujos de trabajo
- Comparación de archivos
- Mejores prácticas de automatización
- Integración del control de código fuente
- Depuración
- Analizador de flujo de trabajo
- Acerca del analizador de flujo de trabajo
- ST-NMG-001: convención sobre nombres de variables
- ST-NMG-002: convención de nombres de argumentos
- ST-NMG-004: duplicación de nombres de visualización
- ST-NMG-005: anulación de variables
- ST-NMG-006: argumentos de anulación de variables
- ST-NMG-008: longitud variable excedida
- ST-NMG-009: variables de datos prefijados
- ST-NMG-011: argumentos de prefijo Datatable
- ST-NMG-012: valores predeterminados de los argumentos
- ST-NMG-016: longitud del argumento excedida
- ST-DBP-002: recuento de Argumentos elevado
- ST-DBP-003: bloque de Catch vacío
- ST-DBP-007: múltiples capas de diagramas de flujo
- ST-DBP-020: propiedades de salida no definidas
- ST-DBP-023: flujo de trabajo vacío
- ST-DBP-024: comprobación de actividad de persistencia
- ST-DBP-025: requisito previo para la serialización de variables
- ST-DBP-026: retraso en el uso de la actividad
- ST-DBP-027: mejor práctica de persistencia
- ST-DBP-028: requisito de serialización de argumentos
- ST-USG-005: argumentos de actividad codificados
- ST-USG-009: variables no utilizadas
- ST-USG-010: dependencias sin utilizar
- ST-USG-014: restricciones de los paquetes
- ST-USG-020: mensajes de registro mínimos
- ST-USG-024: guardado sin usar para más adelante
- ST-USG-025: uso incorrecto de los valores guardados
- ST-USG-026: restricciones de actividad
- ST-USG-027: paquetes necesarios
- ST-USG-028: Restringir la invocación de plantillas de archivo
- ST-USG-032 - Etiquetas obligatorias
- ST-USG-034 - URL Automation Hub
- Variables
- Argumentos
- Espacios de nombres importados
- Automatización atendida basada en desencadenadores
- Grabación
- Elementos de la IU
- Flujo de control
- Selectores
- Repo. de objetos
- Extracción de datos
- Automatización de imágenes y texto
- Acerca de la automatización de imágenes y texto
- Actividades con el ratón y el teclado
- Ejemplo de uso de la automatización de ratón y teclado
- Actividades de texto
- Ejemplo de uso de la automatización de texto
- Actividades de OCR
- Actividades de imagen
- Ejemplo de uso de la automatización de OCR y la automatización de imágenes
- Automatización de Citrix Technologies
- Automatización RDP
- Automatización de Salesforce
- Automatización SAP
- Automatización de VMware Horizon
- Registro
- La herramienta ScreenScrapeJavaSupport
- El protocolo WebDriver
- Conjunto de pruebas - Estudio
- Extensiones
- Solución de problemas
- Acerca de la resolución de problemas
- Compatibilidad y limitaciones de Microsoft App-V
- Solución de problemas de Internet Explorer x64
- Problemas de Microsoft Office
- Identificación de elementos de la interfaz de usuario en PDF con opciones de accesibilidad
- Reparar Soporte Active Accessibility
- Automatizar aplicaciones que se ejecutan en un usuario de Windows diferente
- Validation of large Windows-legacy projects takes longer than expected
Guía de usuario de Studio
Información general
Las automatizaciones attended basadas en desencadenadores pueden implicar lo siguiente:
- Formularios: se crean utilizando el Creador de formularios y se gestionan con el paquete Form.Activities.
- Llamadas: se crean utilizando el Creador de formularios y se muestran con el paquete Callout.Activities
- Desencadenadores: utilizan los paquetes System.Activities y UIAutomation.Activities.
- Variables globales: creadas desde Data Manager.
Los formularios y las llamadas representan una capacidad básica de la automatización attended. Ejecutarlos utilizando desencadenadores te permite crear escenarios complejos. Estos escenarios implican múltiples eventos que ocurren al mismo tiempo. Además, la posibilidad de desencadenar acciones en función de los valores de las variables globales te ayuda a cubrir escenarios aún más attended.
El siguiente diagrama muestra un proceso creado utilizando formularios, desencadenadores de eventos de formularios y desencadenadores de eventos de aplicación. También puedes crear procesos similares basados en desencadenadores de eventos de usuario y llamadas.
Para diseñar y ejecutar automatizaciones attended basadas en desencadenadores:
- Instala los siguientes paquetes de actividades:
- Form.Activities versión 23.4
- System.Activities 23.4
- UIAutomation.Activities 23.4
- Callout.Activities 23.4
- Si te encuentras con el siguiente error al intentar crear un archivo de formulario: no se pudo encontrar una instalación compatible de Webview2 Runtime para alojar WebViews, instala Microsoft Edge WebView2.
El propósito de los formularios en la automatización attended es recopilar y procesar la entrada del usuario o de la aplicación. Con las funciones del formulario actuales, puedes:
- Crea formularios fuera de las actividades, utilizando un formulario (archivo uiform) dentro de tu proyecto. Más tarde puedes crearlos o editarlos de forma independiente de cualquier actividad que utilice los formularios. Esto te permite separar el proceso de creación de formularios y luego utilizarlos en la misma automatización.
- Crea formularios utilizando archivos HTML personalizados. Puedes trabajar con formularios HTML de forma similar a como lo haces con los archivos uiform.
- Muestra varios formularios al mismo tiempo, utilizando la actividad Mostrar formulario. Añade varias actividades Mostrar formulario y proporciona un nombre único en el campo Nombre de la instancia para cada una de ellas.La propiedad Nombre de la instancia está disponible para la mayoría de las actividades del paquete Form.Activities y se puede utilizar para:
- Muestra o realiza acciones en varias instancias del mismo formulario, proporcionando Nombres de la instancia únicos para cada formulario que muestras.
- Muestra o realiza acciones en todas las instancias, dejando vacío el campo Nombre de la instancia.
- Establece un desencadenador para iniciar basado en los eventos del formulario. Estos eventos pueden representar un formulario que se cierra o un componente determinado del formulario que cambia. Puedes lograrlo utilizando la actividad Desencadenador de eventos de formularios.
- Elige mostrar solo un formulario o mostrarlo mientras se ejecuta el resto del flujo de trabajo. Puedes hacerlo activando o desactivando la propiedad Continuar ejecución del flujo de trabajo.
- Edita y obtiene valores del formulario en el tiempo de ejecución, utilizando las actividades Establecer valores del formulario y Obtener valores del formulario.
- Cambia las propiedades del formulario en tiempo de ejecución, utilizando la actividad Cambiar propiedades del formulario.
- Inyecta JavaScript personalizado en el formulario, utilizando la actividad Ejecutar script del formulario.
La función de las llamadas en la automatización attended es dirigir al usuario a un elemento de IU específico dentro de una aplicación, sitio web, producto o incluso un formulario. También puedes utilizar llamadas para crear validaciones personalizadas para las aplicaciones, rellenar campos previamente y desencadenar varias automatizaciones en función de la entrada del usuario.
Con las capacidades de llamada, puedes:
- Crea una llamada utilizando un archivo de formulario (uiform) y diséñala utilizando el Creador de formularios.
- Indica el elemento de IU junto al que deseas que se muestre la llamada utilizando la actividad Mostrar llamada.
- Pasar valores a los elementos de una llamada.
Aunque hay un paquete Callout.Activities dedicado a las llamadas, también es posible gestionar las llamadas utilizando el paquete Form.Activities, ya que las llamadas son archivos uiform al igual que los formularios normales.Esto significa que puedes trabajar con las llamadas de la misma manera que trabajarías con un formulario normal si utilizas el paquete Form.Activities
- Iniciar flujos de trabajo basados en eventos de la aplicación o del usuario. Además, puedes especificar cómo ejecutar acciones cuando se dispara un desencadenador, a través del modo Programación:
Para desencadenar flujos de trabajo basados en eventos de la aplicación o del usuario, utiliza las siguientes actividades:
Actividades Descripción Desencadenador de evento de formulario Desencadena flujos de trabajo basados en un evento que ocurre dentro de un formulario. Desencadenador de eventos de aplicación Establece un desencadenador en función de un evento nativo de cualquier tipo de elemento (ventana de nivel superior o cualquier otro elemento de IU indicado). Repetir desencadenador Esta actividad te permite configurar un TimeSpan como InArgument. Cuando expira el período de tiempo, el desencadenador se ejecuta y puede repetirse en función de la configuración. Desencadenador de eventos de pulsación de tecla Establece un desencadenador de evento de tecla pulsada en el elemento de IU indicado. Clic desencadenador de eventos Establece un desencadenador de evento de clic en el elemento de IU indicado. Desencadenador de tecla de acceso rápido Supervisa un evento clave especificado en todo el sistema. Desencadenador del ratón* Supervisa un evento específico en el sistema de combinación de teclas del ratón. Desencadenador de clic de imagen* Supervisa la imagen definida por el elemento de la IU de destino para la entrada del ratón. Desencadenador del sistema* Supervisa una clave específica del sistema o un evento del ratón. Desencadenador de atributos de sesión de SAP cambiados* Supervisa los cambios en los atributos de sesión SAP especificados. *: se puede utilizar tanto por sí mismo como dentro de una actividad Ámbito de desencadenador.
- Para automatizar varios escenarios attended que pueden ocurrir una vez, en secuencia o al mismo tiempo. Puedes lograrlo utilizando las siguientes actividades:
Actividades Descripción Ejecutar desencadenadores locales Inicia y arranca todos los desencadenadores locales que escuchan eventos en la máquina del usuario. Detener desencadenadores locales Detiene todos los desencadenadores locales que escuchan eventos en la máquina del usuario. Deshabilitar desencadenador local Desactiva uno o más desencadenadores locales activos que se iniciaron previamente con la actividad Ejecutar desencadenadores locales . Habilitar desencadenador local Activa uno o más desencadenadores locales activos que se iniciaron previamente con la actividad Ejecutar desencadenadores locales. - Para iniciar flujos de trabajo basados en el comportamiento de las variables globales que creas en Data Manager.Puedes lograrlo utilizando las siguientes actividades:
Actividades Descripción Desencadenador de variable global cambiada Envía una notificación a todos los suscriptores cuando cambia el valor de una variable global. Notificar la modificación de la variable global Desencadenador que se inicia cuando cambia el valor de una variable global.
Triggereventargs
en tiempo de Runtime o durante la depuración. Este flujo de trabajo contiene múltiples actividades en el ámbito de desencadenador que ejecutan todos los desencadenadores en paralelo dentro de tu proyecto.
Triggereventargs
como argumento en el panel Argumentos . Cada flujo de trabajo desencadenador tiene su propio argumento Triggereventargs
, que contiene información sobre sí mismo. A medida que ejecutas el proyecto, los argumentos Triggereventargs
se actualizan con la información de ejecución más reciente.
Triggereventargs
proporciona principalmente la siguiente información específica para cada flujo de trabajo desencadenador:
- Tipo de desencadenador
- Nombre del desencadenador
- Elemento de destino que activó el desencadenador
- Componentes del formulario (en el caso de la actividad Desencadenador de formulario)
- Nombre de instancia del formulario (en el caso de la actividad Desencadenador de formulario)
Triggereventargs
, puedes aplicar varios métodos según el tipo de desencadenador. Para los desencadenadores de eventos de usuario, están disponibles los siguientes métodos:
- ElementoDeDestino : obtiene información sobre el elemento de destino supervisado
- Atributos : obtén los atributos del elemento de destino supervisado.
- DisplayDpiScaleFactor : determina el tamaño del elemento de destino en píxeles
- ImageBase64 : convierte la imagen del elemento de destino en una imagen Base64
- Selector : recupera información sobre el selector utilizado en el elemento de destino
- Tipo de desencadenador
- FormSourceId : accede al ID del formulario en el que se activó el desencadenador
- Nombre de instancia : recupera el nombre de instancia del formulario en el que se activó el desencadenador
- Los flujos de trabajo de desencadenadores son flujos de trabajo que comienzan con un desencadenador. Estos pueden depurarse en el contexto de todo el proyecto, o de forma independiente.
- Si crees que un número elevado de desencadenadores afecta al rendimiento, puedes habilitar o deshabilitar desencadenadores específicos, utilizando las actividades Habilitar desencadenador local y Deshabilitar desencadenador local.
- Las actividades Habilitar desencadenador local y Deshabilitar desencadenador local son útiles en escenarios en los que hay múltiples flujos de trabajo que supervisan los eventos del usuario que están determinados por la fase de la automatización que ha alcanzado el usuario.
- Por ejemplo, puede utilizar la actividad Habilitar desencadenador local para activar un desencadenador una vez que el usuario haya introducido su nombre de usuario en un formulario.
- Por otro lado, la actividad Deshabilitar desencadenador local se puede utilizar para desactivar un desencadenador que se programó para ejecutarse secuencialmente una vez que el usuario haya llegado a un paso específico durante una visita guiada del producto, por ejemplo.
El propósito de las variables globales en la automatización attended es registrar información sobre los eventos del usuario o de la aplicación y luego almacenarla dentro de una variable que más tarde puedes utilizar como entrada o desencadenador para otras actividades. Esto te permite compartir datos fácilmente entre varios flujos de trabajo. Con las capacidades de variables globales, puedes:
- Notifica cuando cambia el valor de una variable global, utilizando la actividad Notificar cambio de variable global
- Desencadena un flujo de trabajo o una actividad cuando cambia el valor de una variable global, utilizando la actividad Desencadenador de variable global cambiado.