Собираю сводку по многим проектам, и вот где узкое место.
Даю всё, что есть, вдруг зацепитесь за деталь.
История хранится за два года, объём растёт быстрее, чем ожидалось. Проверка на пустые ячейки делается руками, и это уже неприлично. Сборка занимает около трёх часов, из них половина уходит на пересчёт.
let Istochnik = Web.Contents(adres, [Timeout=#duration(0,0,2,0)]),
Tablica = Csv.Document(Istochnik, [Delimiter=";"])
in Tablica
Кто как это обходит?
Согласен с предыдущим ответом, но с одной оговоркой.
Падение позиций показывайте вместе с причиной или хотя бы с гипотезой. Голая цифра вызывает панику и лишние разговоры.
Отчёт должен читаться без вас. Если для понимания нужен созвон, значит он не готов.
Тут есть тонкость, о которой обычно забывают.
Сырые данные храните отдельно от посчитанных. Ошибка в расчёте тогда стоит пересчёта, а не повторного сбора.
let Istochnik = Web.Contents(adres, [Timeout=#duration(0,0,2,0)]),
Tablica = Csv.Document(Istochnik, [Delimiter=";"])
in TablicaДолго держал старую схему, пока не упёрся.
Два миллиона строк таблице не по силам. Держите это в базе, а в таблицу отдавайте готовую сводку.
Динамику показывайте за период, который отражает работу: месяц для регулярных проектов, неделя для быстрых.
До этого работало? Что менялось перед тем, как сломалось?