Evento-Business-Central-Azure-Event-Hubs

Envío de Eventos desde Business Central hacia Azure Event Hubs

Aitana Soluciones ERP y CRMTutoriales Leave a Comment

Azure Event Hubs es un servicio Paas de ingesta de datos, que se almacena en particiones, lo hace posible su escalabilidad.

Azure-Event-Hubs

Para este tutorial vamos a actuar de Event Producer, para la transmisión de datos usaremos el protocolo HTTPS y el mensaje será en formato JSON. ¡Vamos a empezar!

1. Configurar el Event Hub

Buscamos el servicio Event Hubs

Buscar-Azure-Event-Hubs

Primero creamos el Espacio de nombre (namespace): Es el nombre que tendrá la URL a la cual enviaremos la petición POST nombre.servicebus.windows.net

Crear-un-espacio-de-nombres

Una vez tengamos el namespace creado, creamos el Event Hub

Crear-el-event-hub
Crear-centro-de-eventos

Para poder enviar o consultar eventos necesitamos crear una directiva

Crear-una-directiva

La directiva la marcamos como Enviar, así podremos enviar eventos.

Agregar-directiva-SaS

Una vez creada la directiva tenemos que copiar la cadena de conexión la cual nos brindará los datos necesarios para poder conectar con el Event Hub

Conectar-con-el-Event-Hub

De la cadena de conexión usaremos todos los datos proporcionados cuando realicemos la petición desde BC

endpoint azure event hub

2. Crear la llamada desde BC

Creamos un objeto Json simple con 2 propiedades (id, description) y lo escribimos en una variable String

Creamos-un-objeto-json

Enviamos la petición http usando los dotnets HttpWebRequest

Enviamos-la-petición-http

Prestamos atención sobre la función CreateCredentials4EventHub, en esta función enviamos en la cabecera del request el SAS Token,

Funcion-CreateCredentials4EventHub

Aquí os dejo un enlace donde explica como generar el SAS Token y como hacer la llamada en la cabecera del request: https://docs.microsoft.com/es-es/azure/event-hubs/authenticate-shared-access-signature

En la función GetSignatureSHA256 creamos el SAS Token y lo devolvemos en la variable pSignature

Creamos-el-SAS-Token

Una vez hemos hecho la petición, en la función principal MyEventHubTest mostramos la respuesta, si todo ha ido bien el servicio nos devuelve un string en blanco caso contrario nos dará el error correspondiente.

Funcion principal MyEventHubTest

Para ver el Json que hemos enviado al EventHub nos vamos a la opción Procesar datos

Procesar-datos

Ejecutamos la Consulta de prueba y comprobamos que el Json que hemos enviado desde BC se en encuentra en el Eventhub myfirsteh

Eventhub-myfirsteh

Y hasta aquí el tutorial de cómo enviar Eventos hacia Azure Event Hubs. Si tienes cualquier duda o necesitas que te ayudemos a ponerlo en marcha, ¡ponte en contacto con nosotros rellenando el siguiente formulario!

Deja un comentario