Таким образом, мой размер страницы из API равен 500, поэтому мой запрос даст только 500 результатов.
Проблема в том, что результатов чуть больше 500, и я хотел бы найти рабочее решение, как отображать все результаты в одной рабочей таблице.
Мой код выглядит вроде (URL заменен), как это:
let
GetData = (page as number) as table =>
let
Source = OData.Feed("https://api.myDummy.com/odata/v3/ReportResults?page=" & Number.ToText(page)),
#"Replaced Errors" = Table.ReplaceErrorValues(Source, {{"AirPress", null}}),
#"Filtered Rows" = Table.SelectRows(#"Replaced Errors", each [Name] = "Till"),
#"Filtered Rows1" = Table.SelectRows(#"Filtered Rows", each Date.IsInPreviousYear([TimeStampUtc])),
RemoveBottom = Table.RemoveLastN(#"Filtered Rows1" ,3)
in
RemoveBottom,
PageRange = {1..2},
Source = List.Transform(PageRange, each try {_, GetData(_)} otherwise null),
First = List.FirstN(Source, each _ <> null),
Table = Table.FromRows(First, {"Page", "Column1"}),
Expanded = Table.ExpandTableColumn(Table, "Column1", {"Id", "ReportId","TimeStampUtc", "TimeStampLocal"}),
#"Sorted Rows" = Table.Sort(Expanded,{{"TimeStampUtc", Order.Ascending}})
in
#"Sorted Rows"
Моя таблица результатов показывает мне 994 строки:
Но, как вы можете видеть, он загружает результат дважды, один раз как страница 1 и один раз как страница 2.
Я новичок в этом и пытаюсь понять, как решить эту проблему с незапамятных времен. Я думаю, что я близок к решению, но был бы признателен за любую подсказку / помощь, которую я могу получить.
Я ожидаю, что другим решением будет загрузить вторую сторону с результатами и пропустить первые 500 строк, но я предполагаю, что это будет большой беспорядок, так как мои данные растут, и мне нужно будет добавлять запрос каждые несколько месяцев ...