Есть ли способ использовать оператор if существующие в коде запроса мощности? - PullRequest
0 голосов
/ 03 мая 2019

Эй, мне нужна помощь с моим кодом, я пытаюсь понять, как обращаться с разными файлами, имеющими разное количество страниц.

Я на самом деле использую power bi для извлечения данных из папки pdf, но дело в том, что эти файлы имеют разное количество страниц, в коде ниже вы можете видеть, что у меня есть 3 таблицы, каждая из которых находится на странице (Таблица 1 для таблицы первой страницы ..), поэтому для файлов pdf, имеющих только одну страницу, таблицы 2 и 3 не существуют, поэтому я ищу способ игнорировать части кода, где будут ошибки

let

 Source = Pdf.Tables(#"Paramètre de l'exemple de fichier1"),
 Table1 = Source{[Id="Table1"]}[Data],
 #"En-têtes promus1" = Table.PromoteHeaders(Table1, [PromoteAllScalars=true]),
 Table2=Source{[Id="Table2"]}[Data],
 #"En-têtes promus2" = Table.PromoteHeaders(Table2, [PromoteAllScalars=true]),
 Table3=Source{[Id="Table3"]}[Data],
 #"En-têtes promus3" = Table.PromoteHeaders(Table3, [PromoteAllScalars=true]),
 #"Table" = Table.Combine({#"En-têtes promus1", #"En-têtes promus2",#"En-têtes promus3"}),
 #"Index ajouté" = Table.AddIndexColumn(Table, "Index", 1, 1),
 #"Colonnes renommées" = Table.RenameColumns(#"Index ajouté",{{"Index", "Page"}})
in
 #"Colonnes renommées"

Ответы [ 2 ]

0 голосов
/ 06 мая 2019
 let
 Source = Pdf.Tables(#"Paramètre de l'exemple de fichier1"),
Table005 = Source{[Id="Table005"]}[Data],
#"En-têtes promus1" = Table.PromoteHeaders(Table005, [PromoteAllScalars=true]),

#"Table010"=try Source{[Id="Table010"]}[Data] otherwise null,
#"En-têtes promus2" = Table.PromoteHeaders(Table010, [PromoteAllScalars=true]),
Table015=try Source{[Id="Table015"]}[Data] otherwise null ,
#"En-têtes promus3" = Table.PromoteHeaders(Table015, [PromoteAllScalars=true]),
#"Table" =  try Table.Combine({#"En-têtes promus1", #"En-têtes promus2"}) otherwise  #"En-têtes promus1",
#"Table2" =  try Table.Combine({#"Table",#"En-têtes promus3"}) otherwise  #"Table",
#"Index ajouté" = Table.AddIndexColumn(Table2, "Index", 1, 1),
#"Colonnes renommées" = Table.RenameColumns(#"Index ajouté",{{"Index", "Page"}})


in
 #"Colonnes renommées"
0 голосов
/ 03 мая 2019

Да. Вы можете использовать try и otherwise для шагов, где могут возникнуть ошибки.

Подробнее: https://docs.microsoft.com/en-us/power-query/handlingerrors

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...