Sitemap
Raúl Bogajo

Raúl Bogajo

Ingenuo tratando de escribir algo sobre su trabajo y sobre otras cosas más llanas. Cazador de vampiros sin miedo. Bad Brains son los mejores. Punto.

Power Bi
Dynamics Business Central
Microsoft

Business Central Online, Power BI y lo mejor de Irlanda.

9 min readJul 8, 2024

--

Business Central Online y Power BI, otra vez…

En el pasado Business Central Day que se celebró en Madrid, debido a una baja de última hora, la organización me preguntó a ver si podía tapar el hueco. Decidí aceptar y reciclar una sesión sobre un tema sobre el que ya había hablado en el Global Power Platform Bootcamp del 2022 en Barcelona y que repetí en el Power BI Days de Mallorca que se celebró a principios de este año.

La cosa va de explotar datos de Business Central Online en Power BI. Pensaba, erróneamente, que era un tema del que ya se ha hablado mucho y que la comunidad ya tenía la mayoría de sus inquietudes bajo control, pero la asistencia a la sesión del Business Central Day ES me hizo ver que es un tema que aun suscita interés.

Así que voy a resumir las ideas que intenté transmitir en la sesión en este artículo, retomar el blog y aprovechar la ocasión para mencionar a una banda de música que tiene un disco genial que esta sonando mientras escribo esto.

Adelanto también, que tengo planes, con mi colega Toni Ferra, para preparar algo sobre Business Central y Fabric. Pero si queréis ir leyendo sobre el tema seguid a Bert Verbeek e id calentando con este articulo.

Venga, ahora vamos con un breve introducción y a repasar unos consejos básicos, que, como las camisetas blancas, nunca pasan de moda.

Reporting en Business Central, mi opinión.

Seré breve.

Llevo mucho tiempo trabajando con Business Central, desde los tiempos de Navision 2.60, y hacer informes siempre me ha parecido algo doloroso. Con Business Central, aún más.

Es una opinión, meramente subjetiva, pero que hoy en día, en cierta manera, me empuja a plantear las necesidades de como consumir información del ERP de otra manera.

Dejando de lado las vistas de análisis (que son geniales para que el usuario consuma información ad-hoc), básicamente sigo estas premisas:

  • Desarrollar informes de Business Central personalizados, únicamente para formatos de documentos: facturas, albaranes, cuerpos de correo, informes financieros…
  • Para cualquier otra necesidad de consumir y compartir información: Power BI.

Hay que tener en cuenta que de cara al licenciamiento para aquellos usuarios que solo necesitan consumir información (esos cuyo puesto en la organización empieza por ‘C’) del ERP, es más barato licenciar Power BI Pro que una licencia de Business Central Essential, y por un poco mas de dinero se le puede sacar más partido que a una Team Member.

Dentro de este ámbito de licenciamiento PRO de Power BI, que se ajusta a un gran porcentaje de las empresas que trabajan con Business Central y que no tienen una volumetría de datos que asuste, es donde se centran estos consejos, que a mí me han funcionado hasta ahora y los trato de aplicar en el momento de colaborar un proyecto de análisis de datos de Business Central con Power BI.

A parte, alguno de estos puntos, creo que pueden ayudar a todos aquellos ninjas de Power BI que se enfrentan por primera vez ante el pequeño reto de extraer datos de Business Central.

Vamos allá

Extrae los datos con estilo

Business Central Online expone datos a través de su API.

Es decir, la información que vemos al usar el conector de Power BI, es aquella que esta disponibles a través de la mencionada API:

API (v2.0) for Dynamics 365 Business Central — Business Central | Microsoft Learn

En la API hay disponible mucha información, de la mayoría de las tablas del estándar, pero no estarán incluidas todas las tablas, ni todos los campos y faltarán los datos de cualquier tabla personalizada. En estos casos, no queda más remedio que realizar una personalización para exponer los datos.

