Está en la página 1de 20

Guía de Ejercitación Intensivo Power BI

Tabla de Contenidos
Tabla de Contenidos ............................................................................................................................................. 1
Escenario ...................................................................................................................................................................3
Previo ........................................................................................................................................................................ 4
Extracción, Transformación y carga de datos.................................................................................................5
1. Extracción de datos Excel ......................................................................................................................5
2. Extracción de datos desde una BD para análisis ............................................................................5
3. Extracción de Archivos de texto para análisis ..................................................................................6
4. Extracción de archivos que conforman un conjunto de datos único .......................................7
5. Extracción de datos de Producto Geográfico per Cápita desde la Web .................................8
6. Extracción de datos de la UF (Web) ...................................................................................................9
7. Uso de parámetros en carga y transformación .............................................................................11
Modelación............................................................................................................................................................. 13
1. Conectando el modelo ........................................................................................................................ 13
2. Limpiando visualmente el modelo ................................................................................................... 14
3. Enriqueciendo la metadata de formato .......................................................................................... 14
4. Corrigiendo la agregación por defecto (Summarize) ................................................................. 15
5. Creando Jerarquías ............................................................................................................................... 16
6. Limpiando de tablas innecesarias ..................................................................................................... 16
7. Estudiando el efecto del Cross Filter Direction ............................................................................. 17
Visualización........................................................................................................................................................... 18
1. Preparación previa para usabilidad y apariencia profesional. .................................................. 18
2. Creación de tablas................................................................................................................................. 18
3. Creación de Gráficos de barra, líneas y tortas. Modificación de interacciones. .................. 19
4. Importación de Custom Visuals ........................................................................................................ 20
5. Seguridad a Nivel de Fila (Row Level Security) ............................................................................ 20

Página | 2
Escenario
El escenario sobre el cual realizaremos la ejercitación con Power BI es el de una
empresa llamada AdventureWorks, la cual fabrica bicicletas, accesorios y ropa deportiva
para ciclistas. Esta empresa requiere realizar análisis, principalmente de ventas.
Actualmente utilizan solamente Excel para sus reportes, lo que les significa un esfuerzo
considerable de integración de datos cada vez que tienen que emitir reportes, lo que
hacen semanalmente.
Los analistas ya están aburridos del Excel, con su capacidad limitada de generación de
vistas interactivas y de facilitar el descubrimiento de patrones y relaciones interesantes
entre los datos.
La ejercitación está diseñada para que quien la realice tenga la experiencia de
comienzo a fin con Power BI, lo que incluye extracción, transformación, carga,
modelación, creación de cálculos, visualización y distribución de datos para la toma de
decisiones organizacional.
El resultado final es un reporte Power BI a todo color, con visualizaciones interesantes,
publicado en la nube, accesible por el usuario mediante una cuenta grauita.

Página | 3
Previo
Los datos de ejemplo del curso están en la siguiente URL:
https://goo.gl/f8JNRn

Página | 4
Extracción, Transformación y carga de datos
En esta sección haremos ejercicios cuya finalidad es obtener y preparar datos que
utilizaremos para nuestro posterior modelo de datos en Power BI.

1. Extracción de datos Excel


Este ejercicio considera un archivo Excel con varias hojas. Gran parte de los datos que
utilizaremos serán extraidos desde esta fuente de datos.
a. En Power BI haga click en “Get Data”, y seleccione “Excel”
b. Aparecerá un listado de tablas y de hojas . Seleccione las siguientes tablas:
a. Productos
b. CatProductos
c. SubCatProductos
Presione OK

2. Extracción de datos desde una BD para análisis


Este ejercicio considera una BD Azure SQL Server, cuya localización y credenciales de
acceso serán proporcionadas por el profesor. Algunos de los datos que utilizaremos
serán extraidos desde esta fuente de datos.
c. En Power BI haba click en “Get Data”, y seleccione “Azure SQL Database”
d. Aparecerá una ventana en donde escribir el nombre del servidor y el nombre de la base
de datos. El profesor proveerá el nombre del servidor, mientras que la bd se llama
AdventureWorksDW2014. El modo de conectividad (Data Connectivity Mode) debe
dejarse en “Import”. Haga click en OK.
e. En la siguiente ventana debe ingresar las credenciales que el profesor le proveerá,
fijándose que al lado izquierdo esté seleccionado el menú “Database”. Haga click en
“Connect”
f. Aparecerá un listado de tablas. Seleccione las siguientes:
a. DimDate
b. DimCustomer
c. DimGeography
Presione OK

