JuanSwid
Hola usuarios de PowerBI,
¿Alguien ha tenido suerte al conectarse a Dropbox como fuente de datos? No pude encontrar muchos artículos sobre este tema. Aquí hay un artículo que tenía una solución que no pudimos hacer funcionar: http://community.powerbi.com/t5/Desktop/Data-source-hosted-on-Dropbox/td-p/47882.
Sólo me preguntaba si alguien podría arrojar algo de luz sobre este tema. ¡Gracias!
v-yuezhe-msft
Hola @JohnSwid,
¿Qué archivo o fuente de datos almacenas en Dropbox? Estoy tratando de conectarme a un archivo de Excel almacenado en DropBox siguiendo las sugerencias de ankitpatira y todo funciona bien.
Además, se han enviado algunas ideas sobre la conexión a la fuente de datos almacenada en Dropbox en los siguientes enlaces, vótelas. Es posible que se realicen algunos cambios para la conexión a Dropbox y podría ser más fácil para nosotros conectarnos a Dropbox desde el escritorio en el futuro.
https://ideas.powerbi.com/forums/265200-power-bi-ideas/suggestions/6663925-dropbox
https://ideas.powerbi.com/forums/265200-power-bi-ideas/suggestions/9045649-please-add-more-data-serv…
Además, también puede considerar almacenar archivos en OneDrive en lugar de Dropbox y conectarse a ellos desde Power BI Desktop.
Gracias,
Lidia Zhang
mike_honey
En respuesta a v-yuezhe-msft
Mientras investigaba este tema, noté que todos los ejemplos dados parecen ser para la API de Dropbox v1, que ha quedado obsoleta y se desactivará en unos meses (junio de 2017):
https://blogs.dropbox.com/developers/2016/06/api-v1-deprecated/
La API v2 parece mucho más compleja: no parece haber ningún equivalente directo para el método sugerido anteriormente (llamada HTTPS única con una clave API). Los requisitos de autenticación ahora parecen más complejos:
https://www.dropbox.com/developers/reference/auth-types#user
Me ha dejado perplejo por ahora, ¿alguien lo ha hecho funcionar?
elliotdixon
En respuesta a mike_honey
Estoy de acuerdo con @mike_honey: parece que no puedo hacerlo funcionar.
Cualquier consejo sobre cómo conectarse a los archivos de Dropbox sería genial.
hugoberry
En respuesta a elliotdixon
La documentación en su sitio para desarrolladores es bastante completa https://www.dropbox.com/developers/documentation/http/documentation
En cuanto a algún código repetitivo para que pueda comenzar, eche un vistazo al fragmento a continuación para ver un ejemplo de cómo obtener una lista de carpetas.
let data = [ path= "/code", recursive=false, include_media_info=false, include_deleted=false, include_has_explicit_shared_members=false], header = [ #"Authorization"="Bearer ZZZZZZZZZZZ", #"Content-Type"= "application/json"], response = Web.Contents("https://api.dropboxapi.com/2/files/list_folder",[Content=Json.FromValue(data),Headers=header]), out = Json.Document(response,1252) in out
La única configuración que tuve que hacer en el sitio de Dropbox fue crear una aplicación en el espacio del desarrollador y luego generar una clave de acceso, que por cierto es ZZZZZZZZZZ en mi fragmento.
masplin
En respuesta a hugoberry
Probé tu código y obtuve este error. Acabo de crear una aplicación y agregué el código de acceso donde tenías zzzzzzz.
DataSource.Error: Web.Contents no pudo obtener contenido de ‘https://api.dropboxapi.com/2/files/list_folder’ (400): solicitud incorrecta
Detalles:
DataSourceKind=Web
DataSourcePath=https://api.dropboxapi.com/2/files/list_folder
Url=https://api.dropboxapi.com/2/files/list_folder
¿Alguna idea de lo que esto significa?
gracias
Miguel
hugoberry
En respuesta a masplin
Creé un conector de datos de DropBox con el SDK de Power Query Extensions. Le invitamos a probarlo o comprobar el código para una posible respuesta
https://github.com/Hugoberry/PowerQueryConnectors/blob/master/src/DropBox/DropBox.pq
masplin
En respuesta a hugoberry
De hecho, logré configurar la nueva puerta de enlace personal para poder usar los archivos en Dropbox como fuente de datos para un archivo PBIX.
¿Creo que esto está haciendo algo diferente? ¿Podría explicar en qué casos buscaría usar esto para futuras referencias?
gracias
Miguel
ImkeF
En respuesta a masplin
Hola tios,
gracias por estas útiles soluciones diferentes! Recogí algunos bits de código de este hilo y creé una función que hace que sea bastante fácil obtener archivos de una carpeta de Dropbox: https://www.youtube.com/watch?v=eEVRO-Zc7pg
Esto debería ser útil para las personas que no son tan expertas en tecnología y podrían tropezarse con esta publicación.
masplin
En respuesta a ImkeF
hola imke
Me propuse seguir sus instrucciones para usar la carpeta de la aplicación en lugar de una carpeta normal de Dropbox, lo que parece ser casi imposible. De todos modos, creé mi aplicación y puse algunos archivos en la carpeta. Sin embargo, me quedé atascado de inmediato porque no puedes compartir una carpeta de aplicaciones. Tenemos varios usuarios que comparten nuestro buzón de BI y cualquiera de ellos podría estar agregando nuevos archivos a los fodlers cada mes. Entonces, si la carpeta de la aplicación no se puede compartir, ¿significa eso que la única forma de obtener nuevos datos en una carpeta de la aplicación es iniciar sesión en Dropbox como propietario de la aplicación? Simplemente parece un verdadero dolor si este es el caso, ya que de lo contrario su solución parece elegante.
Me doy cuenta de que esta es una pregunta de Dropbox, no de PowerBI, pero creo que podría saber si hay alguna forma de solucionarlo.
Gracias
Miguel
ImkeF
En respuesta a masplin
Hola Mike,
teniendo dificultades para seguirte aquí: ¿Qué quieres decir con «carpeta de la aplicación»?
Según tengo entendido, debe crear una aplicación en Dropbox para poder generar una clave API. Para el uso en PBI no necesita la aplicación de Dropbox explícitamente, solo la clave/token.
La carpeta que puede elegir es solo una carpeta «normal» en el buzón.
Pero podría estar totalmente equivocado aquí, en realidad no uso esto yo mismo.
masplin
En respuesta a ImkeF
En su publicación, colocó los archivos dentro de la carpeta de la aplicación, por lo que asumió que tenía que hacer eso. Iré y probaré con una carpeta de Dropbox normal. e informar de nuevo
masplin
En respuesta a masplin
Ok, usé tu código y el token que obtuve para todo mi Dropbox. Si no pongo la ruta de la carpeta, obtengo algo
Sin embargo, necesito una carpeta que esté varias capas debajo de Datamodel/3rd party Bookings/WCFMC
Si pongo algo en la carpeta, se produce un error.
Ocurrió un error en la consulta ‘Query1’. DataSource.Error: Web.Contents no pudo obtener contenido de ‘https://api.dropboxapi.com/2/files/list_folder’ (400): solicitud incorrecta
Detalles:
DataSourceKind=Web
DataSourcePath=https://api.dropboxapi.com/2/files/list_folder
Url=https://api.dropboxapi.com/2/files/list_folder
¿Alguna idea de cómo hacer que lea el contenido de las subcarpetas?
gracias
Miguel
ImkeF
En respuesta a masplin
La carpeta debe comenzar con una barra inclinada:
ver aquí: http://www.thebiccountant.com/2017/06/25/import-multiple-files-dropbox-folder-powerbi-excel-via-powe…
masplin
En respuesta a ImkeF
Ah perfecto. parece que funciona. Fantástico.
eres el mejor
Miguel
masplin
En respuesta a masplin
Lamentablemente el cartel anterior es correcto. su método funciona dentro de Excel y PowerQuery, pero no puede usar esa misma consulta en PDI Desktop ya que falla en la puerta de enlace
Eso es realmente molesto.
Miguel
ImkeF
En respuesta a masplin
¿En serio? ¡Eso es un dolor!
En realidad, no tengo una puerta de enlace en mi máquina local, por lo que eso podría explicar por qué todavía funciona para mí.
@JAkerblom: ¿Y tú? ¿Tampoco tienes una puerta de enlace instalada?
jakerblom
En respuesta a ImkeF
@ImkeF, no, no tengo una puerta de enlace instalada. No entendí por qué necesitaría uno para hacer una llamada API específica.
Ahora veo que la gente necesita enumere específicamente el contenido de la carpeta y no solo busque un archivo específico, que es lo que hice. Primero pensé que era el método api el que no podía proporcionar los resultados de la lista de contenido de la carpeta, pero cuando traté de hacer una llamada curl de línea de comando funcionó bien, es decir, el método list_folder puede devolver la lista de contenido de la carpeta (pero simplemente no en PowerBI Desktop por alguna razón…). Probé todos los tipos de parámetros de encabezado en el método web.contents para que funcionara, pero no tuve éxito. O lo estoy haciendo mal o simplemente no es posible. Pero sería realmente extraño si ciertas llamadas a la API no funcionaran.
masplin
En respuesta a ImkeF
Creo que este es el mejor para que votemos.
https://ideas.powerbi.com/forums/265200-power-bi-ideas/suggestions/6663925-dropbox
masplin
En respuesta a masplin
Ok, plan B. El método listo para usar en Power Query para consultar una carpeta es crear este gran lío con archivos de muestra que es tremendamente confuso. ¿Hay alguna manera de tener una sola consulta que haga el trabajo?
Por ejemplo, quiero consultar estos 2 archivos en una carpeta de Dropbox. El primer paso veo esto
Sin embargo, si hago clic en las flechas en el binario, se activa el archivo de muestra.
¿Puedo solucionar esto con algún código similar al que escribió Imke para Dropbox? Supongo que es un ejercicio similar, pero mi M es demasiado pobre para resolverlo. 😞
Miguel
masplin
En respuesta a masplin
Lo encontré 🙂
https://www.myexcelonline.com/blog/consolidate-multiple-excel-workbooks-using-power-query/