Hay varias maneras de hacer esto, pero yo siempre opto por la siguiente. Requiere un pequeño esfuerzo de desarrollo en BC, pero que merece la pena:

  • Desarrollar una extensión (para los profanos en AL, una extensión en BC es una aplicación personalizada que permite implementar funcionalidad personalizada o extender la funcionalidad estándar sin que impacte en la aplicación base) específica para exponer los datos que necesitamos analizar y que contenga objetos de tipo API. Esta extensión tendrá declaradas las dependencias necesarias para poder referenciar objetos de otras extensiones instaladas.
  • En la extensión declarar, siempre que sea posible, objetos de tipo API query que expongan los datos de las tablas que necesitamos. Atención a la propiedad DataAccessIntent. Cuando indicamos el parámetro “ReadOnly” lo que hacemos es indicar que, cuando sea posible, lea los datos de la réplica de solo lectura del entorno que mantiene el servicio de Business Central. Si usas el conector de Business Central en Power BI Desktop, desde febrero 2022, por defecto, aplica esta propiedad, pero no está de más declararla en el objeto por si en algún momento la extracción de datos se hace a través de otro servicio, como por ejemplo pipelines de Azure Data Factory.
Press enter or click to view image in full size
  • En los objetos, expón únicamente los campos que necesitas. No expongas de más, siempre estas a tiempo de añadirlos cuando te hagan falta.
  • Se consistente al definir el API GROUP, API PUBLISHER y la API VERSION en los objetos.
  • Incluye siempre los campos systemId, systemCreatedAt y systemModifiedAt. Estos campos ayudaran a que, si el día de mañana la cosa crece o bien esos datos van a formar parte de un proceso de extracción más complejo, se puedan montar cargas incrementales usando los valores de estos campos.
Press enter or click to view image in full size

¡Una vez lista la extensión e implementada en el entorno de BC los datos ya pueden ser consumidos!

Como os comentaba, esto es una manera, puede haber otras, pero lo que no recomendaría nunca es exponer páginas del estándar como web service. Es la vía fácil, se hace desde el cliente y no requiere desarrollo, pero como verás a continuación…

Pasa de los web services

Desde el conector de Power BI, puedes ver que tienes acceso a los datos expuestos a través de web service, pero acompañados del sospechoso texto “legacy”.

Press enter or click to view image in full size
Aqui huele a muerto…

Esto significa que es una funcionalidad heredada, y que algún día puede desaparecer y tocara rehacer las conexione de todos los informes que lo usen.

A parte, la actualización de datos rinde mucho peor.

Pocas ventajas ¿no?

No te olvides de los dataflows

Cuando diseñas informes de negocio vas a usar una serie de tablas de manera recurrente: clientes, proveedores, productos, fecha …

Get Raúl Bogajo’s stories in your inbox

Join Medium for free to get updates from this writer.

Para consolidar datos de distintos entornos de Business Central o para no tener que realizar las mismas transformaciones en los diferentes informes usar dataflows no es una mala idea.

Press enter or click to view image in full size

En el servicio de Power BI, crea los dataflows dentro tu workspace, conéctate a Business Central Online con su flamante conector nativo, aplica las transformaciones necesarias y programa su actualización

Press enter or click to view image in full size
El conector nativo en los dataflows se hizo esperar..pero al final, llegó

Cuando trabajes desde Power BI desktop conéctate a los dataflows y reutilízalos todos los informes en los que te hagan falta:

Press enter or click to view image in full size

¡Ojo! No uses el conector Power BI Dataflows (legacy), no es critico en estos momentos y los dataflows que hayas creado previamente desde el servicio de Power BI (llámalo Fabric) no se han ido a ningún lado. La diferencia con el nuevo conector es que muestra dataflows creados dentro de entornos de Power Platform.

Press enter or click to view image in full size

Modelo, modelo, modelo

Bueno, cuando hablamos de modelo no hablamos de Chris Peterson en la academia de modelos “El Guapo” (el que pille la referencia que me contacte, aunque no lo sepa nos une el vínculo inquebrantable de haber disfrutado de una de las mejores series de la vida), sino del modelo de datos.