Página | 5
3. Extracción de Archivos de texto para análisis
Este ejercicio consiste en la carga de datos de distintos archivos de texto, cada uno de
los cuales constituirá una “Query” (consulta) en el Query Editor de consultas de Power
BI.
a. Copie toda la carpeta “textos” dentro de “datos” desde la url al disco de su computador,
recuerde la ruta en donde dejó la carpeta.
b. Revise su configuración regional: Vaya a menú File  Options and Settings  Options
 Regional Settings (bajo sección CURRENT FILE) y revise el valor fijado. Si dice “English
(United States)”, entonces el editor de queries habrá interpretado la coma decimal como
el separador de miles, y probablemente su paso “Changed Type” muestra las columnas
con cifras monetarias como números enormes. Este parámetro se llama el “Locale”.
c. Cambie el Locale a “Spanish (Chile)” y haga click en OK.
d. Con Power BI, haga click en “Get Data”, elija “Text/CSV” y posteriormente, en la ventana
de selección de archivos, navegue hacia la carpeta “textos” y seleccione el archivo
“InternetSales.txt”
e. En la ventana siguiente fíjese en cómo están desplegados los nombres de Producto en
francés. Verá que hay caracteres raros. Esto significa que el encoding (codificación) puede
no ser el correcto. Efectivamente, debe modificar la codificación propuesta por Power BI
a “65001: Unicode UTF-8”. Cuando lo haga, verá que los caracteres especiales del francés
y español se verán correctamente.
f. El delimitador que aparece el “Tab”. Pruebe cambiándolo y viendo el efecto. Vuelva al
Tab para poder seguir.
g. Donde dice “Data Type Detection” haga click para ver las opciones disponibles. Aquí
configuramos si no queremos que Power BI trate de detectar los tipos de datos de las
columnas, o si queremos, en base a cuántas filas leídas queremos que haga la detección.
Deje la opción “Based on first 200 rows”
h. Presione “Edit” (Editar). Aparecerá la ventana del Query Editor (Editor de consultas)
i. Verá que aparecen los datos que el editor de consultas interpretó según la configuración
definida en los pasos anteriores para el archivo. Al lado derecho de los datos, verá una
sección llamada “Query Settings”. En ella verá una sub sección llamada “Applied Steps”,
que indica los pasos de transformación de datos que el editor de consultas ya aplicó
sobre los datos provenientes desde el archivo InternetSales.txt.
j. Elimine el paso “Changed Type” haciendo click en la “X” roja.
k. Ahora importe el archivo Clientes.txt. Recuerde configurar la codificación UTF-8 en la
ventana de vista previa. Todavía no importe los archivos dentro de la subcarpeta
“exchange rates”.

Página | 6
4. Extracción de archivos que conforman un conjunto de datos
único
Este ejercicio consiste en la carga de datos de varios archivos de distinto nombre, pero
idéntica estructura interna. Todos los archivos pasarán a ser parte de una sola query en
el editor de consultas.
a. Abra “Get Data” y seleccione “Folder”.
b. Seleccione la carpeta “exchange rates”.
c. Se mostrará una vista previa de los datos. Fíjese que no verá los datos mismos de los
archivos, sino que datos de los contenidos de la carpeta que acaba de abrir.
d. No haga click en “Combine”. Es muy fome. Lo haremos a mano. Haga click en “Edit”
e. Verá que en el editor de queries aparecerá una carpeta con unos contenidos. Esto es
normal en el caso de importación de carpetas.
f. El resto de sus consultas quedará en una carpeta llamada “Other Queries”. Entre ellas
aparecerá la query que representa los datos que le fueron presentados en el paso
anterior, bajo el nombre “exchange rates”. Esta query tiene la metadata de los archivos
del directorio, y en particular, una primera columna llamada “Content”.
g. Haga click en la zona amarilla que dice “Binary” de la primera fila de la columna “content”.
Cuando lo haga, se realizarán varios pasos, lo que podrá corroborar en la zona “Applied
Steps” a la derecha de la ventana del editor de queries. El efecto final es que usted está
viendo el contenido del archivo que representaba la primera fila de la query anterior,
correspondiente al “Argentinian Peso”.
h. La query Exchange rates se convirtió finalmente en los datos del primer archivo, lo que
no es nuestro objetivo. Para volver a lo que teníamos anteriormente, deshaga los pasos
realizados en orden desde el último hacia arriba, haciendo click en las “X” en la zona
“applied steps”, pero deje intacto el paso “Source”, que es el primero. El efecto de hacer
esto es que usted efectivamente echó para atrás los pasos de transformación de su query.
Debería ver nuevamente la columna “Content”.
i. Haga click en el pequeño botón con dos flechas verticales dirigidas hacia abajo, el cual
aparece al lado derecho en el nombre de la columna “Content”. Aparecerá una ventana
similar a la que aparece cuando se va a realizar la extracción de datos desde un archivo
de texto, con similares consideraciones (ver ejercicio 1), con la diferencia de que se puede
basar el examen de los datos en el primer archivo “First File” o en cualquier archivo
particular de la carpeta.
j. Haga click en OK. El efecto de esto es que la query “exchange rates” contendrá los datos
combinados de todos los archivos de la carpeta, cosa que queríamos lograr.

