PowerBI Ошибка обновления dynamic data source

Недавно возникла необходимость сделать источник данных из нескольких запросов по API. Количество запросов при этом определялось динамически — от количества дней между текущим днем и фиксированной датой*. И после того, как я опубликовал отчет и попробовал его поставить на обновление — меня ждал неприятный сюрприз в виде вот сообщения «This dataset includes a dynamic data source … this dataset won’t be refreshed».

В самом dataset у меня генерируется множество ссылок, потом загружается данные по этим ссылкам + некоторое количество шагов преобразования. Но как говорится — просто нельзя вот так просто сгенерировать 20 ссылок и загрузить по ним данные в PowerBI. Точнее сделать это можно, но обновление придется делать локально вручную.

… или немного переписать код, который делает запрос, тогда все будет работать как часы

Итак, старая версия когда, которая не может обновляться автоматически выглядит таким образом

fetch = Table.AddColumn(#"Added Custom2", "result", each Json.Document(Web.Contents(
        url_base & url_path & 
            "module=logs" &
            "action=getLogs" &
            "address=" & contract_address &
            "fromBlock=" & Text.From([BlockFrom]) &
            "toBlock=" & Text.From([BlockTo]) & 
            "apikey=" & api_key
        )))

Новая версия

fetch = Table.AddColumn(#"Added Custom2", "result", each Json.Document(Web.Contents(
        url_base & url_path
        , [Query = [
            module="logs",
            action="getLogs",
            address=contract_address,
            fromBlock=Text.From([BlockFrom]),
            toBlock=Text.From([BlockTo]),
            apikey=api_key
        ]])))

Разница в том, что динамические параметры выделены в секцию query в соответствии с официальной справкой.

* код M, который генерирует список между текущей и фиксированной датой

= List.Dates(#date(2022,12,20), 365, #duration(1, 0, 0, 0))

Оставьте комментарий

Этот сайт использует Akismet для борьбы со спамом. Узнайте, как обрабатываются ваши данные комментариев.