Wenn man eine Datenquelle mit Power Query importiert, die häufigen Veränderungen unterliegt, kommt es immer wieder zu Fehlschlägen beim Import. Dies ist oftmals der Standard-Vorgehensweise der GUI von Power Query geschuldet.
Im Normalfall zeigt Power Query (M) alle verfügbaren Spalten an und der Entwickler entfernt diese dann. Das meist nur solange gut, bis diese Spalten verändert werden (zB Umbenannt). Dann schlägt der erste Schritt des ETL fehl und es werden keine Daten importiert.
Daher ist es sinnvoller statt der Entfernung (Remove) von Spalten diese explizit auszuwählen. Bei einer Vielzahl von Konnektoren (Connections) wird so dann auch wesentlich schneller geladen.
let
Source = SharePoint.Tables("SharepointList", [ApiVersion = 15]),
s = Source{[Id = "ListGuid"]}[Items],
ts = Table.SelectColumns(s, {"ID", "AttachmentFiles"}),
RenamedColumns = Table.RenameColumns(ts, {{"ID", "ID.1"}}),
ExpandedAttachmentFiles = Table.ExpandTableColumn(
RenamedColumns,
"AttachmentFiles",
{"FileName", "ServerRelativeUrl"},
{"FileName", "ServerRelativeUrl"}
),
FilteredRows = Table.SelectRows(
ExpandedAttachmentFiles,
each [FileName] <> null and [FileName] <> ""
)
in
FilteredRows
Source = SharePoint.Tables("SharepointList", [ApiVersion = 15]),
s = Source{[Id = "ListGuid"]}[Items],
ts = Table.SelectColumns(s, {"ID", "AttachmentFiles"}),
RenamedColumns = Table.RenameColumns(ts, {{"ID", "ID.1"}}),
ExpandedAttachmentFiles = Table.ExpandTableColumn(
RenamedColumns,
"AttachmentFiles",
{"FileName", "ServerRelativeUrl"},
{"FileName", "ServerRelativeUrl"}
),
FilteredRows = Table.SelectRows(
ExpandedAttachmentFiles,
each [FileName] <> null and [FileName] <> ""
)
in
FilteredRows