Parte 1: Aspectos básicos
La Parte 1 del tutorial le presenta la creación de scripts en Robots y el uso de la API de HighBond para automatizar parcialmente un proceso
¿Qué aprenderé?
Aprenderá cómo hacer lo siguiente:
-
configurar, crear y probar un script de Python/HCL en un robot HighBond
-
usar la API de HighBond para interactuar con un objeto de Diligent One
-
utilizar HCL para importar y transformar algunos datos, y guardar la salida en Resultados
Escenario: guardar los resultados de la salida en la aplicación Resultados de Diligent One
Supongamos que necesita realizar algunos análisis de datos recurrentes en Robots. Después de realizar el análisis, desea guardar los resultados obtenidos en la aplicación Resultados para realizar acciones correctivas para los asuntos o para visualizar los datos.
Desea programar un script de Robots que contenga el análisis de datos para ejecutarlo sin intervención del usuario todas las noches. No quiere tener que preocuparse de si existe una tabla en Resultados para recibir los resultados de la salida todas las noches, ni por tener que recuperar manualmente un identificador único de tabla. Desea que el script encuentre automáticamente la tabla correcta, según el nombre, o que cree una nueva tabla si no existe una tabla con ese nombre.
En la Parte 1 del tutorial automatizaremos parcialmente este proceso de punta a punta. En la Parte 2 lo automatizaremos totalmente.
Nota
Vamos a usar una tabla de Resultados para demostrar cómo funciona la API de HighBond. Sin embargo, puede utilizar la API para interactuar con muchos tipos diferentes de objetos de Diligent One en varias aplicaciones diferentes de Diligent One.
Si desea obtener más información, consulte Recursos fundamentales en la Referencia de la API de HighBond para ver a qué objetos puede acceder.
Iniciar sesión en Diligent One y llevar a cabo algunas tareas de configuración
Lo primero que debe hacer es iniciar sesión en la instancia de Diligent One de su organización y llevar a cabo algunas tareas de configuración. Las tareas se completan de manera rápida y sencilla.
Un recordatorio: debe ser Administrador del sistema Launchpad y tener acceso a las aplicaciones Robots y Resultados para poder realizar todas las tareas que se incluyen en este tutorial.
Iniciar sesión en Diligent One
- Vaya a www.highbond.com.
- Escriba sus credenciales de Diligent One (correo electrónico y contraseña).
- Haga clic en Iniciar sesión.
- Si su empresa utiliza más de una instancia en Diligent One, asegúrese de que la instancia apropiada esté activa.
Crear una colección y un análisis en la aplicación Resultados
Cree una colección y un análisis en Resultados para almacenar la tabla que va a crear. Una colección es un contenedor de primer nivel en Resultados, mientras que un análisis es un contenedor de segundo nivel.
Nota
En la Parte 2 del tutorial, extenderá el script para automatizar esta parte de la configuración de manera que no sea necesario hacerlo manualmente.
Crear una colección
- Haga clic en Seleccionar aplicaciones > Resultados para ir a la aplicación Resultados.
- Desde la página de inicio de Resultados, haga clic en Agregar colección.
- En la página Nueva colección, nombre la colección como Colección de prueba 1 <sus iniciales>.
Por ejemplo: Colección de prueba 1 LM
Importante
Asegúrese de que el nombre de la colección sea exclusivo. Resultados no impide la existencia de nombres de colecciones idénticos. Los nombres de colecciones idénticos causarán problemas al script que va a crear.
Agregar las iniciales de su nombre al final del nombre de la colección debería ser suficiente para que el nombre sea exclusivo.
-
Haga clic en Crear colección.
Resultado Se abre la página de la nueva colección y usted ve la lista de integrantes que tienen acceso a la colección.
Crear un análisis
- Seleccione la ficha Tablas y haga clic en Agregar análisis.
- En la página Nuevo análisis, nombre el análisis como Análisis de prueba 1 y haga clic en Crear análisis.
Resultado Se abre el nuevo análisis y usted ve el mensaje Su análisis está vacío.
- En el análisis, haga clic en el botón de configuración ,
- En la barra de dirección del navegador, copie el identificador exclusivo del análisis y péguelo en un archivo de texto para almacenarlo temporalmente.
Crear un robot en la aplicación Robots
Cree un robot que contenga el script que va a crear.
-
Abra la aplicación Robots en una ficha independiente:
-
Haga clic en Cambiar aplicaciones .
-
Haga clic con el botón derecho en Robots y seleccione Abrir el enlace en una ficha nueva.
Consejo
Tener las aplicaciones Resultados y Robots abiertas en fichas independientes le resultará útil en una etapa posterior de este tutorial.
-
-
Vaya a la ficha del navegador en la cual está abierta la aplicación Robots.
-
Seleccione Robots HighBond y haga clic en Crear un robot HighBond.
Nota
Si es Administrador del sistema y tiene una suscripción Profesional, también tendrá la opción de crear un robot de Flujo de trabajo. Para los fines de este tutorial, puede crear tanto un robot HighBond como un robot de Flujo de trabajo.
No cree un robot ACL. Los robots ACL son para usar con scripts escritos con ACLScript y cargados desde Analytics.
-
Escriba un nombre para el robot, como Robot del tutorial <sus iniciales> y haga clic en Crear un robot HighBond.
Por ejemplo: Robot del tutorial LM
Resultado El editor de scripts de Robots del nuevo robot comienza el proceso de puesta en marcha. No puede ejecutar un script, o una celda de un script, hasta que no se haya completado el proceso de puesta en marcha.
Crear un token de API de HighBond en Launchpad
Para poder usar la API de HighBond, necesita un token de API de HighBond. Puede crear un nuevo token o usar uno existente. Proteja el token como si se tratara de una contraseña y evite compartirlo con otras personas.
-
Vaya a Launchpad:
-
En la esquina superior izquierda de la pantalla, haga clic con el botón derecho del ratón en el nombre de su instancia de Diligent One.
-
Seleccione Abrir el enlace en una nueva pestaña.
Consejo
Tener las aplicaciones Launchpad y Robots abiertas en fichas independientes le resultará útil en esta parte del tutorial.
-
-
Vaya a la ficha del navegador en la cual está abierto Launchpad.
- En Launchpad, seleccione > Mi perfil.
- En la sección Tokens de la aplicación, haga clic en Administrar.
Se abre la página Administrar tokens API.
- Cree un nuevo token o use un token existente:
Crear un nuevo token
- Haga clic en Agregar token y seleccione API de HighBond.
- En el panel Nuevo token API de HighBond, introduzca la siguiente información:
Descripción Escriba Token de tutorial de scripts de Robots
Caducidad del token Deje esta opción activada.
Caduca en Introduzca 30
Indique una cantidad mayor de días si quiere que la automatización que genera en el tutorial siga funcional por un período más prolongado.
Contraseña Introduzca su contraseña de Diligent One
Haga clic en Generar token.
Si el token se genera correctamente, aparece una confirmación con el token.
- Haga clic en Copiar para copiar el token en el portapapeles.
- En este momento, o más adelante, haga clic en el botón de cierre ubicado en la esquina superior derecha del panel Nuevo token de API de HighBond.
Consejo
Es posible que desee conservar el token accesible hasta haber creado con éxito la variable de contraseña en la siguiente sección del tutorial.
Recuerde que el token es como una contraseña revelada y no debe dejarlo expuesto durante más tiempo del necesario.
Usar un token existente
- En la columna Token, haga clic en el token que desea utilizar.
Consejo
Utilice la lista desplegable Todos los tipos para mostrar únicamente los tokens de la API de HighBond.
- Introduzca su contraseña de Diligent One y haga clic en Confirmar.
Su token aparece en un cuadro de diálogo.
- Haga clic en Copiar para copiar el token en el portapapeles.
- En este momento, o más adelante, haga clic en el botón de cierre ubicado en la esquina superior derecha del cuadro de diálogo.
Consejo
Es posible que desee conservar el token accesible hasta haber creado con éxito la variable de contraseña en la siguiente sección del tutorial.
Recuerde que el token es como una contraseña revelada y no debe dejarlo expuesto durante más tiempo del necesario.
Crear y probar el script en modo interactivo
Usted crea y prueba scripts en el editor de scripts de Robots. La ejecución de scripts o de celdas de scripts individuales de forma manual en el editor de scripts se considera modo interactivo. Debe interactuar manualmente con el script para ejecutarlo.
En la Parte 2 del tutorial, programará el script para que se ejecute sin intervención del usuario.
Nota
Si no realiza ninguna actividad en el editor de scripts durante más de unos pocos minutos, el proceso del editor de scripts caducará. Si el editor de scripts no responde o se cuelga cuando usted intenta ejecutar una celda, confirme y envíe el script, y luego salga y vuelva a entrar en el editor de scripts. Si desea obtener más información, consulte Guardar el script y salir del editor de scripts.
Crear una variable de contraseña para el token de la API de HighBond
Antes de comenzar a crear el scripts, cree una variable de contraseña para el token de la API de HighBond.
-
Vaya a la ficha del navegador en la cual está abierta la aplicación Robots.
-
En el editor de scripts de Robots, haga clic en Administrar variables .
-
En la ventana Variables, especifique los siguientes valores para crear la variable de contraseña:
Campo/opción Valor Nombre Especifique
v_hb_token
. Debe usar este nombre exacto.Tipo Seleccione Contraseña.
Valor Pegue su token de API de HighBond en el campo, desde el portapapeles.
Entrada de la tarea Se activa automáticamente cuando selecciona Contraseña. Etiqueta de la entrada de la tarea Especifique Escriba su token de API de HighBond:
En la Parte 2 del tutorial, verá dónde se utiliza esta etiqueta de entrada.
Se necesita la intervención del usuario Deje seleccionada la opción. Descripción de la entrada de la tarea Opcional. Puede dejar la descripción en blanco. - Haga clic en Guardar y cerrar.
Resultado Se guarda la variable y usted regresa al editor de scripts.
Nota
Como medida de seguridad, cada vez que salga del editor de scripts o lo actualice, el token de la API de HighBond se elimina automáticamente de la variable de contraseña. Si desea ejecutar un script que utilice la API de HighBond, debe volver a pegar un token válido en la variable cada vez que reabra o actualice el editor de scripts.
Si se olvida de realizar este paso, obtendrá un mensaje de error al ejecutar el script.
HTTPError: 401 Client Error: Unauthorized for url: <url>
Copiar y pegar bloques de código en las celdas del editor de scripts
-
Desde la siguiente tabla, copie y pegue cada bloque de código en celdas independientes en el editor de scripts.
Para agregar una nueva celda en el editor de scripts, haga clic en Agregar una celda debajo en la barra de herramientas del editor de scripts. Si lo desea, puede agregar cuatro celdas vacías más en este momento.
-
Después de pegar el código de una celda y realizar las actualizaciones especificadas en el código, haga clic en Ejecutar la celda seleccionada para ver la salida.
Obtener más información
Podría colocar todo el código en una única celda. Sin embargo, organizar el código en celdas independientes impone un orden visual en el script y hace que la relación entre los diferentes bloques lógicos sea más fácil de ver y comprender. Si desea conocer otras ventajas, consulte Características clave de la creación de scripts basada en celdas.
Pautas
-
Conserve el mismo orden Asegúrese de que el código de las celdas del editor de scripts siga el mismo orden que el código de la siguiente tabla. Si alguna de las celdas no está en el orden correcto, el script no se podrá completar con éxito.
Nota
Junto a cada celda del editor de scripts aparece un número cuando ejecuta la celda. Por ejemplo: [7]. El número no es un número de celda. Se trata de un indicador de secuencia que se actualiza de forma dinámica y muestra el orden en el que se ejecutó la celda durante una sesión de creación de scripts.
-
Use el botón Copiar En los bloques de código que se encuentran debajo, pase el cursor sobre el bloque y haga clic en el botón Copiar para copiar todo el código del bloque.
-
Copie y pegue con cuidado Al copiar y pegar código, asegúrese de contar con todo el código. Python no permite que falte ningún elemento, como paréntesis de apertura y cierre
(
)
.Copie y pegue únicamente el código. No incluya los ejemplos de la salida de la celda que aparecen después de los bloques de código que se encuentran más adelante.
Copiar y pegar con cuidado lo ayudará a evitar los errores de tiempo de ejecución.
-
Trabaje celda por celda Ver la salida celda por celda lo ayudará a comprender la estructura de la lógica del script. Si bien la primera celda no tiene una salida visible, debe ejecutarla antes de poder ejecutar cualquiera de las demás celdas.
-
Lea los comentarios del código Además de los comentarios en la siguiente tabla, lea los comentarios del código para comprender qué está haciendo el código.
# Comment text
Descripciones de celdas y bloques de código
Nota
Si en algún momento obtiene un error de Python (un bloque de error rojo), consulte Resolución de problemas.
N°. de celda | Bloque de código y descripción |
---|---|
Celda 1 |
Importar los componentes necesarios El código de la celda 1 importa algunos componentes de código adicionales.
|
Bloque de código para la celda 1
Copie y pegue este bloque de código en la celda 1 del editor de scripts y después ejecute la celda. Al ejecutar esta celda, no hay una salida visible.
|
|
Celda 2 |
Definir las variables que se usan en el script El código de la celda 2 define varias variables. Las variables son necesarias porque algunos valores que se utilizan en el script pueden cambiar:
La función |
Bloque de código para la celda 2
Ejemplo de la salida de la celda date = 29-Sep-2021 |
|
Celda 3 |
Crear una tabla en Resultados El código de la celda 3 utiliza la API de HighBond para encontrar o crear la tabla de Resultados con el nombre que usted especificó en la celda anterior (el valor de Las solicitudes de la API se hacen con dos métodos de HCL:
Nota Este bloque de código representa el valor fundamental del script. Por medio del uso de la API de HighBond, puede interactuar a nivel de la programación con la aplicación Resultados sin necesidad de abrir manualmente la aplicación. Esto significa que puede lograr su objetivo de ejecutar el script sin intervención del usuario sin necesidad de preocuparse por si existe una tabla en Resultados para recibir los resultados de la salida. En la Parte 2 del tutorial, extenderemos el script para usar este mismo enfoque basado en la API para encontrar o crear automáticamente una colección y un análisis. |
Bloque de código para la celda 3
Copie y pegue este bloque de código en la celda 3 del editor de scripts y después ejecute la celda.
Ejemplo de la salida de la celda The ID of the newly created table is 209717 |
|
Celda 4 |
Realizar algunos análisis de datos El código de la celda 4 realiza algunos análisis de datos sencillos que demuestran un par de métodos de HCL:
Los marcos de datos son estructuras similares a las tablas, que organizan los datos en filas y columnas. Nota Podría reemplazar cualquier análisis de datos que envíe un marco de datos de HCL que usted luego guarda en la aplicación Resultados. |
Bloque de código para la celda 4
Copie y pegue este bloque de código en la celda 4 del editor de scripts y después ejecute la celda.
Ejemplo de salida de la celda (un marco de datos de HCL)
|
|
Celda 5 |
Guardar la salida del análisis de datos en la tabla de Resultados El código de la celda 5 guarda la salida del análisis de datos en la tabla de Resultados que el script encontró o creó previamente. El método |
Bloque de código para la celda 5
Copie y pegue este bloque de código en la celda 5 del editor de scripts y después ejecute la celda.
Ejemplo de la salida de la celda 202 es el código de estado HTTP para "Aceptado". 202 |
Comprobar la nueva tabla en Resultados
Veamos la aplicación Resultados para confirmar que se haya creado la nueva tabla y que la tabla contenga los resultados de la salida del análisis de datos de ejemplo.
-
Vaya a la ficha del navegador en donde está abierta la aplicación Resultados y regrese a la página de la colección (Colección de prueba 1 <sus iniciales>).
Resultado La tabla que acaba de crear usando la API de HighBond está presente y contiene los resultados de la salida que usted acaba de guardar.
Nota
Según el nivel de uso actual de Resultados, es posible que haya cierto retraso en la aparición de los resultados de la salida en la tabla.
-
Active Mostrar los identificadores de la tabla.
El identificador de la tabla se muestra a la izquierda del nombre de la tabla. Debe ser el mismo identificador que se creó y mostró al ejecutar la celda del script para crear la tabla.
-
Haga clic en el nombre de la tabla para abrirla.
Se muestran los resultados de la salida que guardó desde Robots a Resultados.
-
Regrese a la ficha del navegador donde está abierta la aplicación Robots y haga clic en Ejecutar todas las celdas en secuencia en la barra de herramientas del editor de scripts.
Resultado El script se ejecuta desde la primera celda hasta la última. Fíjese que ahora se muestra la salida de la celda 3:
El identificador de la tabla existente es identificador_tabla.
Al volver a ejecutar el script, el código de la celda 3 encuentra una tabla con un nombre que coincide con
v_table_name
. Por lo tanto, no es necesario crear una nueva tabla. -
Regrese a la ficha del navegador en donde está abierta la aplicación Resultados y actualice la página.
Resultado La tabla se actualiza y muestra el conjunto adicional de resultados de la salida que acaba de guardar desde Robots en Resultados.
Nota
Según el nivel de uso actual de Resultados, es posible que haya cierto retraso en la aparición de los resultados de la salida en la tabla.
Obtener más información
Puede experimentar libremente con el script y probar diferentes opciones para crear tablas de Resultados.
Diferentes opciones para crear tablas de Resultados
El script crea una tabla diariamente, identificada con la fecha en la que se ejecuta el script. Puede modificar el script para usar la fecha del día anterior en el nombre de la tabla. Esto resulta útil si el script se ejecuta después de la medianoche. O puede crear una única tabla mensual acumulativa en lugar de tablas diarias individuales.
Nota
Después de actualizar el script, haga clic en Ejecutar todas las celdas en secuencia para asegurarse de que todas las actualizaciones y todos los prerrequisitos o las dependencias se ejecuten en el orden adecuado.
Consejo
Si accidentalmente introduce un error en el script y no puede resolver el problema, simplemente vuelva a pegar el código de la celda afectada.
-
Tabla diaria Si programa el script para que se ejecute todas las noches, este crea una nueva tabla de Resultados cada vez que se ejecuta y el nombre de esta tabla tiene la fecha actual como sufijo.
-
Restar un día Si el script se ejecuta después de la medianoche y usted desea que el sufijo de fecha refleje la fecha del día anterior, puede quitar el comentario del método
timedelta()
(celda 2, línea 7), lo cual resta 1 día de la fecha actual de su instancia de Diligent One:today = date.today() - timedelta(days = 1)
Nota
La fecha actual de su instancia de Diligent One está determinada por la fechahora de la infraestructura en la nube en la cual está alojada su instancia de Diligent One. Es posible que exista una diferencia entre la zona horaria de la infraestructura en la nube y su zona horaria local.
-
Tabla mensual ¿Y si desea tener una tabla mensual en lugar de tablas diarias? En ese caso, cambie la variable en el sufijo del nombre de la tabla (celda 2, línea 15):
v_table_name = f"Test table 1 ({current_month})"
Ahora, los resultados de la salida diaria del análisis de datos que se realiza en Robots se anexan para conformar una única tabla mensual. Si el script se ejecuta después de la medianoche, utilice el método
timedelta()
para asegurarse de que el último día del mes se incluya en la tabla correcta. -
Comprobar el cambio de tablas mensuales Puede verificar que el script cree automáticamente una nueva tabla mensual al comenzar cada mes. Utilice el método
timedelta()
(celda 2, línea 7) para agregar la cantidad adecuada de días a la fecha actual a fin de que ocurra en el próximo mes. Por ejemplo:today = date.today() + timedelta(days = 12)
Importante
Una vez que haya terminado de experimentar, revierta el código a los valores originales:
today = date.today() # - timedelta(days = 1)
Guardar el script y salir del editor de scripts
-
Regrese a la ficha del navegador en la cual está abierta la aplicación Robots.
-
En la barra de herramientas del editor de scripts, haga clic en Guardar y confirmar y enviar.
-
Introduzca un mensaje de confirmación y envío, como Script para crear una tabla de Resultados automáticamente.
-
Haga clic en Confirmar y enviar para guardar, confirmar y enviar el script.
Aparecerá el mensaje El script se confirmó y envió correctamente.
-
En el encabezado de la página, haga clic en el nombre del robot (Robot del tutorial <sus iniciales>).
Resultado Regresa a la ficha Versiones del script del robot. Cada vez que guarda, confirma y envía un script, la versión guardada se agrega a esta ficha.
-
Para volver a entrar en el editor de scripts, haga lo siguiente:
-
En la ficha Versiones del script, seleccione la versión del script que desee abrir (en general, la versión más reciente).
-
En el panel lateral Detalles de la versión que se abre, haga clic en Editar script.
Resultado La versión del script se abre en el editor de scripts y el proceso de puesta en marcha comienza nuevamente.
Nota
Recuerde volver a pegar su token de la API de HighBond en la ventana Variables.
-
Comparación entre el modo de desarrollo y el de producción de Robots
Modo de desarrollo
Al salir del editor de scripts de Robots, tómese un momento para orientarse. Se encuentra en el modo de desarrollo de Robots El modo de desarrollo se distingue por la presencia de un encabezado con un fondo oscuro y porque el botón Desarrollo está seleccionado.
Cada vez que desee editar un script o ejecutarlo de manera interactiva, tal como acaba de hacer, debe regresar al modo de desarrollo. No puede editar ni ejecutar scripts de manera interactiva si está en el modo de producción de Robots.
Modo de producción
Utilice los botones Desarrollo y Producción para pasar del modo de desarrollo al modo de producción.
El modo de producción se distingue por la presencia de un encabezado con un fondo claro y porque el botón Producción está seleccionado. Cada vez que vuelva a entrar en un robot, irá al modo de producción.
Obtener más información
Si desea obtener más información acerca de los dos modos, consulte Modo de desarrollo y modo de producción en Robots.
Lo que aprendió
¡Felicitaciones! Ahora tiene una comprensión básica del uso de la generación de scripts nativa de Robots con la API de HighBond.
Específicamente, ha aprendido a hacer lo siguiente:
-
crear y probar un script de Python/HCL en un robot HighBond
-
usar la API de HighBond para interactuar con un objeto de Diligent One
-
utilizar HCL para importar y transformar algunos datos, y guardar la salida en Resultados
¿Qué sigue?
En la Parte 2 del tutorial automatizará por completo el proceso con el que ha estado trabajando:
-
extienda el script para que no sea necesario crear manualmente colecciones o análisis en la aplicación Resultados
-
cree una tarea programada para poder ejecutar el script sin intervención del usuario
Vaya a > Parte 2: Aumente sus conocimientos
Obtener más información
Obtenga más información sobre HCL y la creación de scripts en Robots:
Resolución de problemas
Si obtiene un error de Python (un bloque de error rojo) al ejecutar una celda o el script completo, lleve a cabo el procedimiento de resolución de problemas que se incluye a continuación.
-
En el editor de scripts, haga clic en Variables y compruebe que haya una variable de contraseña v_hb_token y que se haya proporcionado un token en el campo Valor.
El token debe ser un token de API de HighBond, no un token de Analytics. Para asegurarse de eso, vuelva a copiar un token adecuado desde la pantalla Administrar tokens API de Launchpad y péguelo en el campo Valor.
Consejo
Recuerde que si sale del editor de scripts o lo actualiza, el valor de las variables de contraseña se elimina automáticamente y debe volver a especificarlo.
-
Si falta una variable de contraseña, complete todos los aspectos necesarios de la definición de variables de contraseña.
Si desea obtener más información, consulte Crear una variable de contraseña para el token de la API de HighBond.
- Haga clic en Guardar y cerrar.
Resultado Se guardan todas las variables y usted regresa al editor de scripts.
-
En la barra de herramientas del editor de scripts, haga clic en Ejecutar todas las celdas en secuencia .
Resultado Si no hay errores, el script se ejecuta desde la primera celda hasta la última.
Nota
Al guardar y cerrar la ventana Variables, se borra la memoria de la sesión del editor de scripts. Al volver a ejecutar todas las celdas en secuencia se asegura de que se importen todas las bibliotecas de Python necesarias y que se realicen todas las operaciones que las celdas posteriores tienen como prerrequisito.