Página | 7
5. Extracción de datos de Producto Geográfico per Cápita desde la
Web
Cuando estemos haciendo nuestro reporte, querremos comparar las ventas por país de
una manera que nos permita rankear los equipos de venta con justicia. Las ventas
simples por país no nos permiten eso, porque naturalmente en USA se venderá más,
pro el tamaño del país. Entonces, queremos corregir la venta por poder de compra, lo
que sería un indicador justo. Si usted es economista y cuestiona la validez de este
indicador, relájese, que sólo lo usaremos para fines pedagógicos.
a. Abra la siguiente URL en su navegador de internet favorito y examine la página:
https://en.wikipedia.org/wiki/List_of_countries_by_GDP_(PPP)_per_capita
b. En Power BI haga click en “Get Data” y seleccione submenú “Other” y después “Web”.
c. Aparecerá un cuadro de diálogo en donde usted debe que copiar la URL mencionada
anteriormente. Después de hacer click en “OK”, aparecerá una ventana en cuyo lado
izquierdo aparece un listado de objetos, dentro de la cual encontrará uno llamado “Table
1”. Selecciónelo y verá que aparece una tabla al lado derecho. Haga click en “OK” para
pasar al editor de consultas.
d. Verá una nueva consulta llamada “Table 1”. Cámbiele el nombre, editando el texto
correspondiente en la sección “Query Settings” al lado derecho en la ventana del editor
de consultas. Póngale un nombre inspirador como “TablaGDP”. Ahora miremos los datos.
e. Verá que hay 3 columnas de datos, de las cuales la primera no es relevante para nosotros.
Dese el gusto de eliminarla.
f. Revise la columna con los montos. Si ud ya hizo el ejercicio 1, entonces la configuración
de su Locale es “Spanish (Chile)”, y acá tendremos un problema de detección de tipo de
dato, porque la columna “Int$” (aproveche de cambiarle el nombre a “GDP”) seguramente
fue detectada como número decimal, pero en realidad la coma es el separador de miles,
de acuerdo a cómo están representados los números en el sitio de Wikipedia.
g. Para corregir lo anterior, elimine el paso “Changed Type” y reinterprete el número como
“Whole Number”… ¿le fue bien o huele algo raro?
h. Efectivamente, la coma se está interpretando como la coma decimal. Para corregir esto
vuelva a elimiar el paso “Changed Type” y ahora lo hará un poco distinto: Seleccione el
tipo de dato del campo “GDP” y mire al final del menú desplegable, donde dice “Using
Locale”.
i. En el cuadro de diálogo que apareció, seleccione “Whole Number”, y aquí viene la
magia… en el cuadro desplegable “Locale”, seleccione “English (US)”. Lo que usted hizo
es pedirle al editor de queries que interprete el número de acuerdo a un Locale específico.
Y esto tiene mucho sentido cuando dentro de la generalidad de nuestros datos tenemos
por ahí un par de casos particulares, justamente como este. Casi todas sus fuentes de
datos pueden seguir una convención, pero podrá haber otra por ahí con una convención
distinta, por lo que cambiar el Locale del archivo Power BI no valdrá la pena.

Página | 8
j. Revise que ahora el GDP aparece representado como número entero, sin comas. Fíjese
también que el paso recién creado se llama “Changed Columns with locale”. Estamos
listos.

6. Extracción de datos de la UF (Web)


