# Отчёты

Документ описывает домен отчётов «Первой Формы»: обзор подсистемы, устройство отчёта, бизнес-правила, типовые сценарии, интерфейс, реестр системных отчётов и базовую аналитику Matomo. Целевая аудитория — администраторы отчётов, конечные пользователи и инженеры поддержки. Сертифицированная сборка (ФСТЭК) исключает подсистему отчётов на базе FastReport и Word-шаблонов — генерация и плановая генерация в ней недоступны.

## 1. Обзор, устройство и бизнес-правила отчёта

Шаблон отчёта и конфигурация площадки описывают источники данных независимо, поэтому со временем они могут разойтись: источник переименован или удалён в интерфейсе, а объявление в шаблоне осталось, или наоборот. Раньше расхождение замечали только по косвенным признакам или узнавали от поддержки — теперь состояние шаблона видно на странице источников отчёта: система сверяет шаблон с конфигурацией и показывает предупреждения, а кнопка «Синхронизировать шаблон» приводит шаблон в соответствие.

Отчёты формируют бизнес-документы и аналитику из данных задач и дополнительных параметров.

Поддерживаемые механизмы:

- генератор отчётов FastReport (десктопный и онлайн-конструктор);
- Word-шаблоны с тегами;
- расписания автоматической генерации.

> **Для сертифицированной сборки (ФСТЭК):** подсистема отчётов на базе FastReport и Word-шаблонов недоступна — соответствующие библиотеки исключены из сборки. Генерация отчётов, плановая генерация и экспорт в PDF в сертифицированной сборке не работают.

Отчёт складывается из нескольких составляющих:

- сам отчёт (шаблон, оформление, права доступа);
- фильтр — условия отбора данных;
- параметры и настройки экспорта;
- расписание автоматического запуска.

В основе работы отчётов лежит несколько правил:

1. Видимость отчёта определяется правами пользователя или группы.
2. Отчёт корректен только при согласованных фильтрах и шаблоне.
3. Ошибки импорта или экспорта не должны повреждать рабочую версию отчёта.
4. Тяжёлые отчёты лучше запускать по расписанию.

## 2. Основные сценарии

Работа с отчётами укладывается в несколько типовых сценариев.

### 2.1 Сценарии: настройка, фильтры, генерация, расписание

Полный цикл работы с отчётом включает четыре последовательных этапа — от первоначальной настройки до автоматической рассылки.

1. Настройка отчёта администратором. Создание или изменение карточки отчёта, загрузка шаблона, настройка параметров вывода.

2. Настройка фильтров. Связка отчёта с фильтрами и параметрами пользовательского ввода для корректного среза данных.

3. Генерация отчёта пользователем. Пользователь запускает отчёт с параметрами; система формирует готовый файл или экранное представление.

4. Плановая генерация. По расписанию отчёты формируются в фоне и сохраняются в заданное место (например, в папку Диска) или рассылаются получателям.

## 3. Пользовательский интерфейс отчётов

### ### 3.1 Главная страница отчётов

**Доступность отчётов.** Список отчётов зависит от компании и прав конкретного пользователя.

**Правило доступа к каталогу по задаче.** В каталог отчётов, открываемый по задаче — раздел «Отчёты», пункт «Отчёты» в меню карточки задачи и тот же каталог в мобильном приложении, — попадают отчёты, доступные пользователю по правилу «право на категорию или доступ хотя бы к одной задаче этой категории». Для мобильного каталога действует то же правило: отдельной, более слабой проверки у него нет.

**Скрытый отчёт без права просмотра.** Отчёт с признаком «Скрыт», права просмотра внешнего объекта у которого нет, в каталоге не показывается — ни при открытии своей задачи, ни при открытии чужой.

**Запрет коммерческой информации.** Если у пользователя есть спецправо запрета коммерческой информации, запрос каталога отчётов по задаче отвечает отказом в доступе — отчёт не показывается ни в мобильном, ни в веб-каталоге.



Раздел «Отчёты» открывается из меню приложений или из боковой панели навигации. Слева — дерево отчётов и папок, справа — навигационный лендинг с быстрым доступом к рабочим отчётам.

1. **«Продолжить работу»** — карточки последних открытых отчётов (до шести). В карточке — пиктограмма отчёта, название и подстрочник с именем папки; клик открывает отчёт, клик с `Ctrl` или `Cmd` — в новой вкладке. Если недавних отчётов нет, выводится «Список пуст».
2. **Вкладки «Недавние», «Избранные» и «Все»** — переключают набор карточек лендинга; выбор не влияет на дерево слева.
3. **Поиск по отчётам** — строка над карточками ищет отчёт по названию среди доступных пользователю.
4. **Дерево отчётов** — слева, с папками и вложенностью; папка раскрывается, отчёт открывается кликом. Состав дерева определяется правами пользователя.

Лендинг показывает только те отчёты, к которым у пользователя есть доступ: скрытый отчёт не появляется ни в недавних, ни в поиске.
## 4. Системные отчёты

Типовые отчёты, поставляемые в составе платформы. Доступны через раздел «Отчёты» в навигации (видимость зависит от прав).

<img src="https://help.1forma.ru/help-images/reports/reports-02.png" alt="Раздел «Отчеты»: список отчётов и контекстное меню (избранное, онлайн-редактор)" width="360">

Часть отчётов строится по конкретному объекту — задаче, сотруднику, категории, разделу или группе. Из карточки объекта такой отчёт открывается сразу с нужным объектом:

- **Из карточки задачи**: меню «Больше» → «Отчёты» → название.
- **Из профиля пользователя**: вкладка «Отчёты».

Если такой отчёт открыт без объекта — например, из раздела «Отчёты» в навигации или по прямой ссылке, — вместо отчёта появляется подсказка с типом объекта. Сотрудника, категорию или раздел выберите в списке — отчёт построится сразу. Для задачи введите её номер, для группы — идентификатор, и нажмите «Построить».

### 4.1 Активность и время

Отчёты об активности пользователей и времени работы в системе:

| Отчёт | Описание |
|-------|----------|
| **Активность пользователей** | Статистика по дням: созданные задачи, сообщения, подписи, переходы по маршруту. Служебные пользователи не учитываются. |
| **Время активности пользователей в системе** | Онлайн-время по группам. Два режима: подробный (по часам) и сокращённый (итого за день). |
| **Время активности пользователя в системе** | Онлайн-время конкретного пользователя. Открывается из профиля пользователя. |
| **Итоги дня** | Завершённые и просроченные задачи текущего пользователя за выбранный день. Можно сформировать за любой день, указав его в фильтре. |
| **Отчёт по входу сотрудников** | Вход в систему: компьютер, приложение, дата/время. Флаг «Первый вход» — только первый вход за день. |

**Методология «Активности пользователей».** Пользователь считается активным, если за день выполнил хотя бы одно из четырёх действий: создал задачу, написал сообщение, обработал подпись или выполнил переход по маршруту. При подсчёте среднего количества действий на одного пользователя учитываются те же четыре действия. Итоги по колонкам «Количество созданных задач» и «Количество переходов» подсчитываются как сумма, а по колонкам «Количество активных пользователей» и «Среднее количество действий на одного пользователя» — как среднее арифметическое. Количество пользователей с лицензиями считается среди неуволенных пользователей, имеющих лицензию хотя бы на один модуль системы.

### 4.2 Задачи и сроки

Отчёты по задачам, их выполнению, срокам и просрочкам:

