La visualización de reportes y análisis de datos es unas de las necesidades claves de las empresas con respecto a sus sistemas y aplicaciones en general, por tal razón el mundo de la tecnología ha desarrollado herramientas especializadas para cubrir estas necesidades. Para el presente artículo mostraré la utilización de una herramienta líder del mercado tal como es Microsoft Power BI, y aun cuando esta herramienta está más orientada al análisis de datos e inteligencia de negocios, también ofrecer buenas funcionalidades para presentar reportes operativos e integración con aplicaciones.

 

                Power BI puede conectarse a múltiples orígenes o fuentes de datos, para este caso utilizaré una base de datos Azure SQL con tablas, vistas y relaciones ya definidas para poder ofrecer casos didácticos de la vida real. Mostraré desde el inicio la creación de un reporte, conectándolo con su fuente de datos, desplegando la información a presentar basado en la fuente de datos configurada   y estableciendo relaciones entre las tablas/vistas a nivel de Power BI.

 

1.       Como primer paso debemos descargar la herramienta Power BI Desktop de forma gratuita desde este enlace aquí.

 ​​​PowerImgArt1.JPG

2.       Aquí se muestra las opciones y características generales del producto a descargar

PowerImgArt2.JPG
 

3.       Al descargarse el archivo seleccionado se procede a ejecutar el mismo para comenzar el proceso de instalación.
 PowerImgArt3.JPG

4.       Luego de culminar la instalación ejecutamos Power BI Desktop

PowerImgArt4.JPG
  

5.       Al culminar la carga de la aplicación debemos ver una pantalla similar a la siguiente


PowerImgArt5.JPG 

6.       El siguiente paso es iniciar sesión con nuestra cuenta de Power BI, para la cual debemos seleccionar alguno de los enlaces dentro del recuadro rojo de la imagen anterior. Luego de iniciar sesión seleccionamos la opción "Obtener datos" del recuadro amarillo para comenzar a trabajar con el nuevo reporte.
 

7.       Al seleccionar la opción de "Obtener datos" aparece la siguiente pantalla donde podemos ver la diversidad de orígenes de datos desde los cuales Power BI puede conectarse, como les indique anteriormente en este caso voy a utilizar una base de datos relacional en Azure SQL.

 PowerImgArt6.JPG

 8.       Procedemos a ingresar las credenciales solicitadas. Para este caso seleccionaré como modo de conectividad de datos a "DirectQuery" ya que voy a utilizar a Power BI como herramienta de reportes con consulta los datos en línea a la base de datos de Azure SQL.

PowerImgArt7.JPG
 

 

9.       Luego de ingresar las credenciales de acceso a la base de datos, podemos visualizar la siguiente pantalla con las tablas de la base de datos con las cuales podemos trabajar, para este artículo seleccionaré algunas de ellas para desarrollar los ejemplos de este artículo.
PowerImgArt8.JPG

 

10.   Al seleccionar cargar aparecerá la siguiente pantalla que indica que se están estableciendo las conexiones a los objetos de base de datos

 PowerImgArt9.JPG
 

11.   Luego de culminado el proceso vemos la siguiente pantalla al lado derecho donde están las tablas/vistas seleccionadas para el ejemplo de este artículo.

 PowerImgArt10.JPG


12.   Ahora nos dirigimos a la opción de menú "Inicio" y luego seleccionamos "Administrar relaciones".


PowerImgArt11.JPG
 

13.   En principio nos aparece la pantalla de "Administrar relaciones" sin elementos, procedemos a seleccionar "Nuevo"

 PowerImgArt12.JPG



 