Este ejercicio consiste en la extracción de datos desde la Web. Lo interesante en este
caso es que los datos están separados en distintas tablas, lo que implica un trabajo de
unión, y además los datos vienen pivoteados, como tabla de doble entrada, lo que
normalmente es un problema.
a. Abra el siguiente link en su navegador:
http://www.sii.cl/valores_y_fechas/uf/uf2013.htm
b. En Power BI haga click en “Get Data” y seleccione submenú “Other” y después “Web” al
lado derecho.
c. Aparecerá un cuadro de diálogo en donde usted debe que copiar la URL mencionada
anteriormente. Después de hacer click en “OK”, aparecerá una ventana en cuyo lado
izquierdo aparece un listado de objetos, dentro de la cual encontrará tablas con nombres
desde “Table 0” a “Table 11”. Selecciónelas y verá que cada tabla representa los datos e 1
mes. Haga click en “OK” para pasar al editor de consultas.
d. Verá nuevas consultas desde “Table 0” hasta “Table 11”. Selecciónelas todas con
Shift+Click derecho y “Move To Group”. Con esto creará un grupo de consultas, y llámele
“Preparación UF”.
e. En el menú HomeAppend Queries, seleccione “Append Queries as New”, con lo que
aparecerá un cuadro de diálogo, en donde debe seleccionar la opción “Three or more
tables”, y podrá seleccionar todas las consultas correspondientes. Al completar la
operación se generará una consulta nueva con todos los datos de las 12 anteriores.
Cámbiele el nombre a MezclaUF.
f. Fíjese que las columnas de meses con datos estén detectadas como números decimales
(ícono “1.2”). Los números tienen 2 decimales después de la coma, y donde no hay valores
está escrito el valor “null”. Si ve todo esto, estamos bien. Si aparecen columnas sin valores,
estas serán interpretadas como texto, con ícono “ABC”. A todas las columnas vacías
cámbieles el tipo de dato a número decimal. Como resultado, debería ver valores “null”
en vez de vacíos.
g. La tabla MezclaUF tiene 3 pares de columnas cuyos datos en realidad quisiéramos ver en
sólo un par de columas, y esto es debido a cómo los datos estaban presentes en el origen.
Un Append inteligentemente hecho lo resolvería. Para esto crearemos 3 consultas como
referencias de la tabla MezclaUF: ValorUF_1, ValorUF_2 y ValorUF_3.
h. A ValorUF_1 le eliminamos el segundo y tercer par de columnas. A ValorUF2 el primer y
tercero, y a ValorUF3 el primero y segundo. Posteriormente en cada caso renombramos
cada para como “Dia” y “UF”, para finalmente hacer un Append de las 23 consultas, el
cual llamaremos “UF”

Página | 9
i. Tanto MezclaUF como las ValorUF_X las dejamos en el grupo “Preparación UF”. A todas
las consultas de este grupo les eliminamos la selección de la casilla de verificación “Enable
Load”, de manera que posteriormente no aparezcan en el modelo de datos del reporte.
j. Recordando que nuestro objetivo es tener fecha y monto, lo que tenemos ahora se
aproxima, pero todavía no es exactamente eso. Tenemos que convertir de alguna manera
los datos que tenemos en una columna de tipo Fecha. Para eso vamos a aprovecharnos
de que el editor de consultas puede interpretar un texto como una fecha, si sigue un
formato específico. Entonces, primero vamos a crear ese texto. Vaya al menú Add Column
y seleccione “Custom Column”
k. En el diálogo que va a aparecer, escriba “Año” en el cuadro para el nombre. En el cuadro
para la fórmula, asegúrese de que quede como “= 2013”, y presione “OK”.
l. Reordene las columnas arrastrando sus nombres hacia los lados, para que las columnas
que conforman la fecha queden en siguiente orden de izquierda a derecha: MES-DIA-
AÑO
m. Ahora seleccione las 3 columnas de la fecha (CTROL-Click) y en el menú “Transform”
seleccione la opción “Merge Columns”. Ojo que también encontrará una opción idéntica
en el menú “Add Column” ¿por qué?... Volviendo a lo anterior, aparecerá un cuadro de
diálogo que le permitirá seleccionar un separador de los campos, ninguno, o uno
“Custom”. Elija “Custom” y en el cuadro que aparecerá escriba un signo menos “-“. Más
abajo escriba “Fecha” o algo así. Aprete “OK”
n. Una vez hechos lo anterior, haga click sobre el tipo de dato de la columna (a la izquierda
de su nombre) y seleccione “Date”. Si todo funcionó bien, entonces ahora debería ver su
columna en formato fecha, con el texto en itálica, por ejemplo: 01-02-2017.