| Отчёт | Описание |
|-------|----------|
| **Общая статистика по задачам** | Все задачи категорий/разделов с временем реакции, просрочкой и временем выполнения. Доп. фильтры: группа, исполнитель, статус задачи. |
| **Поставленные задачи на группу** | Задачи с ответственными из выбранных групп, по категориям. Клик на категорию — детальный список. |
| **Работа по поставленным задачам** | Задачи по заказчику или исполнителю за период. Видны только задачи с доступом у текущего пользователя. |
| **Занятость сотрудников в группах за период** | Кол-во задач у сотрудников группы: поставленные, завершённые, среднее время реакции. |
| **Статистика загрузки сотрудника** | Завершённые задачи сотрудника по орг.единицам. Учитываются только ответственные. |
| **Статистика по сотруднику за период** | Завершённые задачи с детализацией по орг.единицам и трудозатратами (мин.). |
| **Задачи, не выполненные за рекомендуемый срок** | Нарушения рекомендуемого времени. Параметр задаётся в настройках категории. |
| **Отчёт по переносам сроков** | Задачи с переносами срока за период. Кол-во переносов — только за выбранный период. |
| **Статистика по просроченным задачам** | Два режима: просрочки в периоде / просроченные на текущий момент. |
| **Отчёт по статусам** | Время пребывания задач в каждом статусе. Итоговая таблица — среднее без группировки. |
| **Статистика исполнения задач группой для орг.единиц** | Задачи от заказчиков из орг.единицы, выполненные выбранной группой. |

**Колонки «Общей статистики по задачам».** В колонке «Время реакции» указывается рабочее время между датой создания задачи и фактическим началом её выполнения. Если для задачи назначен срок выполнения, в колонке «Просрочена на» указывается рабочее время между датой завершения задачи и сроком; если задача не завершена — рабочее время между текущей датой и сроком. В колонке «Время выполнения» указывается рабочее время между датой начала работы и датой завершения задачи; если задача ещё не завершена — рабочее время между датой начала работы и текущей датой.

**«Задачи, не выполненные за рекомендуемый срок».** В колонке «Рекомендуемый срок» отображается срок, рассчитанный с учётом рекомендуемого времени выполнения задачи в данной категории (указывается администратором в настройках категории). В отчёт выводятся только задачи из категорий, где этот параметр не пустой. Рекомендуемый срок отсчитывается от даты начала работы над задачей.

**Режимы фильтра «На текущий момент» («Статистика по просроченным задачам»).** Отчёт выводится в одном из двух режимов, в зависимости от значения параметра фильтра «На текущий момент». В режиме «На текущий момент» = «нет» (по умолчанию) выводятся задачи, в которых срок был перенесён, причём прежний срок был назначен позже даты начала периода, а новый срок — меньше даты окончания периода. В режиме «На текущий момент» = «да» выводятся задачи, которые в настоящее время являются просроченными и срок которых попадает в указанный период. Задачи упорядочены по возрастанию номеров.

### 4.3 Нарушения регламентов

Отчёты о нарушениях регламентных сроков работы с задачами:

| Отчёт | Описание |
|-------|----------|
| **Нарушения регламентов работы с задачами** | 6 таблиц: переносы сроков (>5 раз), задержка начала работы (>8 ч.), игнорирование вопросов заказчика (>4 ч.), нарушения подписей, несвоевременные назначения, нарушения сроков задач. ⚠️ Формируется долго — не выбирать более одного типа при большом периоде. |
| **Фиксация нарушений пользователей при работе** | Сводная статистика с круговой диаграммой, без группировки по категориям |

**Таблицы отчёта «Нарушения регламентов работы с задачами».** Отчёт состоит из шести таблиц нарушений, в каждой по клику на номер задачи открывается её карточка:

- *Нарушения переноса срока* — задачи, в которых срок переносился больше пяти раз без движения по маршруту, т.е. в одном и том же статусе. Принадлежность к группе определяется по ответственному исполнителю. Отбор по периоду — по дате создания задачи.
- *Нарушения срока начала работы* — задачи, в которых между назначением исполнителя и началом работы над задачей прошло более 8 рабочих часов. Нарушение проверяется для каждого исполнителя, независимо от того, является ли он ответственным. Отбор по периоду — по дате создания задачи.
- *Игнорирование вопросов заказчика* — задачи, в которых ответ на вопрос заказчика был дан позже, чем через 4 часа. Принадлежность к группе определяется по заказчику. Отбор по периоду — по дате вопроса.
- *Нарушение сроков подписи* — задачи, в которых есть просроченные подписи; или необработанные подписи без указания срока, но запрошенные более 4 рабочих часов назад; или подписи, обработанные позже чем через 4 рабочих часа после запроса. Отбор по периоду — по дате запроса подписи.
- *Несвоевременные назначения исполнителей* — задачи, в которых исполнители назначены позднее чем через 4 рабочих часа после создания задачи или не назначены, хотя с момента создания задачи прошло более 4 рабочих часов. Нарушение проверяется для каждого исполнителя, независимо от того, является ли он ответственным. Отбор по периоду — по дате создания задачи.
- *Нарушения сроков задач* — просроченные задачи, срок которых приходится в указанный период, или в которых срок был ранее назначен на указанный период, а потом сдвинут вперёд. Принадлежность к группе определяется по ответственному исполнителю.

В итоговой таблице подсчитывается общее количество видов нарушений без группировки по пользователям.

**Отличие «Фиксации нарушений пользователей при работе».** Отчёт строится по тем же шести типам нарушений, но в итоговой таблице и круговой диаграмме отображает общее количество видов нарушений без группировки по категориям и пользователям. Отличается формулировка третьей таблицы: вместо «Игнорирование вопросов заказчика» используется таблица *Игнорирование вопросов по задаче* — в неё попадают задачи, в которых ответ на вопрос любого другого пользователя (а не только заказчика) был дан позже, чем через 4 часа; отбор по периоду — по дате вопроса.

### 4.4 Подписи, диск и дополнительные отчёты

Подписи — отчёты по согласованию подписей и доступу к задачам:

| Отчёт | Описание |
|-------|----------|
| **Статистика по подписям** | Подписи за период: время обработки, просрочки. Фильтрация по типу, резолюции. |
| **Статистика по акцептантам** | Кол-во обработанных подписей и среднее рабочее время реакции по пользователю. |
| **Аудит доступа к задаче** | Пользователи с доступом к задаче + оргединицы и руководители. Только из карточки задачи. |

Файлы и диск — отчёты об использовании дискового пространства и доступе к файлам:

| Отчёт | Описание |
|-------|----------|
| **Использование дискового пространства** | Объём файлов по папкам. Разделы: мои файлы, общие, файлы в задачах. |
| **История доступа к файлам** | Файлы папки: версии, кто работал, дата. Группировка по местоположению. |

Отчёты по отсутствиям и журнал действий пользователей — другие полезные отчёты:

| Отчёт | Описание |
|-------|----------|
| **Диаграмма Ганта по отсутствиям** | Таблица и Ганта-вид отсутствий. Фильтрация по типу: отпуск, встреча, удалённая работа, прочее. |
| **Журнал регистрации действий пользователей** | Действия выбранного типа за период. Фильтрация по пользователю, действию, номеру задачи. |

### 4.5 Трудозатраты

Отчёты по плановым и фактическим трудозатратам — по задачам, проектам, категориям и сотрудникам:

| Отчёт | Открывается откуда |
|-------|-------------------|
| **Табель трудозатрат** | Раздел «Отчёты». Детализация: по дням, неделям, месяцам. |
| **Трудозатраты по задачам** | Раздел «Отчёты». Группировка по исполнителям, колонка «Длительность» (начало→завершение). |
| **Трудозатраты по задачам категории** | Раздел «Отчёты». |
| **Табель трудозатрат по категории** | Раздел «Отчёты». |
| **Табель трудозатрат по задаче** | Карточка задачи → «Отчёты». Список категорий — настраивается администратором. |
| **Табель трудозатрат по проекту** | Карточка родительской задачи → «Отчёты». |
| **Трудозатраты по задачам проекта** | Карточка задачи → «Отчёты». Все задачи проекта, включая без трудозатрат. |
| **Трудозатраты по задачам категории** | Раздел «Отчёты». |
| **Табель трудозатрат по сотруднику** | Профиль пользователя → вкладка «Отчёты». |
| **Статистика по сотруднику за период** | Раздел «Отчёты». Включает минуты трудозатрат. |