14.   En la nueva pantalla seleccionamos las dos tablas/vistas que necesitamos relacionar, en nuestro caso seleccionamos en la parte primera parte la vista: "v_SG_RemisionesCabecera" que representa una tabla maestra que maneja registros llamados "remisiones" que tienen un campo clave identificador  "ID",  en la parte inferior seleccionamos la vista: "v_SG_RemisionesMaterialesItems" la cual representa una tabla de detalle de la primera vista. La relación sería desde el campo "ID" de la vista "V_SG_RemisionesCabecera" al campo "idRemision" de la vista "v_SG_RemisionesMaterialesItems". En Power BI se establecen las relaciones marcando la columnas que serán relacionadas, lo cual se evidencia en la imagen por ser las que están sombreadas,  por defecto Power BI tratará de establecer la relación por nombre de campos iguales, en nuestro caso seleccionó los campos "Comentarios" de ambas vistas pero esto es totalmente erróneo en esta situación. Adicionalmente existen algunas opciones que podemos seleccionar en la relación y que definen su comportamiento en Power BI, están resaltadas en los recuadros rojos.

 

    1. Activar esta relación: Power BI solo permite tener una relación activa entre dos tablas, para este caso la podemos dejar así.
    2. Asumir integridad referencia: Power BI valida que exista integridad referencial entre los campos de las vistas seleccionadas.
    3. Dirección del filtrado cruzado: Es una característica para poder habilitar el filtrado en los reportes en ambos lados de la relación, para nuestro caso de ejemplo lo podemos dejar así. Para mas información sobre este punto consulte aquí.

       PowerImgArt13.JPG


15.   Al seleccionar "Aceptar" la relación es creada a nivel de Power BI y se muestra de esta forma.

PowerImgArt14.JPG

 

16.   Una creada la relación  podemos ir a la zona de creación del reporte de Power BI y comenzar con el diseño del mismo. En la sección de "Visualizaciones" seleccionamos el control  "tabla" remarcado en el recuadro rojo, esto habilita ese objeto en la página del reporte como se muestra en el recuadro azul, al mismo tiempo podemos ver en el recuadro verde la vista con datos maestros con los campos que podemos seleccionar.

 PowerImgArt15.JPG

17.   Seleccionamos algunos campos de la vista maestro del recuadro rojo para que se muestren en el reporte como se puede ver en el recuadro azul.

 PowerImgArt16.JPG

 

18.   Ahora procederemos a incluir en el reporte registros de la vista detalle y así evidenciaremos el funcionamiento de la relación anteriormente establecida. Al hacer click en algún lugar sobre la página de diseño del reporte y repitiendo los pasos anteriores, seleccionamos un objeto tabla, se agrega el mismo en el reporte y seleccionamos algunos campos de la vista detalle.

 PowerImgArt17.JPG
 

19.   Adicional a los pasos anteriores para mostrar el funcionamiento de la relación agregamos un objeto de "segmentación de datos", asociado a la vista maestra: "v_SG_RemisionesCabecera", específicamente al campo "ID" para así mostrar el funcionamiento de la relación. Lo podemos ver en la imagen a continuación.

 PowerImgArt19.JPG
 

