[DataSource.Error] SharePoint / _api / contextinfo

Un usuario Pregunto ✅

3

Votar

(publicación como problema sugerido por el foro de escritorio)

Hola,

Tengo un conjunto de datos que importa desde varios archivos de Excel dentro de una carpeta de SharePoint (~ 10 tablas de ~ 20 archivos). Estoy usando el método de archivo de transformación ya que las columnas pueden variar. Ha funcionado bien durante muchos meses. En el último mes, comencé a tener errores de actualización del escritorio local periódicos y ahora persistentes «SharePoint: Solicitud fallida».

El error específico es «Error de OLE DB u ODBC: [DataSource.Error] SharePoint: solicitud fallida: https://xxxxxxx.sharepoint.com/sites/…/xFileName_xlsm/_api/contextinfo «.

Puedo ver que casi todo se carga (parece que se ha accedido a cada archivo en algún momento) y luego aparece el error. He intentado varias veces borrar / restablecer las credenciales de SharePoint, borrar el caché, etc. No necesariamente se repite con el mismo archivo o incluso consulta en el mensaje de error. Tuve esto con la versión de julio, así como con la de septiembre y ahora las últimas versiones de octubre.

Afortunadamente, el conjunto de datos publicado se actualiza diariamente como se esperaba. Si descargo el mismo archivo PBIX publicado, normalmente se actualiza localmente correctamente en el escritorio la primera vez. Sin embargo, luego obtengo errores persistentes independientemente de si hago algún cambio. Estoy atascado si necesito hacer algún cambio en este momento.

Tenga en cuenta la API de meciones de error, y he estado usando API Versión 15 sin problemas en el pasado. Sin embargo, obtengo los mismos errores usando 14 o auto. Una vez más, el conjunto de datos publicado se actualiza a diario sin problemas con la versión 15 de API.

Algunas otras publicaciones mencionan la limpieza de credenciales, etc., sin embargo, esto no ha ayudado. Nuevamente, la primera actualización después de descargar el PBIX funciona una vez después de la descarga, por lo que no parece estar relacionado con alguna credencial.

Alguien ha experimentado esto? ¿Algunas ideas? Agradezco cualquier ayuda.

Estado: nuevo

8 Comentarios (8 Nuevos)

hola @AgTooOldForThis

Este error generalmente necesita borrar las credenciales de SharePoint en power bi desktop, También puede crear un ticket de soporte para obtener ayuda si es necesario.

Saludos,

Lin

AgTooOldForThis

@ v-lili6-msft gracias por su respuesta. He intentado muchas veces eliminar las credenciales sin cambios, lamentablemente. También puedo verlo conectándose y cargando desde todos los archivos con el error solo al final. Probaré el ticket de soporte como mencionas.

mraass

Hola,

tengo el mismo problema, ¿encontraste alguna solución para esto?

AgTooOldForThis

Hola, sí. Espero que esto te ayude.

Básicamente, hubo demasiadas solicitudes a SharePoint que resultaron en limitaciones y, finalmente, fallaron con la respuesta HTTP 429 Demasiadas solicitudes.

Tenía consultas iniciales que importaban los datos de SharePoint, sin embargo, luego tuve consultas m referenciadas posteriores que funcionaron con las importaciones iniciales. Pude ver con Fiddler que, aunque estas consultas estaban haciendo referencia a las importaciones iniciales de SharePoint, repitieron todas las llamadas originales de SharePoint nuevamente. Incluso tuve algunos lugares que hacían referencia a una referencia de una consulta inicial, lo que agravó aún más la cantidad de llamadas. Lo que debería haber sido solo <80 llamadas de SharePoint ahora estaba en los 1000. En ese momento, no me di cuenta de que una consulta referenciada en una consulta m de escritorio no siempre reutiliza la consulta original (incluso con la carga paralela de tablas deshabilitada).

