Miguel Escobar Publicada septiembre 23, 2019

La experiencia del usuario de ‘Obtener datos’ en Power BI / Power Query

Power BIPower Query

Uno de los servicios que brindamos en Powered Solutions es la creación de conectores personalizados en Power BI (ver aquí). Durante los últimos meses, más o menos, he recibido más y más preguntas relacionadas con el tipo de experiencias de «Get Data» u «Obtener datos» que podemos tener dentro de Power BI / Power Query.

La mayoría de las veces, estas preguntas provienen de personas con experiencia previa en VBA, Tableau y otras herramientas de BI en el mercado.

Ya he hablado sobre los Parámetros y Funciones en Power BI / Power Query antes (Parte 1 | Parte 2 | Parte 3 | Parte 4), y uno de los elementos que no cubrí completamente es cómo se ven los Parámetros y cómo el usuario final  puede interactuar con ellos.

En resumen, ¿cómo es la experiencia del usuario «Get Data» en Power BI / Power Query?

Esta es la publicación donde agregaré eso y explicaré qué tipo de interacción puede tener con los parámetros de Power BI y los conectores personalizados. También te recomiendo que leas esta información del equipo de Microsoft sobre Funciones y Parámetros.

¿Cuál es la experiencia del usuario de «Get Data» en Power BI / Power Query?

Cada vez que pasas por la ventana de «Get Data» (Obtener datos), terminas seleccionando lo que se conoce como un «Conector de datos».

Cada conector proporciona su propia experiencia única. Puedes definir tu propia experiencia de conector al crear un conector personalizado de Power BI, pero la experiencia más común que encontrarás dentro de un conector de Power BI es la siguiente:

  1. Parámetros de conector: cuando usamos un conector por primera vez, generalmente obtenemos esta ventana que tiene lo que se llama como parámetros de conector. Estos son el conjunto de parámetros que definirán la conexión que ocurrirá con nuestra fuente de datos. En la imagen de arriba, es donde configuramos el URL de nuestro sitio WooCommerce y la versión del API que utiliza el sitio.
    1. Dato curioso: llamamos a un «singleton» un conector que no requiere ningún tipo de parámetros de conector
  2. Fase de autenticación: la mayoría de las veces pasará directamente a la fase de autenticación, que es estándar para cada conector. La única diferencia es que algunos conectores solo tendrán ciertos métodos de autenticación disponibles, mientras que otros podrían tener múltiples métodos de autenticación.
    1. Si tus credenciales ya están almacenadas en tu Power BI Desktop / Power Query, no se te solicitará esto y pasarás directamente a la siguiente fase de tu conector.
  3. Tabla de navegación: Aquí, como usuario final, podrás explorar lo que el conector de datos puede ofrecerte. En algunos casos, esta ventana del navegador te ofrecerá múltiples niveles para que explores tablas, funciones y otros componentes que el conector puede ofrecerte.
    1. Algunos conectores no mostrarán esta ventana de «Navegador» y te llevarán directamente a la ventana del editor de Power Query. Este comportamiento no se recomienda para los conectores personalizados de Power BI.
  4. Fase de carga o transformación: aquí es donde se elige qué hacer con los objetos que se han seleccionado en la tabla de navegación / ventana del navegador. Puedes elegir Cargar los datos directamente en tu modelo de datos o hacer clic en el botón «Editar» / «Transformar datos» para trabajar primero con tus datos dentro de la ventana de Power Query Editor antes de cargarlos en tu modelo de datos.
    1. Se recomienda encarecidamente que siempre hagas clic en el botón «Editar» / «Transformar datos» para ver cómo se ven los datos y si necesita realizar alguna transformación o limpieza.

Veamos algunos ejemplos de cómo funcionan algunos conectores.

El conector de Excel

Cuando usamos los conectores «Excel», «Text / CSV» u otros conectores similares que funcionan con un archivo local, nos llevan directamente a una ventana de carpeta para encontrar el archivo al que queremos conectarnos.

