Microsoft lleva un tiempo desarrollando una serie de aplicaciones de ámbito general englobadas en lo que han denominado Microsoft Power Platform.
Cubre un amplio abanico de posibilidades como procesamiento automático de tareas, desarrollo de aplicaciones de forma ágil, automatización de flujos de trabajo, creación de bots inteligentes y análisis de datos.
Para cada una de dichas tareas tiene su propia herramienta:
Power Apps: entorno para el desarrollo de aplicaciones sencillas sin apenas escribir lineas de código y con conocimientos muy básicos de programación.
Power Virtual Agents: gestión y mantenimiento de bots inteligentes para que respondan a nuestros clientes, empleados o visitantes de nuestro sitio web.
Power BI: colección de servicios de software, aplicaciones y conectores para convertir orígenes de datos sin relación entre sí en información conjunta y analizable. En otras palabras es una herramienta de Business Intelligence para análisis de grandes conjuntos de datos.
Power Automate: automatizar flujos de trabajo, procesamiento automático de tareas, conectar servicios entre sí, y un diverso etc.
Es de este último software del que existe, para los usuarios de Windows 10, una versión escritorio gratuita: Power Automate Desktop. En este paquete donde vamos a centrar este artículo. Aquí os dejo el enlace original donde se indican los requisitos y pasos para su descarga y configuración.
Al iniciar el programa veremos una pantalla donde gestionar los flujos de escritorio que es la denominación que hace Microsoft de las automatizaciones.
Desde aquí podremos crear nuevos flujos, ejectuarlos, parar su ejecución, editarlos, cambiarles el nombre y eliminarlos (estas dos últimas opciones se muestran al pulsar los 3 puntos). Además por cada flujo se muestra cuando fue modificado la última vez y el estado en que se encuentra.
Al crear un nuevo flujo lo primero que tendremos que hacer es ponerle un nombre (que después podremos cambiar si queremos)
Y la siguiente pantalla nos mostrará el editor de flujos:
Partes del Editor:
- Acciones
- Esta parte nos mostrará todas las opciones posibles de automatización organizada por conceptos. Algunos de estos conceptos son:
- Condicionales: construcciones “if then else” sobre carpetas, ficheros, imágenes, etc.
- Sistema: ejecutar aplicaciones, impresión de documentos, ejecutar comandos de DOS, etc.
- Automatización web: iniciar navegador, abrir página en navegador, hacer clic en elemento de página web, etc.
- Mouse y teclado: enviar teclas, enviar clic, mover ratón, etc.
- Esta parte nos mostrará todas las opciones posibles de automatización organizada por conceptos. Algunos de estos conceptos son:
- Main
- En esta sección organizaremos el orden de las acciones a realizar por el flujo.
- Grabadora Web
- Graba una serie de acciones realizadas sobre un navegador web para después añadirlas al flujo.
- Grabadora de escritorio
- Graba una serie de acciones realizadas en el ordenador para después añadirlas al flujo.
- Variables
- Variables de entrada del flujo, generadas en el flujo y de salida del flujo.
- Elementos de interfaz de usuario
- Partes de pantalla o página web usadas en el flujo.
- Imágenes
- Imágenes usadas en el flujo.
Vamos a hacer un ejemplo sencillo de un flujo para abrir el fichero Excel c:\ejemplo\datos.xlsx, introducir los datos DatoColumna1, DatoColumna2 y DatoColumna3 en la última fila de la hoja y después cerrar el Excel grabando los cambios. Las acciones a añadir serían las siguientes:
- Iniciar Excel: abriendo documento c:\ejemplo\datos.xlsx. Si queremos que la hoja Excel se modifique en segundo plano desactivaremos la opción “Hacer que la instancia esté visible”. Esta acción creará una variable que identificará la instancia de Excel (%ExcelInstance%).
- Obtener la primera columna o fila libre de la hoja de cálculo de Excel: seleccionamos la instancia de Excel (por defecto nos pondrá la variable que sea una instancia de Excel). Esta acción generará dos nuevas variables: %FirstFreeColumn% (primera columna libre) y %FirstFreeRow% (primera fila libre).
- Escribir en la hoja de cálculo de Excel: seleccionamos la instancia de Excel (por defecto nos pondrá la variable que sea una instancia de Excel), introducimos el valor a escribir (DatosColumna1), introducimos la columna 1 y como fila la primera vacía que tenemos en la variable obtenida en la acción anterior (%FirstFreeRow%).
- Escribir en la hoja de cálculo de Excel: seleccionamos la instancia de Excel (por defecto nos pondrá la variable que sea una instancia de Excel), introducimos el valor a escribir (DatosColumna2), introducimos la columna 2 y como fila la primera vacía que tenemos en la variable %FirstFreeRow%.
- Escribir en la hoja de cálculo de Excel: seleccionamos la instancia de Excel (por defecto nos pondrá la variable que sea una instancia de Excel), introducimos el valor a escribir (DatosColumna3), introducimos la columna 3 y como fila la primera vacía que tenemos en la variable %FirstFreeRow%.
- Cerrar el Excel guardando el documento activo: seleccionamos la instancia de Excel (por defecto nos pondrá la variable que sea una instancia de Excel).
Desde el mismo interfaz podemos arrastrar acciones para cambiar su orden y también copiarlas y pegarlas (para duplicar una misma acción). Una vez terminado pulsaremos grabar o al cerrar la ventana se nos preguntará si queremos grabar el flujo.
Algunas cosas que he echado en falta a este software:
- No pueden usarse atajos de teclado para ejecutar los flujos directamente.
- No se ejecuta como un servicio de Windows de forma que pudiese ejecutarse sin tener sesión iniciada.
- No podemos asociarle disparadores (sólo están disponibles para los flujos de nube) para que se ejecuten en función de ciertas condiciones.
Aun así era una herramienta que nos puede automatizar tareas repetitivas y ahorrarnos esos minutillos y los posibles errores que pudiéramos cometer al realizarlas. Ejemplos de tareas que tengo automatizadas:
- Abrir una página web de control de horas, seleccionar un rango de fechas, exportar el csv, abrirlo en Excel y crear una tabla dinámica con los datos.
- Abrir un navegador con las páginas que uso para trabajar, abrir VPN al trabajo y mostrar un fichero texto con las notas del día.
Esperamos que os haya sido de utilidad esta breve introducción a la automatización con Power Automate en Windows 10.
Autor: Óscar Rodríguez Olmedo
Buenos días, gracias por el ejmplo estoy empezando con el Automate y toda ayuda es poca, tengo una pregunta a ver si puedes ayudarme estoy usando la función UTCNow para guardar la fecha del sistema y poder utilizarla luego pero realmente me interesa la fecha del sistema menos dos días, ¿sabes como podría hacerse esto?, Saludos.