Reduje el número de llamadas de dos formas diferentes. Afortunadamente, un informe usa un espacio de trabajo habilitado premium, por lo que puedo configurar un flujo de datos para las llamadas iniciales de SharePoint que luego eliminan las consultas de referencia posteriores que duplicaron las llamadas una y otra vez. En realidad, este fue un cambio de copiar / pegar muy fácil. Tenía otro informe en el que los flujos de datos no se pueden habilitar, por lo que terminé reescribiendo las consultas m posteriores que repetían las llamadas de SharePoint en DAX.

AgTooOldForThis

Para su información, me pidieron en privado algunos detalles más sobre el problema / solución. Lo voy a pegar aquí en caso de que sirva para ayudar a alguien más. Saludos

Si tiene una consulta que extrae información de varios archivos XLS en una carpeta de SharePoint, cada uno de estos pasos de importación requiere una llamada a la API de SharePoint. Sin embargo … el problema fundamental para mí … si tiene otra consulta que hace referencia a esta consulta inicial, Power BI Desktop repetirá todo el proceso de llamadas a la API de SP nuevamente en lugar de simplemente pasar los datos existentes.

Por ejemplo, si mi consulta inicial tenía 100 llamadas a la API y la hacía referencia dos veces en Power Query … terminaría con 300 llamadas a la API. Para mi problema particular fue en los 1000, porque estaba importando muchas tablas XLS diferentes de muchos formularios XLS y luego manipulando los datos con varias consultas en Power Query. El uso de Fiddler finalmente me abrió los ojos en cuanto a cuántas llamadas estaban sucediendo realmente.

Lo resolví de dos formas diferentes para dos proyectos diferentes. Ambos solo están tratando de evitar las llamadas API repetidas (es decir, los 200 adicionales en mi ejemplo anterior).

Flujo de datos n. ° 1: un espacio de trabajo que tengo permite flujos de datos. Esta fue una solución bastante fácil porque literalmente puede simplemente copiar / pegar sobre el código m. Así que acabo de hacer un flujo de datos para las consultas de importación iniciales. Luego, en mi proyecto, simplemente reemplacé las consultas de importación originales con la salida del flujo de datos. Esto evitó que las consultas posteriores desencadenaran una repetición de las llamadas a la API nuevamente.

# 2 Mover a DAX: otro espacio de trabajo que tenía no permitía flujos de datos. Esto fue un poco más de trabajo, sin embargo funcionó al final. En lugar de manipular los datos en Power Query, reescribí estas consultas en DAX. Fue un poco molesto porque algunas cosas son muy difíciles de replicar en DAX que es fácil con M-code. Al moverlos a DAX, también evitó la activación de la repetición de las llamadas a la API nuevamente.

martigas

@AgTooOldForThis Hola, ¿encontraste alguna solución para esto? Necesito ayuda

AgTooOldForThis

@martigas Hola. Sí, las dos soluciones que utilicé están publicadas arriba. Gracias

martigas

Permítanme compartirles la forma de resolver el problema que ya encontré.

Cuando verifiqué el código M para el Sharepoint de Excel que funcionaba, encontré que la url era:

-> https://xxxxxxx.sharepoint.com/sites/…/xFile%20Name_xlsm/_api/contextinfo

Pero cuando verifiqué la fuente que estaba dando problemas, la URL era:

-> https://xxxxxxx.sharepoint.com/sites/…/xFile Name_xlsm / _api / contextinfo

Observe que el carácter de espacio «» se reemplaza por «% 20»

Hice una nueva conexión con la fuente que estaba dando problemas y (no sé por qué) la nueva URL era:

-> https://xxxxxxx.sharepoint.com/sites/…/xFile Name_xlsm / _api / contextinfo

Reemplacé todas las líneas de código M y funciona nuevamente 🙂

Deja un comentario

Tu dirección de correo electrónico no será publicada. Los campos obligatorios están marcados con *