VK Video
В каком виде дата хранится в префильтре?
Если вы выбираете поле типа Дата
, то в Y-m-d
или в Y-m-d H:i
.
Как быть если в строчной части используется дата-время, а выбрать надо именно по дате?
Есть несколько подходов:
Создать техническое поле в строчной части, где через dateFormat
преобразовывать в Y-m-d
.
Не привязывать к строчной части поле префильтра в котором выбирается дата, а сделать два скрытых поля префильтра с параметрами интервальный. Привезать к дате-времени в строчной части именно их, и в них рассчитывать значение кодом:
Для стартового:
=: dateFormat(date: #fl_date; format: "Y-m-d 00:00")
Для завершающего:
=: dateFormat(date: #fl_date; format: "Y-m-d 23:59")
Сравнение стартового и завершающего идет по принципу больше/меньше или равно — те крайние значения входят в интервал.
Как быть если надо выбирать по месяцу?
Аналогично через техническое поле в строчной части или через два интервальных технических поля префильтра:
Для стартового:
=: dateFormat(date: #fl_date; format: "Y-m-01")
Для завершающего:
=: dateAdd(date: #fl_teh_start; days: $days)
days: dateFormat(date: #fl_teh_start; format: "t") - 1
// Здесь мы нахдим последний день месяца по первому