Página | 10
7. Uso de parámetros en carga y transformación
Si hizo el ejercicio 6, se dará cuenta de que al año siguiente va a tener que modificar el
origen de datos para poder cargar los valores de la UF del 2014. Aunque sea una vez al
año, implica un trabajo manual que podría ser olvidado, y más grave aun, podría tener
que realizarlo en varios reportes Power BI. Al menos, podría ser algo más simple que
cambiar el origen de datos a mano, ¿no? Afortunadamente, los desarrolladores de
Power BI ya crearon la posibilidad de utilizar parámetros, poderosa característica con la
cual, entre otras cosas, podremos solucionar el tema de la página de la UF.
a. Primero vamos a crear un parámetro llamado “Año”. Este parámetro será utilizado para
que carguemos la página web correcta de la UF mediante hacer que la URL sea dinámica.
Vaya al menú “Home”, opción “Manage Parameters” y seleccione “New Parameter”.
b. En el cuadro de diálogo que aparecerá, póngale nombre “Año”, en “Type”, seleccione
“Text”. En “Suggested Values” seleccione “List of Values” y escriba 2012, 2013 y 2014. Más
abajo, en “Default Value”, seleccione 2014, y para “Current Value” escriba 2013.
c. Fíjese que en la lista de consultas a lado izquierdo, verá un ícono distinto al de las otras
consultas, que dice “Año(2013)”. Cuando haga click en el parámetro, en el centro verá que
puede escribir o seleccionar un valor. Ha creado su primer parámetro.
d. Ahora vamos a utilizar efectivamente nuestro primer parámetro. Vaya al menú “Home”
 “Data Source Settings”. En el listado que aparecerá, seleccione el origen de datos
correspondiente a la URL de la UF, y aprete el botón “Change Source”.
e. Aparecerá el cuadro con la URL, y verá que a la izquierda del texto aparece una lista
desplegable con las opciones “Text”, “Parameter” y “New Parameter”. También verá que
hay un cuadro de lista “Open File as” con un listado de formatos posibles. Eso puede
servir cuando su URL apunta directamente a un formato como los listados, en vez de una
página html. Haga click en la opción “Advanced” que aparece por encima del texto del a
URL.
f. El cuadro se amplió. Ahora usted podrá definir su URL a pedacitos en la sección “URL
Parts”. Actualmente aparece su URL arriba, y verá una segunda línea vacía, ¿cierto? Y verá
que cada parte puede ser asociada a un parámetro. Nuestro parámetro es el año y, por
su parte, el año en la URL está en medio. Quisiéramos que solamente esa parte de la URL
se asociara a nuestro parámetro, y el resto siempre se mantuviera fijo (o hasta que al SII
se le ocurra cambiar su sitio web, y ahí nos echa a perder el ejemplo…):

http://www.sii.cl/pagina/valores/uf/uf 2014 .htm

Siempre igual Variable Siempre igual

Página | 11
g. Haga click en “Add part” para que hayan 3 partes. En la primera dejemos la primera parte,
en la segunda configuremos para que ahí vaya el parámetro “Año” y en la tercera parte
pegamos el texto que va después del año, tal como la figura anterior. Si todo está bien
configurado, en la zona “URL Preview” debería ver lo siguiente:
http://www.sii.cl/pagina/valores/uf/uf{Año}.htm
h. Haga “Close & Apply” y vaya a mirar sus datos en la vista de tablas de Power BI. ¿todo
bien?... tómese un minuto revisar.
i. Ok, veamos… claramente sale todavía 2013 como el año en los datos. La razón de esto
está en el paso k del ejercicio 6.
j. En la consulta “UF” cambiemos la definición de la columna “Año”. Hum, pero esa columna
ya no existe. ¿qué hacemos?... Recuerde que puede navegar los pasos de transformación
de una consulta. Vaya al paso “Added Column” y haga click en el ícono del engranaje al
lado derecho. Ahí podrá configurar la creación de la columna. Reemplace el 2013 por
“@Año”.
k. Repita el paso h.

