Документация 0.4 Отчёты
Рассылки, проверки данных и отчёт → очередь
Сохранённые запросы и отчёты работают и без человека: приходят руководителю по расписанию, проверяют данные после каждого задания и превращают результат запроса в работу для роботов. Разделы — вкладки «Рассылки», «Проверки данных» и «В очередь» раздела «Отчёты».
Расписание у всех трёх одинаковое: «Запускать по расписанию» → «Как часто» («По рабочим дням», «Каждый день», «По дням недели», «Раз в месяц», «Каждый час» или «Своё (cron)»), «Время», «Часовой пояс», «Производственный календарь» и «В нерабочий день». Если сервер был выключен, пропущенный запуск выполняется один раз при следующей проверке.
Рассылки #
Пример: каждый рабочий день в 08:00 главный бухгалтер получает в Excel платежи за вчера.
- «Отчёты» → «Рассылки» → «Создать рассылку», «Название» — „Платежи за день“.
- «Источник»: «Сохранённый запрос» (например, „Неуспешные платежи за вчера“) и «Значения параметров» —
from = yesterday,to = today; или «Отчёт с фильтром» — отчёт „Платежи“ и «Фильтр записей» в виде адреса страницы отчёта:createdFrom=yesterday&createdTo=today&f.status=Ошибка. - «Формат»: «Excel (XLSX)» или «CSV».
- «Получатели»: «Пользователи области» (на их e-mail и, если отмечено, в привязанный Telegram), «Другие адреса e-mail», «Чаты Telegram (chat_id)», вебхук. «Текст сообщения» добавится к письму.
- Расписание: «По рабочим дням»,
08:00, календарь „Производственный календарь КР 2026“. - «Сохранить», затем «Отправить сейчас» — проверить, что письмо дошло.

Каналы — те же, что у оповещений: письмо с вложением, документ в Telegram, вебхук с JSON и файлом в base64. Файл больше 20 МБ не вкладывается — в сообщении ссылка на рассылку в панели.
«История» показывает каждую отправку: доставлено, доставлено не всем или не доставлено — по каждому адресу. Если хоть один получатель не получил файл, появляется оповещение „Рассылка отчёта не удалась“; следующая успешная рассылка закрывает его. «Скачать файл» в истории собирает файл заново из текущих данных.
Проверки качества данных #
Правило — сохранённый запрос, который не должен возвращать строк: „платёж без суммы“, „дубликаты номера за день“, „сумма за день отличается от выписки“. Нашлись строки — оповещение „Проверка качества данных“ с числом строк и первыми 20 строками.
- Сохраните запрос, например „Платёж без суммы“:
SELECT number, _job_number AS job, _robot AS robot, _created_at FROM r_payments WHERE amount IS NULL OR amount = 0 - «Отчёты» → «Проверки данных» → «Создать правило»: «Название», «Сохранённый запрос», «Уровень оповещения» («информация», «предупреждение» или «критично»).
- Когда проверять: «После каждого задания процессов» — например, „Загрузка выписок“ (перед проверкой копия данных обновляется), и/или «Запускать по расписанию».
- «Сохранить»; «Проверить сейчас» — проверка без ожидания.

История проверок — время, «чисто», «есть строки» или «ошибка запроса», число строк, длительность, задание, после которого проверяли. Когда правило снова чистое, оповещение закрывается само; ошибка запроса записывается в историю и оповещение не трогает.
Отчёт → очередь #
Строки результата запроса становятся элементами очереди. Например, каждое утро повторно обработать все неуспешные платежи за вчера.
- «Отчёты» → «В очередь» → «Новая загрузка».
- «Сохранённый запрос» и «Значения параметров», «Очередь» — например, „Платежи“.
- «Колонка ссылки» — ссылка элемента (номер платежа). Строка со ссылкой, которая уже есть в очереди или повторяется в результате, пропускается как дубликат — всегда, чтобы повторная загрузка ничего не добавляла дважды.
- «Поля payload» — по строке
поле = колонка(Номер = number,Сумма = amount); пусто — все колонки под своими именами. - «Приоритет» и «Срок» — одинаковые, из колонки или «как у очереди»; срок можно задать «через N часов».
- «Предпросмотр» показывает, сколько строк будет добавлено, сколько дубликатов, и первые элементы.
- «Загрузить в очередь» — один раз; «Сохранить загрузку по расписанию» — например, по рабочим дням в 07:30.

За раз загружается до 10 000 строк. У элемента в очереди источник — „отчёт“ с именем запроса и временем загрузки. Нужны права на SQL-запросы и на элементы очередей области (разработчик или владелец).