En la entrada anterior avanzamos una buena parte de las opciones que nos ofrece Power Query, desde los menús de transformaciones, en concreto las desplegadas bajo los menús del ribbon ‘Home‘ y ‘Transform‘. En esta entrada veremos las opciones disponibles bajo los menus ‘Add Column’ y ‘View’ (Power Query Transformaciones).

Power Query transformaciones en el Menu ‘Add Column’

addcolumn1 addcolumn2

Grupo de opciones ‘General’: permiten realizar operaciones habituales a la hora de agregar nuevas columnas.

  • Add Custom Column: permite crear columnas personalizadas, basadas en expresiones en Lenguaje M. Es una opción avanzada que no trataremos por el momento.
  • Add Index Column: permite añadir una columna de índice, es decir, una columna, que empieza por el número cero y va asignando un número incremental a cada fila (es un autonumérico).
  • Duplicate Column: hace una copia de la columna seleccionada manteniendo los mismos valores para sus filas.

Los grupos ‘From Text’, ‘From Number’ y ‘From Date & Time’ ya han sido explicados anteriormente y se incluyen aquí también por usabilidad, evitando que tengamos que estar cambiando de menú con mayor frecuencia.

view

Grupo de opciones ‘Show’: permiten modificar ciertas configuraciones, mostrarlas y eliminarlas.

  • Query Settings: muestra u oculta la ventana ‘Query Settings’ que aparece en la parte derecha de la ventana del ‘Query Editor’.
  • Advanced Editor: el editor avanzado muestra todos los pasos de la consulta actual en Lenguaje M.
  • Formula Bar: muestra u oculta la barra de fórmulas (similar a la que tiene Excel para escribir las fórmulas).

formulas

Power Query transformaciones y lenguaje M

Cada uno de los pasos que vamos definiendo para la obtención de datos y su posterior transformación, genera internamente una serie de expresiones en Lenguaje M, por tanto todo lo que vamos haciendo de forma visual aplicando transformaciones y demás, se podría hacer también escribiendo expresiones en Lenguaje M. Por ahora vamos a seguir trabajando sólo de forma visual, creando transformaciones con las opciones de menú que hemos estudiado, pero sí que dejaremos una imagen de qué se está generando por debajo para darle a conocer que ese código, si estudia dicho lenguaje lo podrá modificar directamente:

appliedsteps

 

Power Query transformaciones desde los menús contextuales

Muchas de estas opciones están también disponibles en los menús contextuales, y aparecerán o no en función del lugar donde hagamos clic y mostremos el menú. Aquí tiene una imagen de ejemplo:

opcionesview

Finalmente, veremos un ejemplo de uso en el que iremos realizando algunas transformaciones paso a paso.

  1. Nos conectamos a SQL Server, a la base de datos ‘TBI01_Origen’
  2. Obtenemos los datos de la tabla ‘Tiendas’
  3. Ya en el ‘Query Editor’ eliminamos las columnas ‘MovimientosTiendas’, ‘Presupuestos’ y ‘VentasCAB’, mediante la opción ‘Remove Columns’.
  4. Vemos que en la columna ‘CodigosPostales’ aparece un símbolo diferente y en sus filas aparece la palabra ‘Value’, esto nos indica que es una tabla relacionada de la que podemos ir extrayendo columnas. Hacemos clic en , seleccionamos las columnas ‘CodioPostal’ y ‘Poblaciones’ y pulsamos ‘OK’.
  5. Hacemos clic en , seleccionamos las columnas ‘Poblacion’ y ‘Provincias’ y pulsamos ‘OK’.
  6. Hacemos clic en , seleccionamos las columnas ‘Provincia’ y ‘Paises’ y pulsamos ‘OK’.
  7. Hacemos clic en , seleccionamos las columnas ‘Poblacion’ y ‘Provincias’ y pulsamos ‘OK’.
  8. Hacemos clic en , seleccionamos la columna ‘Pais’ y pulsamos ‘OK’.
  9. Eliminamos la columna ‘CodigosPostales.CodioPostal’.
  10. Renombramos la columna ‘CodigosPostales.Poblaciones.Poblacion’ como ‘Poblacion’.
  11. Renombramos la columna ‘CodigosPostales.Poblaciones.Provincias.Provincia’ como ‘Provincia’.
  12. Renombramos la columna ‘CodigosPostales.Poblaciones.Provincias.Paises.Pais’ como ‘Pais’.

Hemos conseguido obtener en una sola tabla los datos de la tienda, junto con los datos geográficos (población, provincia, país) obtenidos de otras tablas relacionadas.

La secuencia de pasos realizados queda disponible para ser modificada en cualquier momento, además de que será utilizada para ejecutarse cada vez que se pulse el botón ‘Refresh’, lo que producirá que se acceda de nuevo al origen de datos, se obtengan los datos que haya en ese momento y se apliquen todos los pasos con las transformaciones que hemos creado inicialmente.

Por último vamos a hacer una observación muy importante y que debe tener en cuenta. Cada vez que se ejecuta este conjunto de pasos, al pulsar el botón ‘Refresh’ se elimina toda la información actual, dejando el destino vacío y volviéndolo a recargar.

Si estás realizando uno de los cursos de Power BI de los que forma parte este material tendrás acceso a todas las fuentes de datos y a una guía paso a paso para realizar el proceso en tu equipo. Fórmate con SolidQ.

Salvador Ramos

Consultor, Formador y Mentor en Business Intelligence. SQL Server MVP.
Director de Formación en SolidQ.
Microsoft MCSE 2012: Business Intelligence.

Latest posts by Salvador Ramos (see all)