Página | 12
Modelación
En esta sección nos basaremos en los resultados de la sección anterior y crearemos un
modelo de datos que permitirá cubrir nuestras necesidades de visualización. Esto
contempla tablas relacionadas, columnas innecesarias escondidas del usuario final, con
jerarquías, columnas calculadas, medidas, tablas escondidas, etc.

1. Conectando el modelo
Vamos a generar las relaciones entre las tablas que permitirán que los datos se filtren y
crucen de manera correcta, según la lógica del negocio.
a. En la vista de modelo de la ventana de Power BI, revise las tablas creadas.
b. El modelo original de base de datos desde el que se crearon los archivos de texto es el
siguiente. Fíjese en las relaciones entre las tablas:

c. Ahora conectemos la tabla “InternetSales” con la tabla “Fechas”. Hay 3 posibilidades de


conexión, y en realidad las haremos todas. “Internetsales” tiene OrderDateKey,
DueDateKey y ShipDateKey. La llave de “Fechas” es DateKey. Conecte cada una de las
columnas mencionadas de InternetSales hacia Fechas. Se generarán 3 relaciones en el
modelo y deberemos escoger cuál es la relación activa. Como nuestro interés es analizar
por la fecha de la orden, entonces la relación en que OrderDateKey esté involucrada debe
quedar activa.
d. Conecte InternetSales – Productos – SubCatproductos – CatProductos
e. La tabla de la UF no tiene sentido de negocio en este modelo, pero fue tan linda de crear,
¿cierto?. Igual la puede conectar a la tabla de Fechas, pero ojo que no por la llave. ¿por
qué?...

Página | 13
f. Conecte InternetSales – clientes – Geografia - GDP.
g. Conecte InternetSales – Monedas – ExchangeRates
h. Conecte Fechas – ExchangeRates
i. Vuelva a mirar el diagrama del punto b. Fíjese en que se están representando relaciones
1:N con el lado “1” como una llavecita y el “N” como un símbolo de infinito. Ahora mire el
modelo que usted conectó en Power BI. Fíjese en los dibujos triangulares que aparecen
en las líneas de las relaciones. Esos dibujos representan la dirección de filtrado cruzado o
“Cross filter Direction”, el cual puede ser “Single” o “Both”. Cuando una relación es 1:N, y
seleccionamos “Single”, los filtros aplicados sobre el lado 1 de la relación son difundidos
hacia el lado N, pero no al revés. Con “Both”, los filtros aplicados en el lado N son
difundidos al lado 1 además.

2. Limpiando visualmente el modelo


Si por un momento nos sacamos el sombrero de modeladores y nos ponemos el de
usuario final, encontraremos que hay columnas de las tablas que eventualmente nunca
utilizaremos para fin analítico alguno, como las llaves de las tablas, por ejemplo, las
cuales son vitales para conectar las tablas, pero nunca son usadas explícitamente para
visualizar. A su vez, nos aseguraremos de que
a. Hagámosle un favor al usuario final y escondamos todas las llaves de las tablas, y también
las llaves foráneas. Haga click en una columna de una tabla en la vista modelo (por
ejemplo, DateKey de la tabla Fechas), y seleccione “Hide in report view”.
b. Pase a la vista de tablas y revise las tablas. Fíjese que las columnas escondidas están con
un color más suaves.
c. Pase a la vista de reporte, y verá que… ¡no están! Pero eso es bueno. ¿Se fija que ahora
el modelo es más limpio para el usuario final, sólo mostrándole

3. Enriqueciendo la metadata de formato


Una ventaja de Power BI sobre Excel y sus tablas dinámicas es que nosotros podemos
definir cierta información de formato en el modelo de datos. Por ejemplo, si un valor es
moneda, lo podemos definir como tal en el modelo, con lo que todas las visualizaciones
lo mostrarán con signo de moneda.
a. Vamos a centrarnos en la tabla InternetSales. Aquí hay varias columnas que deberían
representarse como moneda (Currency). Modifíquelas para reflejar esto. Por ejemplo:
SalesAmount

Página | 14
4. Corrigiendo la agregación por defecto (Summarize)
Power BI automáticamente decide que ciertas columnas de una tabla son candidatas a
mostrarse resumidas mediante alguna función de agregación. Eso explica los signos de
sumatoria 𝛴 al lado del nombre de las columnas. Eso tiene el efecto de que cuando
muestro una columna agregada con otra no agregada en una visualización, Power BI
calcula la agregación y agrupa por la columna no agregada. Queremos que el
comportamiento por defecto de esto esté bien definido.
a. Ubique en las tablas del modelo las columnas que se agregan, pero no deberían. Haga
click sobre ellas. En el menú “Format”, seleccione “Default Summarization: Don’t
Summarize”.
b. Ojo, que la agregación por defecto es simplemente la primera opción se agregación que
Power BI asume para la columna cuando estoy creando visualizaciones. Esto se puede
cambiar al momento de utilizar la columna.