En el pasado, solía llevarnos a la ventana «Parámetros del conector» y tenía un botón «buscar» para encontrar el archivo. Una vez que elegimos el archivo, nos llevaría a la ventana del Navegador donde podremos ver los objetos dentro del Libro de trabajo, que se verían así:

Y seguiría la experiencia de 4 pasos que describimos antes.

El conector de carpeta

Si eliges el conector «Carpeta», la primera ventana en realidad sería una ventana simple que parece una forma conocida:

Después de ingresar la ruta de la carpeta, aparecerá otra ventana que te mostrará el resultado de esa conexión:

Esto es esencialmente una tabla, por lo que la experiencia de este conector es diferente a otras porque no expone una tabla de navegación, sino solo una tabla simple.

Con esta tabla puedes elegir “Combinar y transformar datos” o simplemente “Transformar datos”, siendo el primero una experiencia única para este conector.

Acerca de los parámetros del conector y los parámetros en general

En Power BI / Power Query, podemos proporcionar una experiencia muy básica a través de parámetros. Mira la siguiente imagen:

Una regla general para estos parámetros es que solo pueden contener 1 valor, lo que significa que si el parámetro es numérico, solo puede contener un número. Si es un texto, solo puede contener una cadena de texto.

La mayoría de estos campos de entrada se ven exactamente iguales, excepto el campo «myDate» que tiene un ícono de calendario a la derecha y que en realidad es un selector de fecha como se muestra en la siguiente imagen:

Aparte de eso, la mayoría de ellos son iguales, excepto que tienen alguna validación de datos dentro de ellos. Por ejemplo, algunos solo contendrán un texto (el campo “Message”), otros solo numéricos (el “Count”),  otros solo valores de fecha (el «myDate»), otros solo valores lógicos o booleanos (el campo “myLogical”).

Si intentas ingresar algo diferente a lo que se les ha asignado su tipo de datos, recibirás un error que indica que el valor no es compatible con ese parámetro.

Básicamente, solo tenemos 3 experiencias únicas para los parámetros estándar del conector de datos Power BI:

  • Un campo de entrada de forma libre que tiene alguna validación de datos detrás de escena que está disponible para los siguientes parámetros
    • Texto
    • Numérico
    • Lógico
  • Un campo de entrada para fechas con un selector de fecha a la derecha
    • Único para los parámetros de fecha
  • Un menú desplegable para que puedas seleccionar el valor de una lista. Disponible para todos los parámetros (pero es opcional)

Lo que me encantaría ver para los parámetros de Power BI / Power Query

A menudo, me veo tratando de encontrar formas de ofrecer a mis usuarios una forma de tener una selección múltiple en algunos parámetros.

Por ejemplo, imagina un parámetro simple para «País» y me gustaría que mi usuario tenga la posibilidad de seleccionar múltiples elementos de una lista.

Un ejemplo sería este formulario html que ves a continuación:

(manten presionada la tecla Ctrl para seleccionar varios valores al mismo tiempo)

Lo que obtendrías de la entrada del usuario sería algún tipo de matriz (o más como una lista de valores en términos de Power Query) y luego dependerá de mí usar esa lista en mi función, pero no tengo esa funcionalidad de parámetro.

En este momento, es imposible. Solo podemos pedirle al usuario que seleccione o ingrese un solo valor para cada parámetro.

Hay un montón de ideas publicadas en Uservoice para Power BI. Emite tu voto sobre esta idea aquí para que el equipo de Power BI pueda implementar esto.

Déjame saber en los comentarios a continuación qué tan valiosa es esta experiencia para ti y qué conectores te gustaría ver implementados.

Power BIPower Query
Subscribe
Notify of
guest
4 Comentario
Oldest
Newest Most Voted
Inline Feedbacks
View all comments
osiel

Hola Miguel! gracias por compartir información genial. Te comento que mi experiencia es conectarme archivos locales y carpetas, pero quisiera en algun momento poder hacerlo al servidor de mi empresa para ya no tener que generar estos reportes.

Jose Manuel

Miguel buenos días, estoy muy atento con tu gran contenido. Te comento mi necesidad: tengo que extraer información de un software hecho con Java y no se que conector usar o al menos si exista. Saludos y en espera de tus comentarios.