20.   Al seleccionar un valor "ID" en el objeto de segmentación de datos podemos ver que se actualizan los datos que se muestran en los objetos tablas, ya que esto es un filtro en el reporte sobre la vista cabecera, y se actualiza la visualización de la vista detalle por haber creado la relación en los pasos anteriores.

 PowerImgArt20.JPG



               Acabamos de mostrar en este paso a paso la forma de establecer una relación en Power BI y como se evidencia su funcionamiento al aplicar filtro sobre un reporte, ahora veremos el ejemplo de establecer dos relaciones entre dos tablas.

 

  1. Para este caso volvemos a ir a la opción de menú "Inicio" è"Administrar relaciones", podemos ver la relación actual del caso anterior e igualmente procedemos a seleccionar "Nuevo".

     PowerImgArt21.JPG

     
  2. En este caso usaremos la tabla "Sitios" cuyo campo clave  es "ID", esta se relaciona con la tabla "RemisionesSG" con los campos "idSitioOrigen" y "idSitioDestino", en este caso seleccionamos "idSitioOrigen". Al igual que el ejemplo anterior dejamos las mismas opciones de la relación seleccionadas y marcamos "Aceptar".

     PowerImgArt22.JPG

     
  3. Vemos que fue creada la nueva relación como fue configurada, ahora procederemos a configurar la nueva relación. Seleccionamos la opción "Nuevo"

    PowerImgArt23.JPG

     
  4. En este caso al seleccionar la tabla "Sitios" con el campo "ID" y la tabla "RemisionesSG" con el campo "idSitioDestino" y tratar de marcar la opción de "Activar esta relación" nos muestra un mensaje de advertencia. Power BI no permite tener más de una relación activa entre dos tablas, para este caso le desmarcaremos la opción de activar.

     PowerImgArt24.JPG


     
  5. Al desmarcar la opción "Activar esta relación" y presionar el botón de "Aceptar", se muestra la relación creada de forma inactiva.

     PowerImgArt25-A.JPG

     
  6. Para poder realizar consultas entre las tablas Sitios y RemisionesSG con la relación inactiva tendríamos que realizar consulta a nivel de código con la instrucción: USERELANTIONSHIP; sin embargo existe otro camino alterno para manejar esta situación, y es haciendo una copia de la tabla RemisionesSG como lo veremos a continuación. Vamos a la opción de menú "Inicio" y luego a "Editar consultas".

     PowerImgArt25.JPG

     
  7. Ahora aparece una nueva ventana de "Power Query" para editar las consultas en Power BI, como lo indica la imagen seleccionamos la tabla "RemisionesSG" y al hacer click en el botón secundario del mouse seleccionamos la opción "Duplicar".

     
    PowerImgArt26.JPG


     
  8. Al seguir estos pasos aparece una nueva tabla con el nombre RemisionesSG (2), al la cual le cambiamos el nombre al hacer click en el botón secundario del mouse y seleccionamos la opción de cambiar nombre por uno más descriptivo.

     PowerImgArt27.JPG

     
  9. En la imagen anterior seleccionamos la opción "Cerrar y aplicar" en la parte superior izquierda, lo que permite que se realicen los cambios necesarios en Power BI para habilitar la nueva tabla en la zona de creación de reportes como lo vemos a continuación.

     PowerImgArt28.JPG

     
  10. Ya con la nueva tabla "RemisionesSG_idSitioDestino", procedemos a ir nuevamente a la opción de menú "Inicio" è "Administrar relaciones" con el objetivo de crear la nueva relación entre las tablas Sitios y "RemisionesSG_idSitioDestino".

     PowerImgArt29.JPG


     
  11. Como podemos ver esta vez si podemos seleccionar "Activar esta relación", seleccionamos "Aceptar" y vemos como queda la pantalla final de relaciones del reporte.

     PowerImgArt30.JPG
     
  12. Ahora como parte final en la imagen a continuación aplicamos varios pasos para obtener una nueva vista de reporte, primero en el recuadro negro agregamos una nueva página al reporte, y luego repetimos varios de los pasos anteriores para agregar tres objetos "tabla" de Power BI para visualizar las tablas: Sitios, RemisionesSG y RemisionesSG_idSitioDestino, agregamos un objeto de segmentación de datos asociado a la tabla "Sitios", campo "ID" con el fin de ver el funcionamiento de las relaciones. En el recuadro rojo(objeto de segmentación de datos) seleccionamos el valor "2", e inmediatamente en las tablas resaltadas con los recuadros azules vemos que los valores se actualizan, mostrándose registros con el valor de "2" en las tres tablas del reporte, lo cual evidencia la existencia de las relaciones.

     PowerImgArt31.JPG

                Con este artículo se mostró de forma sencilla la creación de un reporte en Power BI, su conexión a una fuente de datos Azure SQL,  y el diseño de reportes basados en relaciones entre las tablas, con uno o varios campos involucrados.

​              Espero que este artículo les sea de utilidad, si quieren aprender más sobre desarrollo de aplicaciones, Power BI,  desarrollo en SharePoint o de SharePoint en general por favor visita nuestro site de Eigo Academy para conocer nuestra oferta de cursos.