Página | 15
5. Creando Jerarquías
En Power BI podemos crear Jerarquías, es decir, la definición de agrupaciones anidadas
entre columnas de una tabla. Por ejemplo: Año-Semestre-mes, Año-mes, Categoría-
subcategoría-Producto, etc. Son utilizadas en operaciones de Drill Down de objetos
gráficos. Esto es similar a lo que se hace a mano en las tablas dinámicas de Excel, lo que
permite hacer drill down. Pero acá se puede dejar predefinido para facilitarle la vida a
nuestro amigo el usuario con el drill down en distintas visualizaciones como gráficos de
barra, por ejemplo.
a. En la tabla de Fechas cree las siguientes jerarquías
a. CalendarYear – CalendarQuarter – EnglishMonthName
b. CalendarYear – EnglishMonthName
b. En la tabla Productos cree la siguiente jerarquía
a. EnglishCategoryName-EnglishSubCategoryName-EnglishProductName
b. ¿cómo le fue?... ¿o no le fue?
c. Ok, aquí haremos uso de un poquito del poderoso lenguaje de Power BI para
cálculos de distinta complejidad, llamado DAX.
d. Vaya a la vista de tablas y seleccione la tabla Productos. En el menú “Modeling”,
vaya a “New Column” y cree una nueva columna, ingresando la siguiente formula:
subcat = RELATED(subcatproductos[EnglishProductSubcategoryName])
e. Repita el paso anterior con la siguiente fórmula:
cat = RELATED(catproductos[EnglishProductCategoryName])
f. Felicitaciones. Acaba de encontrar un análogo DAX al BUSCARV() de Excel. Si es
su primera vez, atesore este momento.
g. Ahora que tiene las 3 columnas de la jerarquía, puede repetir el paso a.
h. Ya que estamos en esta, aproveche de crear la Jerarquía cat-subcat (sin producto)
i. Oiga… ahora que tiene el nombre de la categoría y subcategoría en la tabla de
producto… ¿para qué le servirían al usuario las otras dos tablas?

6. Limpiando de tablas innecesarias


¿Vio la quemante pregunta que le hice al final del ejercicio anterior? Bueno. Si una tabla
sirve para la modelación, pero ya no es práctica desde el punto de vista del usuario
final, podemos esconderla completa
a. En la vista de modelo, haga click derecho sobre las tablas de categoría y subcategoría de
productos, y escóndalas. Aquí los sentimientos de las tablas no valen.

Página | 16
7. Estudiando el efecto del Cross Filter Direction
El Cross Filter Direction es una opción de la configuración de las relaciones en el
modelo de datos, la cual define cómo el filtrado que afecta a una tabla afectará a la
otra tabla en una relación. Cuando el CFD es “Single”, el efecto del filtrado se propaga
desde la tabla del lado “1” de la relación hacia la tabla con el lado “N”, pero no al revés.
Si es “Both”, se propaga en ambas direcciones, de manera que el efecto de filtrar la
tabla en el lado “N” se propaga al lado “1” de la relación. Manos a la obra.
a. En la vista reporte, cree una tabla de tipo “Matrix”
b. Agregue EnglishEducation(Clientes) y CalendarYear(fechas) a la sección “Rows”
c. Agregue la suma del SalesAmount(InternetSales) y el Count Distinct del ModelName
(productos) a la sección “Values”
d. Fíjese en la columna con el conteo del ModelName. ¿Le cuadra?
e. Ahora vaya a la vista de modelo y cambie el Cross Filter Direction de la relación entre las
tablas InternetSales y Productos desde “Single” hasta “Both”
f. Reflexiones sobre el por qué del cambio.

Página | 17
Visualización
Por fin llegamos a la Visualización, que es uno de los dos objetivos de la reportería en
general (el otro es la distribución de información) y en el cual Power BI es bastante
atractivo como herramienta. Aquí realizaremos algunas labores previas para darle
apariencia y funcionalidad profesional a un reporte, crearemos algunos gráficos y tablas
típicos, importaremos visualizaciones nuevas, jugaremos con la interacción entre
gráficos, jugaremos con la seguridad a nivel de fila (“row level security”)

