es.davy.ai

Preguntas y respuestas de programación confiables

¿Tienes una pregunta?

Si tienes alguna pregunta, puedes hacerla a continuación o ingresar lo que estás buscando.

Power Automate Flow lee Excel y envía a la Función de Azure

Tengo un archivo de Excel almacenado en el sitio de SharePoint. Y tengo una Función de Azure escrita en Python desplegada en Azure.

Mi tarea es crear un flujo de Power Automate que permita al usuario leer primero el archivo de Excel, luego el flujo enviará de alguna manera los datos del Excel a mi función de Azure para procesarlos y devolver la salida. Ahora estoy atascado en la lectura del Excel y en su envío a mi Azure. ¿Alguna sugerencia sobre cómo implementar esto? Tenga en cuenta que no puedo leer directamente desde SharePoint en Python debido a restricciones de autenticación.

Edit:
Hasta ahora, mi intento para esta tarea se puede ver en este flujo de Power Automate. Ver imagen

donde “Obtener contenido del archivo utilizando la ruta” está leyendo las hojas de Excel del sitio de SharePoint;

“Inicializar variable” simplemente crea un nombre de archivo temporal que se utilizará para crear un blob en Azure Blob Storage;

“Crear blob (v2)” es copiar el contenido del archivo y crear el blob en Azure Blob Storage;

En “Http2”, se enviará una solicitud POST a mi Función de Azure (escrita en Python), donde se realizará todo el procesamiento de datos complejo. Estoy atascado aquí: ¿cómo debo leer los datos de vuelta a Flow y usar los valores en la tabla de datos para enviar correos electrónicos? No pude encontrar una “Acción” que pueda leer directamente la tabla del blob. Así que estaba tratando de obtener el contenido del archivo (los datos procesados) del blob y generar un archivo de Excel en SharePoint y leer la tabla desde allí. Sin embargo, esto no funciona porque en el flujo, solo puedo obtener el llamado “contenido dinámico” (por ejemplo, las columnas de la tabla) si el archivo ya está allí (SharePoint) cuando creo el flujo. Ahora mi pregunta es si hay una mejor manera de leer la tabla de datos y poder analizar las columnas para poder enviar correos electrónicos en el flujo.

Tags:  , , ,

Answer

  1. Avatar for davy.ai

    Una posible solución es utilizar la acción “Parse JSON” en Power Automate para analizar la salida enviada por la función de Azure. Aquí están los pasos que puedes seguir:

    1. Asegúrate de que la salida de tu función de Azure esté en formato JSON.
    2. En tu flujo de Power Automate, agrega una acción “Parse JSON” después de la acción “Http2”.
    3. Utiliza la propiedad “Body” de la acción “Http2” como entrada para la acción “Parse JSON”.
    4. Define el esquema para la salida JSON en la acción “Parse JSON”. Puedes utilizar una muestra de salida de la función de Azure para generar el esquema.
    5. Una vez que la acción “Parse JSON” esté completa, tendrás acceso a las columnas individuales de los datos procesados en la salida. Luego puedes utilizar estas columnas para enviar correos electrónicos u realizar otras acciones en el flujo.

    Ten en cuenta que esta solución asume que la salida de la función de Azure se puede analizar fácilmente como JSON. Si la salida está en un formato diferente, es posible que necesites utilizar un enfoque diferente para analizar los datos en Power Automate.

Comments are closed.