activities
latest
false
Importante :
Este contenido se ha localizado parcialmente a partir de un sistema de traducción automática. La localización de contenidos recién publicados puede tardar entre una y dos semanas en estar disponible.
UiPath logo, featuring letters U and I in white

Actividades UIAutomation

Última actualización 20 de dic. de 2024

Inject Js Script

UiPath.Core.Activities.InjectJsScript

Ejecuta el código JavaScript en el contexto de la página web correspondiente a ElementoDeIU.

Propiedades

Entrada
  • CódigoDeScript el código JavaScript que quieres ejecutar. Lo puedes escribir aquí como una cadena, o añadir la ruta completa de un archivo .js que contenga el código a ejecutar.Debe contener una única función anónima, como en estos ejemplos:
    function (element, input) {
        return "result";
    }function (element, input) {
        return "result";
    }
    async function (element, input) 
    {
        const asyncResult = await new Promise((resolvePromiseCb) => 
        {
            const timeoutMs = 100;
            setTimeout(() => 
            {
                resolvePromiseCb("async_result");
            }, 
            timeoutMs);
        });
        return asyncResult;
    }async function (element, input) 
    {
        const asyncResult = await new Promise((resolvePromiseCb) => 
        {
            const timeoutMs = 100;
            setTimeout(() => 
            {
                resolvePromiseCb("async_result");
            }, 
            timeoutMs);
        });
        return asyncResult;
    }
    Donde element representa el elemento HTML correspondiente al nodo de la IU que llama, y input representa la cadena de entrada facilitada por el llamante.
  • ParámetroDeEntrada: datos de entrada para el código JavaScript, como cadena o variable de cadena.
  • Target.Selector : propiedad de texto utilizada para encontrar un elemento de IU concreto cuando se ejecuta la actividad. En realidad, es un fragmento XML que especifica atributos del elemento GUI que está buscando y de algunos de sus elementos principales.
  • Target.TimeoutMS : especifica la cantidad de tiempo (en milisegundos) que se debe esperar a que se ejecute la actividad antes de que se produzca el error SelectorNotFoundException . El valor predeterminado es 30 000 milisegundos (30 segundos).
  • Destino.EsperaListo : antes de realizar las acciones, espera a que el destino esté listo. Están disponibles las siguientes opciones:

    • Ninguno: no espera a que exista nada, excepto el elemento de interfaz de usuario de destino, antes de ejecutar la acción. Por ejemplo, puedes utilizar esta opción si quieres recuperar solo el texto de una página web o hacer clic en un botón concreto, sin tener que esperar a que se carguen todos los elementos de la interfaz de usuario. Ten en cuenta que esto puede tener consecuencias no deseadas si el botón depende de elementos que aún no están cargados, como los scripts.
    • Interactivo / Completo : espera que existan todos los elementos de IU de la aplicación de destino antes de ejecutar la acción.

      Para evaluar si una aplicación está en estado Interactivo o Completo, se verifican las siguientes etiquetas:

    • Aplicaciones de escritorio: se envía un mensaje wm_null para comprobar la existencia de las etiquetas <wnd>, <ctrl>, <java> o <uia>.Si existen, se ejecuta la actividad.
    • Aplicaciones web:
    1. Internet Explorer: la etiqueta <webctrl> se utiliza para comprobar si el estado Listo del documento HTML es Completo. Además, el Ocupado tiene que estar en "Falso".
    2. Otros: la etiqueta <webctrl> se utiliza para comprobar si el estado Listo del documento HTML está Completo.
    • Aplicaciones SAP: primero se verifica la presencia de la etiqueta <wnd>, después se utiliza una API específica de SAP para detectar si la sesión está ocupada o no.
  • ElementoDeDestino : usa la variable ElementoDeIU devuelta por otra actividad. Esta propiedad no se puede utilizar junto con la propiedad Selector. Este campo solo admite variables de Elemento de IU.
  • Destino.Región de recorte: define el rectángulo de recorte, en píxeles, en relación con el Elemento de IU, en las siguientes direcciones: izquierda, arriba, derecha y abajo. Admite números positivos y negativos.
