Desarrollo rápido de Power BI con archivos de SharePoint

Share on facebook
Share on twitter
Share on linkedin
Share on telegram
Share on whatsapp

Contenidos

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 que apunte a este almacenamiento de archivos local en lugar de a 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. Use 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 a partir de una fuente tabular. Requiere un nivel adicional de programación de actualización que debe alinearse para que todo funcione. Sigue siendo bueno, pero.
5. Desarrolle en el almacenamiento de archivos local pero impleméntelo con el 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. Si lo hace de esta manera, obtendrá 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 cierta 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 también 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-7056860

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 las 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 utilice 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.

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 referencias absolutas 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í.

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.

Crear la consulta de ActiveFiles

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

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
  • Cambie el nombre de la consulta y llámela «Datos».
  • Filtre los archivos para que solo haga referencia a los archivos que necesita (para la combinación de 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-5302154

    092220_0726_fasttrackpo4-2422032

  • 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-4040298

Entonces terminé con esto.

data-9039200

Antes de continuar, solo voy a ordenar un poco agrupando mis consultas, como se muestra a continuación.

092220_0726_fasttrackpo7-5402896

Eliminar 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.

Las consultas RawFiles pueden y deben tener una referencia absoluta a las fuentes, pero estas son las únicas.

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-8044161

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 que se mostró 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 diagonales inversas o barras.

092220_0726_fasttrackpo9-5975706

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

toggle-file-combine-17-1083018

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 el contenido de su corazón 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-8914045

¿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 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-1728817

¿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 que pueda usar un Parámetro para alternar la fuente sin configurar la puerta de enlace.

!function(f,b,e,v,n,t,s)
{if(f.fbq)return;n=f.fbq=function(){n.callMethod?
n.callMethod.apply(n,arguments):n.queue.push(arguments)};
if(!f._fbq)f._fbq=n;n.push=n;n.loaded=!0;n.version=’2.0′;
n.queue=[];t=b.createElement(e);t.async=!0;
t.src=v;s=b.getElementsByTagName(e)[0];
s.parentNode.insertBefore(t,s)}(window,document,’script’,
‘https://connect.facebook.net/en_US/fbevents.js’);
fbq(‘init’, ‘639916389503636’);
fbq(‘track’, ‘PageView’);

Suscribite a nuestro Newsletter

No te enviaremos correo SPAM. Lo odiamos tanto como tú.