Power BI

Desarrollo rápido de Power BI con archivos de SharePoint

Siempre estoy buscando formas más productivas de trabajar con Power BI y las herramientas asociadas. Como cubrí en mi artículo la semana pasada, el desarrollo de informes de Power BI usando SharePoint para su almacenamiento de archivos puede ser tan lento que no es práctico. En este artículo analizo las distintas opciones para acelerar el proceso, además, luego le muestro cómo desarrollar sus libros de trabajo de Power BI para que usen una copia de PC local de los archivos en su HDD (que es relativamente rápido), luego cambie a la fuente de SharePoint cuando lean para publicar en línea.

Opciones para mejorar la experiencia de creación de Power BI mediante el almacenamiento de archivos de SharePoint

Existen bastantes enfoques para mejorar la experiencia de creación de Power BI cuando se usa SharePoint como almacenamiento de archivos. Las opciones incluyen

Acercarse Pros Contras
1. Sincronice los archivos de SharePoint con una ubicación de almacenamiento conectada a la red mediante OneDrive. Desarrolle el informe de Power BI para apuntar a este almacenamiento de archivos local en lugar de SharePoint. Relativamente rápido de desarrollar. Los archivos todavía están en una unidad de red, por lo que no son tan rápidos como los archivos locales.

Necesita instalar una puerta de enlace cuando, de lo contrario, es posible que no la necesite.

2. Utilice Web.Contents () para acceder directamente a los archivos como lo haría con una página web. Según se informa, más rápido para cargar un archivo (nunca lo he probado). Supongo que no funciona para la combinación de archivos.
3. Utilice Sharepoint.Contents () en lugar de Sharepoint.Files () Según se informa, más rápido para cargar un archivo (nunca lo he probado), pero aún puede ser lento para navegar. Supongo que no funciona para la combinación de archivos.
4. Utilice Dataflows para mapear el archivo sin procesar, luego cárguelo en PBI desde allí. Mueve el problema a los flujos de datos para que luego pueda desarrollar rápidamente desde una fuente tabular. Realmente solo funciona para archivos individuales en formato tabular.

No puede usarlo para combinar archivos u otras consultas de ramificación complejas realizadas en flujos de datos a menos que tenga Premium.

5. Desarrollar en almacenamiento de archivos local pero implementar con almacenamiento de SharePoint Lo mejor de ambos mundos Requiere cierta edición manual de consultas antes de la implementación.

Puede haber otros enfoques que no he cubierto.

Desarrollar usando archivos locales pero implementar con SharePoint

Hay beneficios en cada uno de estos enfoques que se describen a continuación.

Tipo de almacenamiento Beneficios Cuestiones
Almacenamiento de archivos local El acceso a los archivos es el más rápido, especialmente durante las tareas de desarrollo y combinación de archivos. No tiene acceso a todos los beneficios de SharePoint como su solución de almacenamiento de archivos.
Almacenamiento de archivos de SharePoint Control de versión incorporado

Check in y check out

Facilidad de acceso a múltiples usuarios dispersos geográficamente en todo el mundo.

La capacidad de acceder a los archivos desde Power BI sin la necesidad de una puerta de enlace.

El desarrollo puede ser lento porque el proceso de actualización y vista previa puede ser lento.

La solución que prefiero usar ahora (y que voy a explicar en detalle aquí) es desarrollar sus informes de Power BI utilizando archivos locales y luego cambiar manualmente a archivos de SharePoint antes de la implementación. Hacerlo de esta manera le brinda lo mejor de ambos mundos. Para hacer esto, configuro el informe para que se conecte tanto a una carpeta local como a una carpeta de SharePoint en Power Query y alterno entre las dos dependiendo de si estoy desarrollando o implementando. Pero hay algunas cosas que debe hacer en el proceso para asegurarse de que todo funcione correctamente. La estructura de la ruta de archivo de SharePoint es diferente a la estructura de la ruta de archivo de los archivos locales, por lo que debe tener precaución.

Recorrido por la demostración

Para demostrar el concepto, le mostraré cómo hice una combinación de archivos usando mi enfoque.

