Crear Logic App en Azure para envío de mails cuando se accione un Business event en D365FO
En el post anterior se revisó la configuración de un endpoint para un business event en D365FO de tipo service bus queue, con el objetivo de enviar mails cada que se confirmara una orden de compra, esto lo vamos a lograr creando una logic app en azure.
Cada vez que se reciba un mensaje en la queue del service bus, nuestra logic app va a enviar un mail.
Desde el portal de azure, creamos una nueva Logic App en azure, eligiendo una plantilla que es muy común en azure que nos funciona para este proceso de envío de mails.

En el diseñador de la Logic App, elegimos nuestro service bus que configuramos en el post pasado y que será el encargado de recibir los business events de D365FO; le asignamos un nombre.

Le indicamos cuál queue es la que se va a monitorear y el intervalo que queramos.

El siguiente paso que es enviar un email, lo configuramos de esta forma:

Con eso ya configuramos que cuando se reciba un mensaje en la queue se envíe un mail.
Ahora a probarlo. Desde nuestro D365FO se confirma una orden de compra y esperamos a que llegue el mail.


Para pintar el id de recepción:
json(base64ToString(triggerBody().ContentData)).ProductReceiptId
Para pintar la orden de compra:
json(base64ToString(triggerBody().ContentData)).PurchaseOrderNumber
También es posible usar un parse Json para hacer más rápida la lectura de los parámetros que lleva el queue.

Importante: en Content del parser, debe ir la transformación del content del queue de base 64 a string.
json(base64ToString(triggerBody()?[‘ContentData’]))
Post relacionados: