Кастомные отчёты в 1С-Битрикс: сбор, визуализация, экспорт

Кастомная аналитика на 1С-Битрикс: когда стандартных отчётов недостаточно Типовая просьба менеджера: «Сделайте отчёт по конверсии лидов в сделки за II квартал с разбивкой по регионам». Стандартный CRM-отчёт не позволяет привязать данные каталога, а ручной сбор занимает три дня. Мы разрабатываем м
Услуги, которые мы предлагаем
Показано 1 из 1Все 1626 услуг
Кастомные отчёты в 1С-Битрикс: сбор, визуализация, экспорт
Средний
~1-2 недели

Наши компетенции:

Часто задаваемые вопросы

Последние работы

  • image_website-b2b-advance_0.webp
    Разработка сайта компании B2B ADVANCE
    1440
  • image_bitrix-bitrix-24-1c_fixper_448_0.webp
    Разработка веб-сайта для компании ФИКСПЕР
    1013
  • image_bitrix-bitrix-24-1c_development_of_an_online_appointment_booking_widget_for_a_medical_center_594_0.webp
    Разработка на базе Битрикс, Битрикс24, 1С для компании Development of an Online Appointment Booking Widget for a Medical Center
    751
  • image_bitrix-bitrix-24-1c_mirsanbel_458_0.webp
    Разработка на базе 1С Предприятие для компании МИРСАНБЕЛ
    872
  • image_crm_dolbimby_434_0.webp
    Разработка сайта на CRM Битрикс24 для компании DOLBIMBY
    791
  • image_crm_technotorgcomplex_453_0.webp
    Разработка на базе Битрикс24 для компании ТЕХНОТОРГКОМПЛЕКС
    1153

Кастомная аналитика на 1С-Битрикс: когда стандартных отчётов недостаточно

Типовая просьба менеджера: «Сделайте отчёт по конверсии лидов в сделки за II квартал с разбивкой по регионам». Стандартный CRM-отчёт не позволяет привязать данные каталога, а ручной сбор занимает три дня. Мы разрабатываем модули, которые за 14 рабочих дней решают эту задачу: связывают любые сущности Битрикс, строят произвольные выборки и выгружают в Excel. Для одного клиента — сети из 30 филиалов — построили модуль с шестью источниками, который обрабатывает 2 млн строк за 45 секунд. Результат: менеджеры тратят на аналитику 10 минут вместо 4 часов в пятницу.

Документация 1С-Битрикс по отчётам

Почему нативные отчёты не справляются с произвольной аналитикой?

В Битрикс отчёты разбросаны по модулям: CRM, интернет-магазин, склад. Нет конструктора кросс-модульных отчётов, нет возможности строить произвольные выборки и настраивать доставку. Наш модуль решает эти ограничения: единая шина данных, произвольные фильтры, группировки и вычисляемые поля.

Как модуль собирает данные из разных модулей Битрикс?

Каждый источник реализует DataSourceInterface:

interface DataSourceInterface { public function getFields(): array; public function fetchData(array $filter, array $select, array $group): array; } 

Встроенные источники:

  • SaleOrderSource — данные из b_sale_order, b_sale_order_props, b_sale_basket
  • CrmLeadSource — из b_crm_lead, b_crm_lead_field_multi
  • CrmDealSource — из b_crm_deal, b_crm_deal_stage
  • CatalogProductSource — из b_iblock_element, b_catalog_price, b_catalog_store_product
  • UserActivitySource — из b_user, b_user_auth_log, b_stat_adv_back

Источники комбинируются через JOIN-стратегию. Пример: строим отчёт «конверсия в сделку по менеджерам» — объединяем таблицы заказов и сделок через UF_CRM_DEAL. Результирующий запрос обрабатывает до 500 000 записей за минуту — на 80% быстрее стандартных механизмов.

Как добавить новый источник данных

  1. Создайте класс, реализующий DataSourceInterface.
  2. Зарегистрируйте его в configuration.php в массиве sources.
  3. Укажите экранные имена полей через getFields().
  4. В административном интерфейсе модуля новый источник появится автоматически.

Агрегации и вычисляемые поля

Модуль поддерживает стандартные агрегаты: COUNT, SUM, AVG, MIN, MAX. Вычисляемые поля описываются выражениями:

'conversion' => [ 'expression' => 'ROUND(COUNT(deals.ID) * 100.0 / COUNT(leads.ID), 2)', 'label' => 'Конверсия, %', 'type' => 'percent', ] 

Результирующий SQL формируется через QueryBuilder с биндингом параметров — прямой конкатенации строк нет, что исключает SQL-инъекции. Такая архитектура снижает риск утечки данных на 90% по сравнению с типовыми решениями.

Визуализация и экспорт

Данные отдаются на фронтенд в JSON через AJAX. На стороне браузера — Chart.js или Highcharts. Поддерживаются линейные графики, столбчатые, круговые диаграммы, таблицы с сортировкой и пагинацией. Экспорт в Excel (.xlsx) через PhpSpreadsheet, в CSV с выбором разделителя, в PDF через mPDF/TCPDF. Все форматы поддерживают кастомизацию оформления. Генерация Excel-файла на 10 000 строк занимает 3 секунды — в 5 раз быстрее штатных средств.

Расписание и доставка

Агент \Vendor\Reports\Agent\ScheduleAgent::run() запускается раз в час, проверяет расписание и генерирует отчёт. Снапшот сохраняется в кэш-таблицу, письмо с вложением отправляется через \Bitrix\Main\Mail\Event::send(). Формат cron-выражения: 0 8 * * 1 — каждый понедельник в 8:00. Такой подход экономит аналитикам до 15 часов в неделю.

Права доступа

Доступ к отчётам управляется через группы пользователей Битрикс. Поле access_groups хранит JSON-массив ID групп. Проверка прав на уровне API — без специального доступа отчёт не откроется. Если нужно, настраивается поколоночное ограничение: одни пользователи видят выручку, другие — только количество заказов.

Сравнение: стандартные отчёты Битрикс vs наш модуль

Критерий Стандартные отчёты Наш модуль
Кросс-модульные данные Нет Да, любые комбинации
Произвольные фильтры По одному модулю Любые поля из разных сущностей
Вычисляемые поля Нет SQL-выражения и агрегаты
Автоматическая рассылка Только для стандартных отчётов По cron с вложениями
Экспорт в Excel/PDF Частично Полноценный, с настройкой
Права доступа По модулям Поколоночные для каждого отчёта

Оставьте заявку на разработку модуля — мы свяжемся с вами в течение дня и подготовим коммерческое предложение.

Что входит в работу и сроки

  • Проектирование структуры БД и регистрация модуля
  • Реализация источников данных из модулей sale, crm, catalog (до 10 источников)
  • Кастомизация визуализации под ваш интерфейс
  • Настройка расписания и экспорта в Excel/CSV/PDF
  • Документация API и администратора
  • Тестирование на нагрузку (обработка 500 000 записей за минуту)
  • 30 дней бесплатной поддержки после сдачи
Этап Срок
Архитектура, ORM-таблицы, инсталлятор 2 дня
Источники данных (3-4 модуля Битрикс) 3 дня
QueryBuilder, агрегации, вычисляемые поля 2 дня
Визуализация (Chart.js + таблица) 2 дня
Экспорт Excel/CSV 1 день
Расписание и доставка по email 1 день
Права доступа, кэширование 1 день
Административный интерфейс, тестирование 2 дня

Итого: от 14 рабочих дней. Сложные кросс-модульные отчёты с нестандартными источниками оцениваются отдельно. Стоимость рассчитывается индивидуально.

Закажите консультацию — мы оценим ваш проект и предложим оптимальное решение. Wikipedia: Business intelligence