AGO в DataLens возвращает NULL: как восстановить сравнение продаж с прошлым периодом
Почему AGO в DataLens не находит прошлогодние продажи: точность даты, фильтр года и зависимые измерения. Порядок диагностики без подмены пропусков нулями.
Содержание статьи
NULL в сравнении DataLens с прошлым периодом не всегда означает нулевые продажи. AGO ищет значение на конкретном временном смещении, поэтому результат зависит от наличия даты, точности времени и условий запроса. Справка проверена редакцией 14 октября 2026 года.
Начните с пары конкретных дат
Для учебного сравнения выберите один товар и один день, затем найдите его показатель на соответствующий день предыдущего года в источнике. Если записи нет, формуле нечего возвращать. Не заменяйте пропуск нулём, пока не доказано, что данные за этот день полные.
AGO отличается от LAG: первая функция использует календарное смещение, вторая — положение строки. Замена функции ради исчезновения пустоты может поменять вопрос. Предыдущая доступная запись после длинного перерыва не равнозначна предыдущему календарному дню.
Проверьте время внутри даты
Документация предупреждает: данные могут существовать на тот же день, но на другую секунду. Если сравниваются дневные продажи, сначала приведите временную ось к согласованной дневной детализации. Не смешивайте точное время заказа и дневной итог в одном ожидании совпадения.
Контрольный пример редакции: две продажи относятся к 14 октября разных лет, но имеют время 10:15 и 11:40. Для анализа дня эти часы не должны определять наличие прошлого периода. Сначала проверьте дневную сумму в простой таблице, затем подключайте сравнение.
Выясните, какой фильтр убрал историю
Фильтр по отдельному вычисляемому полю года способен исключить прошлогодние строки. В справке показано использование BEFORE FILTER BY для расчёта до такого ограничения. При этом временное измерение, переданное вторым аргументом AGO, автоматически включается в этот механизм; дополнительные производные поля требуют отдельного разбора.
Не снимайте все фильтры сразу. Сохраните магазин и товар, уберите только спорный год и сравните результат. Иначе восстановленная сумма может относиться ко всем кабинетам, а не к выбранному бизнесу. Проверьте и связи селекторов, чтобы понимать реальное влияние каждого элемента.
Проверьте зависимые измерения
Если рядом с датой стоит поле месяца, при сдвиге на месяц запрос может одновременно требовать старую дату и нынешний номер месяца. Для такого случая предусмотрен IGNORE DIMENSIONS. Применяйте его к конкретному мешающему измерению, сохраняя нужную товарную детализацию.
После исправления проверьте три ситуации: обычное совпадение, реальный пропуск истории и день с несколькими операциями. Подпишите метод сравнения на графике. Если источник обновляется вручную, отдельно подтвердите полноту загруженного снимка. Восстановленный прошлый период должен объясняться данными и правилами запроса, а не общей заменой NULL красивым числом.
Материал отражает сведения на указанную дату. Правила и условия работы площадок могут измениться. Редакционные принципы