Tengo 3 archivos csv simples. Los he cargado en una carpeta local en mi PC (n. ° 1 a continuación) y también en una carpeta de SharePoint (n. ° 2 a continuación). Tenga en cuenta que seguí adelante y agregué algunos archivos adicionales para poder demostrar el proceso de filtrado (esto es particularmente importante). También tenga en cuenta que la ruta de la carpeta en mi PC y SharePoint no es la misma, pero tengo una subcarpeta que es la misma: la subcarpeta «Consolidar CSV» que contiene todos mis archivos.

092220_0726_fasttrackpo1-6311827

Copiar los archivos a su PC

Ahora hay algunas formas de obtener una copia de los archivos de SharePoint en su PC. Lo más fácil (y mi recomendación) es usar OneDrive para sincronizar las carpetas que necesita. De esa manera, los archivos de su PC permanecerán sincronizados con los archivos de SharePoint y la estructura de subcarpetas será la misma. Pero también puede configurar una carpeta local en su PC y simplemente colocar los archivos que necesita allí manualmente. Si lo hace de esta manera manual, le recomiendo que use al menos el nombre de subcarpeta de nivel más bajo para que coincida exactamente con el nombre de subcarpeta de SharePoint de nivel más bajo (ortografía, espacios y mayúsculas). Esto es necesario más adelante en el proceso para garantizar que pueda intercambiar fácilmente entre archivos locales y archivos de SharePoint. No es obligatorio que replique la estructura de subcarpetas de SharePoint exactamente, siempre que pueda identificar sus archivos utilizando al menos una subcarpeta.

Maybe you are interested >>>  Crear un gráfico de anillos de Power BI

Comience con la versión de PC local de los archivos

Este enfoque está diseñado para hacer que el esfuerzo de desarrollo sea lo más rápido posible. Por lo tanto, se deduce que debe iniciar el proceso utilizando la versión de disco duro local de los archivos.

El patrón genérico a seguir es:

  1. Conéctese a su carpeta maestra local en su HDD.

    • Desactive «habilitar carga» y llámelo RawLocalFiles.
  2. Cree una nueva consulta que haga referencia a RawLocalFiles y llámela ActiveFiles y desactive «habilitar carga».
  3. Cree una nueva consulta que haga referencia a ActiveFiles y lleve a cabo la transformación que necesita (haré File Combine en esta demostración).

    • Asegúrese de que la consulta del paso 3 no tenga ninguna referencia absoluta a nada relacionado con la ruta del archivo local.
    • Repita para todos los archivos que necesite procesar.
  4. Conéctese a su carpeta maestra de SharePoint.
  5. Desactive «habilitar carga» y llámelo RawSharePointFiles.

    • Asegúrese de que la lista de archivos sea idéntica a la lista del paso 2.
    • Las subcarpetas pueden ser diferentes siempre que haya al menos una subcarpeta de la que puede utilizar para identificar de forma única los archivos que necesita (o un nombre de archivo).
  6. Cuando esté listo para implementar, edite manualmente la consulta ActiveFiles en el paso 3 para que apunte a RawSharePoint Files.

En esta demostración, utilicé la combinación de archivos de Power Query para conectarme a mi carpeta de disco duro local y combinar los archivos. Para aquellos que son nuevos en la función Power Query Combine pueden leer mi artículo aquí.

1 Conéctese a su carpeta maestra local en su HDD

Tenga en cuenta la forma y la estructura de la tabla anterior; volveré a consultarla más adelante.

2. Cree la consulta de ActiveFiles

  • Haga clic derecho en RawLocalFiles y seleccione Referencia
  • Cambiarle el nombre a ActiveFiles
  • Desactivar «habilitar carga»

3. Utilice sus archivos según sea necesario

En mi demostración, voy a hacer una combinación de archivos.

  • Haga clic derecho en ActiveFiles y seleccione Referencia
  • Cambiar el nombre de la consulta y llamarla «Datos»
  • Filtre los archivos para que solo haga referencia a los archivos que necesita (para combinar archivos en este caso). En mi caso, filtré la Ruta de la carpeta, seleccioné Filtros de texto, Contiene y escribí el nombre de la subcarpeta que necesito llamada «Consolidar CSV».

    092220_0726_fasttrackpo3-2433000

    092220_0726_fasttrackpo4-7011700

  • Es esencial que no utilice barras invertidas en su filtrado. Si necesita usar barras invertidas para llegar a la subcarpeta correcta, le daré un truco adicional y el final.
  • Haga clic en el botón Combinar archivo