Chris Peterson aka “Chispas” aprendiendo a ser un módelo masculino

El modelado de datos es algo de mucha profundidad como para extendernos en este artículo, pero solo resaltar la importancia de diseñar un buen modelo que simplificara tus medidas y el rendimiento general del informe.

Lo ideal es tener un modelo en estrella, simple y limpio. Algo parecido a esto:

Press enter or click to view image in full size
¡El módelo en estrella manda!

Se ha escrito mucho sobre modelado, pero los fundamentos están en el “The Data Warehouse Toolkit”. Es un tocho, pero es un libro fundamental, al cual recomiendo echar un vistazo:

Datawarehousing never dies!

Otro libro que en su día me ayudo mucho, y ojo, que nos asuste la alusión Excel es el siguiente:

Por los famosos Alberto Ferrari y Marco Russo…

Este libro resuelve muchos escenarios que vas a encontrar el desarrollar informes de ámbito financiero con datos un ERP como Business Central (¡nuestro favorito!).

No te pases de cool con la visualización

Por último, visualización. Otro mundo en el cual te puedes perder.

Mi aproximación es siempre, dentro de lo posible, optar por colores neutros y por visuales sencillas. Algo parecido a esto:

Press enter or click to view image in full size
En la sobriedad está el gusto…deja los fondos negros para otras cosas.

Si no os han definido un formato corporativo, dadle un vistazo a la galería de temas de Power BI para inspiraros.

Me gusta mucho el tema “Show Me The Numbers” inspirado en el gran libro de Stephen Few, gurú de la visualización y maestro de la sencillez bien aplicada:

Press enter or click to view image in full size
Los colores neutros no hacen daño a los ojos

Y recordad también que tenéis varios temas inspirados en la paleta de colores de Business Central que quedaran muy bien sobre todo si queréis embeber estos informes dentro de la aplicación:

Press enter or click to view image in full size
BC style for your homies!

Y esto es todo de momento…como he comentado al principio del artículo, prometo volver con Fabric y OneLake, cuando mi colega Toni Ferra se preste a ello, pero ahora para el que quiera y le interese la parte musical, vámonos a Irlanda…

Los Whipping Boy y “Heartworm”

Irlanda es un país que tiene bastantes cosas buenas, y una de las mejores cosas que han salido de ahí es el “Heartworm” de los Whipping Boy.

A los Whipping Boy no les daba el sol en los ojos…

Di con este disco de 1995 después de leer sobre el en un fanzine (revistas autoeditadas, antes de la hegemonía de la red y de la imposición de lo digital…), creo que era el Dead City Radio, bastante después de que se publicara. El articulo despertó mi curiosidad, y conseguí el CD de segunda mano por cuatro chavos.

Press enter or click to view image in full size
Pendiente de pillar en vínilo…

“Heartworm” es el segundo disco de Whipping Boy y con el que dejan atrás un rollo más dream-pop que tenían en su primer disco, “Submarine”. Ojo, el “Submarine” mola también, pero para mi gusto, no llega ni de lejos al nivel del “Heartworm”, discazo que pasó sin pena ni gloria eclipsado por eso que llamaron Britpop.

Melodías en una atmosfera opresiva, pero que no ahoga. Letras con un toque de enfado y un rollo poético…

Esto está quedando muy pedante, y al final lo bueno de la música es algo que es totalmente subjetivo, así que aquí tenéis el video de “We don’t need nobody else” para que veáis a Fearghal en movimiento

Y el disco para los que tengáis acceso a la plataforma de streaming de la gran “S”:

Version extendidaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa

Espero que os guste tanto como a mí.

Paz.

Power Bi
Dynamics Business Central
Microsoft

--

--

Raúl Bogajo
Raúl Bogajo

Ingenuo tratando de escribir algo sobre su trabajo y sobre otras cosas más llanas. Cazador de vampiros sin miedo. Bad Brains son los mejores. Punto.