Register now to learn Fabric in free live sessions led by the best Microsoft experts. From Apr 16 to May 9, in English and Spanish.
Tengo un informe (en modo de importación) que consume de algunos archivos csv que se encuentran dentro de un par de carpetas en las bibliotecas de documentos de SharePoint Online. Estas bibliotecas de documentos reciben un archivo csv adicional cada día. El informe ha sido refrescante hasta hoy. El mensaje de error dice 'Error en SharePoint: Solicitud', sin otra información útil.
He confirmado que el error no se debió a una caída de red o a un archivo incorrecto (por ejemplo, todos los archivos tienen el mismo esquema, codificación, etc.). Después de las pruebas, encontré algo extraño. El informe se actualiza correctamente cuando hay 133 archivos en cada carpeta de SharePoint, pero se produce un error en más de 134 archivos. Dado que sería realmente extraño que hubiera un límite de recuento de archivos (distinto del límite de recuento de archivos 5k habitual), a continuación inspeccioné el tamaño de archivo individual. Los archivos varían de 1kB a 20 kB, para un tamaño de archivo total (en cada carpeta) de sólo ~ 1.5 [MB], que no está cerca del límite de volumen de datos sin comprimir de 1 GB. (Estoy en capacidad compartida.)
Una actualización bajo demanda del informe tarda solo 4 minutos y una actualización programada tarda solo 21 minutos, lo que no está cerca del tiempo de espera de 2 horas para los informes en modo de importación.
¿Qué está causando este problema? Como solución temporal, he consolidado algunos de los archivos en 1 archivo. Pero, eventualmente, este problema volverá a suceder.
Si ayuda, a continuación se muestra cómo es mi consulta principal. Nota: Estoy cargando todos los archivos en dicha carpeta a través de consultas "auxiliares".
let
Source = SharePoint.Files("https://mycompany.sharepoint.com/sites/mysite", [ApiVersion = 15]),
#"Filtered Rows" = Table.SelectRows(Source, each ([Folder Path] = "https://mycompany.sharepoint.com/sites/mysite/mydoclibrary/myfolder/")),
#"Filtered Hidden Files1" = Table.SelectRows(#"Filtered Rows", each [Attributes]?[Hidden]? <> true),
#"Invoke Custom Function1" = Table.AddColumn(#"Filtered Hidden Files1", "Transform File (2)", each #"Transform File (2)"([Content])),
#"Renamed Columns1" = Table.RenameColumns(#"Invoke Custom Function1", {"Name", "Source.Name"}),
#"Removed Other Columns1" = Table.SelectColumns(#"Renamed Columns1", {"Source.Name", "Transform File (2)"}),
#"Expanded Table Column1" = Table.ExpandTableColumn(#"Removed Other Columns1", "Transform File (2)", Table.ColumnNames(#"Transform File (2)"(#"Sample File (2)"))),
#"Changed Type" = Table.TransformColumnTypes(#"Expanded Table Column1",{{"Source.Name", type text}, {"Status", type text}, {"EmployeeID", type text}, {"CreatedDate", type date}})
in
#"Changed Type"
Esto utiliza las siguientes consultas "auxiliares":
archivo:
Archivo de ejemplo (2)
let
Source = SharePoint.Files("https://mycompany.sharepoint.com/sites/mysite", [ApiVersion = 15]),
#"Filtered Rows" = Table.SelectRows(Source, each ([Folder Path] = "https://mycompany.sharepoint.com/sites/mysite/mydoclibrary/myfolder/")),
Navigation1 = #"Filtered Rows"{0}[Content]
in
Navigation1
parámetro:
Parameter2 = "Archivo de muestra (2)"
función:
Transformar archivo (2)
let
Source = (Parameter2 as binary) => let
Source = Csv.Document(Parameter2,[Delimiter=",", Columns=10, Encoding=1252, QuoteStyle=QuoteStyle.None]),
#"Promoted Headers" = Table.PromoteHeaders(Source, [PromoteAllScalars=true])
in
#"Promoted Headers"
in
Source
Sería curioso ver si obtiene el mismo comportamiento cuando usa Sharepoint.Contents() en lugar de Sharepoint.Files() ...
Covering the world! 9:00-10:30 AM Sydney, 4:00-5:30 PM CET (Paris/Berlin), 7:00-8:30 PM Mexico City
Check out the April 2024 Power BI update to learn about new features.
User | Count |
---|---|
2 | |
1 | |
1 | |
1 | |
1 |
User | Count |
---|---|
2 | |
2 | |
2 | |
2 | |
1 |