092220_0726_fasttrackpo5-2829606

Entonces terminé con esto.

data-6519521

Antes de continuar, solo voy a hacer algunos arreglos agrupando mis consultas, como se muestra a continuación.

092220_0726_fasttrackpo7-1593594

4. Elimine las referencias a todo lo relacionado con la ruta del archivo local.

Esto es de vital importancia, de lo contrario todo fallará. Verifiqué manualmente cada paso en cada consulta para asegurarme de que no hubiera referencias a la ruta del archivo en mi PC. Dependerá de lo que estés haciendo. Si hace referencia a un archivo por su nombre, es normal que Power BI agregue una referencia con nombre a la carpeta, así como el nombre del archivo. Si esto sucede, debe eliminar la referencia a la carpeta.

5. Conéctese a su carpeta maestra de SharePoint

Creé una nueva fuente, desde la carpeta de SharePoint. Tenga en cuenta que debe usar solo la parte URL de la carpeta de SharePoint como se muestra a continuación, no la ruta completa a la biblioteca de documentos.

092220_0726_fasttrackpo8-3003753

Power Query mostrará todos los archivos de todas las bibliotecas de documentos de este sitio de SharePoint. Lo más probable es que no los desee a todos. A continuación, fui a la columna Ruta de la carpeta (que se muestra a continuación) y me filtré a la Subcarpeta que necesitaba llamada “Alguna carpeta”.

En este punto, deténgase y tome nota. La lista de archivos a continuación es casi idéntica a la lista de archivos en mi unidad local mostrada anteriormente. Pero la estructura de carpetas es diferente en SharePoint y en mi PC local. Esto no importa. Todo lo que importa es que de aquí en adelante, solo usa referencias relativas a sus archivos, ya sea usando el nombre de los archivos (sin referencia a la carpeta) o comprando usando Contiene texto como se mencionó anteriormente, asegurándose de no hacer referencia a barras invertidas o barras.

092220_0726_fasttrackpo9-7161546

Cambié el nombre de esta consulta a SharePointFiles y la configuré para que no se cargue.

092220_0726_fasttrackpo10-1968824

Ahora hay dos consultas de carpeta de origen, una llamada RawLocalFiles y otra llamada RawSharePointFiles. Ambas consultas presentan la misma lista de archivos a procesar.

Cambiar la fuente antes de publicar

Eso es todo. Ahora puede desarrollar a su gusto con consultas altamente receptivas. Cuando esté listo para implementar, simplemente edite la única línea de código en la consulta de ActiveFiles (1) para que no apunte a RawLocalFiles (2) sino que apunte a RawSharePointFiles (3).

swap-3539029

¿Usar un parámetro para alternar?

Ahora, en este punto, puede estar pensando que sería bueno si pudiera configurar un parámetro para alternar entre ambos. Estoy de acuerdo – gran idea. Pero en mis pruebas no pude hacer que funcionara. Intenté crear un parámetro y luego algunas ideas, como una declaración IF para alternar la fuente del archivo según el valor del parámetro. Todo iba bien hasta que publiqué el informe. Una vez que se publicó, PowerBI.com informó que necesitaba una puerta de enlace configurada para los archivos locales, aunque nunca se iban a cargar. Si alguien puede encontrar una forma de configurar esto con un parámetro sin necesidad de la puerta de enlace, me encantaría saberlo.

Cambio de barras inclinadas a barras invertidas

Como truco adicional, puede reemplazar las barras inclinadas en la ruta del archivo de SharePoint con barras invertidas. Si hace esto, puede usar un filtro en Texto, Contiene que usa una ruta de carpeta más absoluta, como » carpeta principal subcarpeta combine csv», por ejemplo. Necesita mover las barras en la lista de SharePoint para que esto funcione.

backslas-8615547

¿Qué piensas?

Dime lo que piensas en los comentarios a continuación. Si tiene una forma mejor, me encantaría saberlo. Especialmente si sabe cómo arreglar ese parámetro para poder usar un parámetro para alternar la fuente sin configurar la puerta de enlace.