1. Preparación previa para usabilidad y apariencia profesional.


Crearemos una zona de filtros básica en la hoja y la replicaremos para tener varias
hojas similares.
a. En la vista Reporte, menú “Home”, elija “Shapes” y haga click en “line”.
b. Cree una línea vertical que separe la hoja en dos zonas. La de la izquierda que ocupe a
lo más un 20% de la hoja.
c. En la vista Reporte, menú “Home”, elija “Shapes” y haga click en “Image”. Seleccione el
archivo “AdventureWorks-Logo_blog.jpg” e insértelo en la esquina superior izquierda
d. Agregue 2 “slicers”: CalendarYear y EnglishMonthName en la zona de la izquierda, bajo
el logo. Configúrelos para mostrar los datos en modalidad “DropDown”
e. Haga click derecho en la pestaña inferior que dice “Page 1” y elija “Duplicate Page”. De
esta manera podrá copiarla replicando un conjunto de objetos que querrá conservar en
otras páginas.
f. Disfrute.

2. Creación de tablas
Crearemos una tabla y una matriz para visualizar datos.
a. En la Hoja 1 cree una tabla que tenga EnglishCountryRegionName, City y suma de
SalesAmount
b. Al lado cree una matriz que muestre.
a. Rows: EnglishOccupation e EnglishProductCategoryName
b. Columns: Marital Status y HouseOwnerFlag
c. Values: suma del SalesAmount
c. Observe las opciones que la matriz da para Drill Down. Juegue un poco con ellas.

Página | 18
3. Creación de Gráficos de barra, líneas y tortas. Modificación de
interacciones.
Crearemos algunos gráficos y modificaremos la manera en que interactúan entre sí.
a. En una hoja nueva a partir de la plantilla creada para el primer ejercicio, cree los siguientes
gráficos:
a. Barras Horizontales con suma de SalesAmount por EnglishCountryRegionName
b. Líneas con suma de SalesAmount por FullDateAlternateKey
c. Barras apilada al 100% con suma de SalesAmount por FullDateAlternateKey, con
EnglishOccupation como leyenda.
d. Torta de suma SalesAmount por CommuteDistance
e. Torta de suma de SalesAmount por EnglishEducation
b. Ahora haga click en el gráfico de barras de ventas por país. Haga click en cualquier barra
de país para observar cómo el resto de los gráficos reacciona.
c. Con el gráfico de barras por país seleccionado, vaya al menú “Format”, y haga click en
“Edit Interactions”. Vea que en los gráficos aparecen unos botones nuevos en la parte
superior derecha. Fíjese en los gráficos de torta y haga click en los distintos botones
nuevos, sin dejar de tener el gráfico de barras seleccionado.
d. Reflexione.

Página | 19
4. Importación de Custom Visuals
Importaremos un filtro jerárquico.
a. Haga click en el menú HomeFrom Store
b. En la ventana que aparecerá, filtre por “Filters”, encuentre “HierarchySlicer” y haga click
en Add.
c. Este slicer permite utilizar jerarquías. Utilice la jerarquía de Categoría – Subcategoría de
productos. Colóquelo dentro del área de filtros de la página.

5. Seguridad a Nivel de Fila (Row Level Security)


Esta característica es espectacular cuando de filtrar los datos según quién los está
viendo es una necesidad.
a. Haga click en el menú ModelingManage Roles
b. Cree un rol llamado “Americanos”. Posteriormente haga click en el menú de puntos
suspensivos al lado derecho de geografía, seleccione “Add Filter”,
EnglishCountryRegionName, y finalmente en el cuadro de la derecha, escriba lo siguiente:
OR([EnglishCountryRegionName] = "United States",
[EnglishCountryRegionName] = "Canada")
c. Repita el paso anterior, para sendos roles “Europa” y “Otros”, ampliando la fórmula
correspondiente al nombre de los países que correspondan.
d. Haga click en “Save” para volver a la vista Reporte. Haga click en “View as Roles”,
seleccione un rol, apreté OK y observe lo que pasa. Repita para el resto de los roles.
e. ¿Se fija que creamos una condición relativamente simple para definir el filtrado a priori
de los datos según el rol?

Página | 20

También podría gustarte