Salida
  • SalidaDeScript: cadena resultante del código JavaScript.
Común
  • NombreParaMostrar: el nombre de la actividad para ser mostrado.
  • ContinuarEnCasoDeError: especifica si la automatización debe continuar incluso cuando la actividad arroja un error. Este campo solo admite valores Boolean (Verdadero, Falso). El valor predeterminado es Falso. Por lo tanto, si el campo está vacío y se produce un error, se detiene la ejecución del proyecto. Si el valor es Verdadero, la ejecución del proyecto continúa independientemente de cualquier error.

    Nota: si se incluye esta actividad en Intentar capturar y el valor de la propiedad ContinuarEnCasoDeError es Verdadero, no se detectará error cuando el proyecto se ejecute.
Otros
  • Privado : si se selecciona, los valores de variables y argumentos ya no se registran en el nivel Detallado.
Opciones
  • Mundo de ejecución : el entorno de JavaScript para la ejecución del script.

    • Aislado: permite el acceso a los elementos HTML, pero evita el acceso a las variables de página y código. Utiliza esta opción para asegurarte de que la ejecución del script no entra en conflicto con la página.
    • Página : permite el acceso a los elementos HTML, las variables de la página y el código. Utiliza esta opción si tienes que acceder a las variables de la página (p. Ej., jQuery $) o interactuar con el código de la página (p. Ej., window.alert). Es necesario usar esta opción para solucionar este problema conocido específico de las extensiones MV3.

Puedes cambiar la propiedad del Mundo de ejecución para todas las actividades de Inject Js Script a través de la configuración del Proyecto.

Nota: La opción Mundo de ejecución está disponible a partir de la versión 22.12 de UiPath.UIAutomation.Activities .

Ejemplo de uso de la actividad Insertar Script JS

La actividad Insertar Script JS se utiliza para abrir un navegador y procesar archivos .js dentro de esas páginas. Debe tener las extensiones del navegador instaladas y habilitadas.

Para ejemplificar cómo utilizar esta actividad, hemos creado un ejemplo que abre un navegador y muestra una alerta con el texto especificado por el usuario.

Así es como se puede construir el proceso de automatización:

  1. Abre Studio y crea un nuevo Proceso.

    Nota: Asegúrate de colocar el archivo .js en la carpeta del proyecto. Para este ejemplo hemos utilizado el archivo example.js.
  2. Arrastra una Secuencia al Diseñador de flujo de trabajo.

    • Crea las siguientes variables:

      Nombre de la variable

      Tipo de variable

      Valor predeterminado

      TextToWrite

      ValorGenérico

       
  3. Arrastra una actividad Diálogo de entrada dentro del contenedor Secuencia.

    • En el Panel de Propiedades, añade el nombre Ask for message en el campo NombreParaMostrar.
    • Añade la expresión "Please insert the text to be written on the web page." al campo Etiqueta.
    • Añade el mensaje "Please insert text" en el campo Título.
    • Agrega la variable textToWrite en el campo Resultado.
  4. Coloca una actividad Abrir navegador debajo de la actividad Diálogo de entrada.

    • Añade la dirección "https://www.google.com/" en el campo Url.
  5. Arrastra un Insertar Script JS en el contendor Cuerpo de la actividad Abrir navegador.

    • En el Panel de Propiedades, añade el nombre Show Alert en el campo NombreParaMostrar.
    • Añade la variable TextToWrite en el campo ParámetroDeEntrada.
    • Añade la expresión "Inject JS\example.js" al campo CódigoDeScript.
  6. Ejecuta el proceso. El robot abre una nueva página del navegador y muestra la alerta con el texto que has añadido.

  • Propiedades
  • Ejemplo de uso de la actividad Insertar Script JS

¿Te ha resultado útil esta página?

Obtén la ayuda que necesitas
RPA para el aprendizaje - Cursos de automatización
Foro de la comunidad UiPath
Uipath Logo White
Confianza y seguridad
© 2005-2024 UiPath. Todos los derechos reservados.