Вносим дату и время из бота
Мы можем вносить дату в базу в текстовом формате, но тогда будет недоступна сортировка строк по дате. Поэтому нужен формат именно даты.
{{YEAR}}+"-"+{{MONTH}}+"-"+{{DAY}}{{HOURS}}+":"+{{MINUTES}}Рабочие формулы для связки PuzzleBot и базы данных NocoDB: даты, недели, дни, финансовые показатели и важные нюансы работы с таблицами.
Мы можем вносить дату в базу в текстовом формате, но тогда будет недоступна сортировка строк по дате. Поэтому нужен формат именно даты.
{{YEAR}}+"-"+{{MONTH}}+"-"+{{DAY}}{{HOURS}}+":"+{{MINUTES}}Чтобы дата из блока календаря встала правильно в базу, нужно добавить форматирование для переменной даты календаря.
DATE_FORMAT({{data_diary}}, "Y-m-d")По умолчанию дата выводится в формате yyyy-mm-dd. Визуально это плохо читается, поэтому меняем порядок цифр.
{{= DATE_FORMAT("[[date]]", "d.m.Y") =}}По умолчанию переменные статистики в боте обнуляются в 3 ночи по Мск. Чтобы дата в базе была правильной, сначала минусуем один день, потом форматируем.
ADD_DAYS({{CURRENT_DATE}}, -1)
DATE_FORMAT({{DAY_BEFORE}}, "Y-m-d")Для некоторых механик нужно вытаскивать номер недели. Можно считать номер недели от текущей даты или от даты, внесенной через календарь.
DATE_FORMAT({{CURRENT_DATE}}, "W")
DATE_FORMAT({{data_diary}}, "W")Есть два способа считать дни в боте: через сценарий на старте или через формулу в таблице. Здесь {date} — это столбец с датой входа.
(DATETIME_DIFF(NOW(), {date}, "days") + 1)Формула берет данные из столбца с суммой всех оплат подписчика и делит на их число.
ROUND(({payments_all} / {payments_count}))Считает разницу в днях между первой и последней покупкой: сколько дней подписчик активен с точки зрения продаж.
DATETIME_DIFF({date_last_pay}, {date_1_pay}, "days")Формула помогает увидеть общий срез по покупкам. Со статусом «Неактивный» можно настраивать отдельные механики.
IF((DATETIME_DIFF(NOW(), {date_last_pay}, "days") <= 30), "Активный", IF((DATETIME_DIFF(NOW(), {date_last_pay}, "days") > 60), "Неактивный"))Сюда можно добавить еще варианты для полноценного анализа: сегменты, повторные оплаты, продления и статусы по продуктам.
База находится на российских серверах. Персональные данные нельзя хранить где попало.
Лимиты больше, чем у Google таблиц. В новых таблицах 600 запросов в минуту на проект.
Можно спокойно двигать столбцы в таблице, на выдачу в боте это не повлияет.
Связать таблицу с ботом стало проще и нет риска блокировки аккаунта.
Чтобы увидеть новую информацию в таблице, нужно обновить страницу.
Привычные Google-формулы здесь не работают, но есть свой набор встроенных решений.
На одном развороте видно только 25 строк. Чтобы увидеть больше, нужно листать базу.
Если удалить таблицу, ее не получится восстановить. Лучше делать бэкапы.
Если изменить тип данных в столбце, данные могут слететь. Перед этим лучше сохранить таблицу.
Названия столбцов должны быть на английском, иначе бот может неверно обработать данные.
Сайт использует cookies и сервис веб-аналитики Яндекс.Метрика. Продолжая работу с сайтом, вы соглашаетесь с условиями политики конфиденциальности. Cookies можно изменить в настройках браузера.