![Пример сформированного отчёта: табель трудозатрат по проекту с планом и фактом](https://help.1forma.ru/help-images/reports/system_report-01.png)

### 4.6 Мобильное приложение

Отчёты об использовании мобильных приложений сотрудниками:

| Отчёт | Описание |
|-------|----------|
| **Статистика использования мобильных приложений** | Платформа, версия, прошивка, последний вход. Типы: Install / Session / Work / PUSH-токены. |
| **Лог мобильных приложений** | Аналог отчёта выше с группировкой по заголовкам |
| **Отчёт геолокации** | Карта треков пользователей. Требует настройки геолокации. Подробнее: [mobile/admin.md](https://help.1forma.ru/domains/mobile/admin.md#8-геолокация) |

**Типы данных мобильных отчётов.** Из выпадающего списка (фильтра) выбирается тип данных, по которым формируется отчёт:

- *Install* — установка мобильного приложения и его обновления;
- *Session* — сессии пользователей;
- *Work* — действия пользователей в приложении: просмотр ленты, задач, сообщений, чатов и т.д.;
- *PUSH-токены* — доступны только в отчёте «Статистика использования мобильных приложений».

Если включён параметр «Последняя версия», в отчёте выводится только последнее действие каждого пользователя за выбранный период. Доступна фильтрация по периоду, а также сортировка по приложению, данным пользователя (ID, Ник, Имя), дате и времени, устройству, версии, названию, модели устройства.

**Различие «Лога» и «Статистики».** Оба отчёта показывают данные об использовании мобильных приложений по отдельным пользователям (платформы, версии, прошивки, последний вход в приложение и пр.), но различаются назначением:

- *Лог мобильных приложений* — детализированный журнал событий: позволяет отслеживать конкретные действия пользователей в разрезе устройств и версий приложения. Записи по умолчанию отображаются в обратном хронологическом порядке (сверху последние); направление сортировки меняется кликом по имени колонки. Для группировки данных заголовки нужных столбцов перетаскиваются в соответствующее поле, для отмены — перетаскиваются обратно.
- *Статистика использования мобильных приложений* — сводная аналитика: показывает агрегированные данные без детализации по событиям и дополнительно поддерживает тип данных PUSH-токены.

## 5. Базовая аналитика (Matomo) Просмотры страниц считаются по нормализованному адресу: параметры и якорь в отчёт не попадают, а заголовок страницы совпадает с именем открытого раздела или объекта. Переходы внутри приложения, не меняющие страницу, отдельными просмотрами не считаются.

«Первая Форма» предоставляет базовую аналитику через интеграцию с системой Matomo (веб-аналитика). Функцию предварительно включает администратор системы.

В отчёты посещаемости адрес страницы попадает без параметров запроса и без якоря. Параметры вроде выбранной вкладки, открытой задачи или режима чата остаются в адресной строке браузера и по ссылке работают как раньше, но в отчёте одна и та же страница не дробится на отдельные строки из-за них: собирается сводка по страницам, а не по каждому сочетанию параметров.

Заголовок вкладки браузера у основных страниц совпадает с именем раздела или открытого объекта и не содержит числа непрочитанных сообщений — иначе одна и та же страница учитывалась бы как разные. При вставке ссылки площадки в сообщение подтягиваются заголовок и описание этой страницы.

В админке заголовок вкладки начинается с имени открытой категории и её номера, а для раздела внутри категории дополняется именем раздела. На главной странице админки заголовок — «Администратор» и имя приложения, без числа непрочитанных.

### 5.1 Возможности, инструменты и представления Matomo

Система отслеживает и анализирует активность пользователей на портале:

- посещаемость страниц и разделов системы;
- источники переходов (прямые переходы, ссылки);
- действия на страницах — переходы по ссылкам, длительность сессий;
- географию посетителей;
- устройства и программное обеспечение.

Доступны следующие инструменты:

- управление пользователями и сайтами;
- автоматические PDF/HTML-отчёты по электронной почте;
- графики: круговые диаграммы, столбчатые диаграммы, облака тегов;
- экспорт данных в форматах CSV, XML, PHP, Excel, JSON;
- API для доступа к данным;
- мобильные приложения iOS/Android.

В разделе аналитики доступны представления:

- обзор посещений;
- журнал посещений;
- карта в реальном времени;
- локации посетителей;
- устройства и программное обеспечение.
