# Организационная структура

Документ описывает организационную структуру в 1Форме: иерархию подчинённости, определение руководителя, связь с группами пользователей, типовые сценарии настройки и реорганизации, пользовательский интерфейс дерева оргструктуры и ограничения при построении иерархии.

## Назначение и виды оргструктуры

Оргструктура определяет:

1. **Иерархию подчинённости** — кто кому подчиняется.
2. **Руководителя пользователя** — для эскалации задач и подписей.
3. **Доступ руководителей** к задачам подчинённых.
4. **Автоматическое членство** в группах через связь орг.единицы с группой.
5. **Визуальное представление** организации.

На площадке может быть **несколько оргструктур**, переключаемых в интерфейсе.

**Организационная** — штатное расписание, юридическая иерархия (Компания → Филиал → Департамент → Отдел → Должность).

**Функциональная** — подчинённость по функциям, не по территории. Пример: менеджеры по продажам в разных филиалах территориально подчиняются директорам филиалов, но функционально — коммерческому директору холдинга. Именно функциональная структура чаще используется для автоматизации процессов, эскалации, контроля доступа.

Функциональными могут быть элементы **любого уровня** — не только должности, но и подразделения. Организационные единицы из разных ветвей могут быть привязаны к общей функциональной единице.

## Элементы оргструктуры

**Типы орг. единиц**

Справочник типов определяет допустимые уровни иерархии. Каждый тип имеет:

- **Название** (Филиал, Департамент, Отдел, Группа и т.д.)
- **Порядок** — числовой уровень; дочерний элемент должен иметь **строго больший** уровень, чем родитель
- **Признак «Является должностью»** — ровно один тип помечается как должностной; только элементы этого типа могут иметь назначенную должность

Типы настраиваются **до создания** самой оргструктуры.

**Орг. единицы**

Узел дерева. Основные атрибуты:

- **Входит в** — родительский элемент; для корневых не задаётся
- **Порядок единицы** — положение среди соседей с тем же родителем; корневые элементы образуют отдельный уровень. Задаётся числом в карточке единицы на вкладке «Настройки» (см. [admin.md](https://help.1forma.ru/domains/org-structure/admin.md))
- **Тип** — из справочника типов
- **Должность** — только для элементов с типом «Является должностью»
- **Связанная группа** — привязка к группе пользователей
- **Актуальность** — неактуальные единицы (нет сотрудников) отображаются серым
- **Функциональная** — признак функциональной единицы
- **Не показывать в оргструктуре** — скрывает элемент в интерфейсе и в списках выбора

**Должности**

Плоский справочник названий должностей (Генеральный директор, Менеджер, Бухгалтер). Должность назначается конкретному элементу оргструктуры типа «Должность».

**Пользователи в оргструктуре**

Пользователь может входить в **несколько** орг. единиц, но только одна из них — **основная**.

## Определение руководителя и связь с группами

Руководитель пользователя — это пользователь, занимающий **руководящую должность** в **ближайшем** родительском элементе оргструктуры. Алгоритм поднимается вверх по дереву до первого узла с руководящей должностью. Руководящих должностей в одной орг. единице может быть несколько — тогда у сотрудника несколько равнозначных руководителей. Друг для друга такие руководители руководителями не являются: для сотрудника на руководящей должности руководитель определяется уровнем выше по дереву.

Администратор может переопределить руководителя вручную для отдельных пользователей. Технические детали — в [admin.md](https://help.1forma.ru/domains/org-structure/admin.md).

Каждая орг. единица может быть **связана с группой** пользователей:

- При связывании состав группы **синхронизируется** с пользователями орг. единицы.
- Обновление вложенных групп: опция «Обновить связанные группы» пересчитывает членство по всему поддереву.
- Доступны массовая синхронизация всех связей и привязка всех дочерних единиц поддерева к группам (подробнее — в [admin.md](https://help.1forma.ru/domains/org-structure/admin.md)).

Для построения иерархии между самими группами (вне привязки к орг. единицам) используется смарт-действие [«Вложить группы в группы»](https://help.1forma.ru/domains/smart-actions/actions-reference.md).

## Типовые сценарии

**Первоначальная настройка**

Порядок первоначальной настройки оргструктуры:

1. Настроить типы оргструктуры (порядок уровня, является ли должностью)
2. Создать дерево единиц (вручную / импорт из AD / 1C / Excel)
3. Назначить должности элементам типа «Должность»
4. Привязать пользователей к единицам
5. Связать единицы с группами (для автоматического членства)

**Реорганизация**

При изменении структуры компании:

- Смена родителя у единицы перемещает всё поддерево
- Место единицы внутри уровня задаётся полем «Порядок» в карточке: после переноса к другому родителю единица оказывается в конце нового уровня, порядок остальных элементов не меняется
- Смена типа/родителя может повлиять на доступность потомков в интерфейсе (ограничение по порядку уровня)
- После реорганизации — синхронизация связанных групп

**Увольнение / перевод сотрудника**

При кадровых изменениях членство в группах пересчитывается автоматически:

- Удаление из орг. единицы → снимается членство в связанной группе, пришедшее от этой единицы; добавленное вручную остаётся
- Перемещение в другую единицу → автопересчёт основной единицы и групп

## Пользовательский интерфейс оргструктуры

**Представление оргструктуры**

Оргструктура открывается по ссылке **Оргструктура** из меню **Сотрудники**. Отображается иерархическое дерево подразделений, должностей и сотрудников.
**Панель и отображение дерева.** На странице оргструктуры заголовок раздела над схемой не отображается. Панель управления расположена вертикально у правого края холста, по его центру.

Если на площадке настроено несколько оргструктур, выберите нужную в выпадающем списке над деревом. Ширина списка не превышает 300 px; длинное название обрезается многоточием. Если оргструктура одна, список выбора не отображается.

Холст диаграммы лежит на нейтральном сером фоне подложки страницы, поэтому карточки подразделений и сотрудников с белым фоном и кнопки панели читаются на нём контрастно.

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


![Дерево оргструктуры: узлы подразделений с комментариями и кнопками «Раскрыть» / «Скрыть»](https://help.1forma.ru/help-images/org-structure/orgstructure_tree.png)

**Элементы на схеме:**

| Обозначение | Элемент |
|---|---|
| Департамент с руководящей должностью | Корневой/родительский узел |
| Подотдел с руководителем | Дочерний узел |
| Сотрудник | Лист дерева (назначенный пользователь) |
| Сотрудник на нескольких должностях | Лист дерева с меткой «Ещё N должностей» под именем |
| Вакантная должность | Лист дерева (нет назначенного сотрудника) |

**Порядок элементов.** Подразделения и должности с одним родителем показываются в порядке, закреплённом за каждой единицей; при его совпадении — по названию, затем по идентификатору. Корневые элементы образуют отдельный уровень и упорядочены по тому же правилу — этот же порядок применяется в выпадающем списке переключения оргструктур. Новая единица встаёт в конец своего уровня, а при переносе к другому родителю — в конец нового уровня, не меняя мест остальных элементов.

**Цвет вертикали.** Администратор может задать подразделению цвет из фиксированной палитры. Карточка подразделения и все элементы ниже по дереву — подотделы, должности и сотрудники — выделяются этим цветом, пока у вложенного подразделения не задан свой цвет.

**Визуальные зоны карточки.**

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

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

**Руководители в шапке подразделения.** В шапке блока показываются руководители подразделения — те, у кого признак руководителя стоит на самом назначении: и назначенные на руководящую должность, и привязанные к подразделению напрямую. Если руководителей несколько, они перечисляются в шапке вместе. Сотрудник, привязанный к подразделению напрямую без такого признака, показывается обычной карточкой, а не в шапке.

**Скрытие пустых узлов.** Если в общих настройках приложения включено «Не показывать пустые узлы орг. структуры в интерфейсе пользователя», в дереве не показываются подразделения и должности, в поддереве которых нет ни одного работающего сотрудника; уволенные сотрудники не учитываются. Подразделение, к которому сотрудник привязан напрямую, без должности, считается непустым, как и все подразделения выше него. Вакантные должности внутри непустого подразделения остаются на схеме.

**Несколько оргструктур**

В системе может быть настроено несколько оргструктур. Переключение между ними выполняется через выпадающий список. В списке отображаются все корневые элементы оргструктур с неактивной опцией **Не показывать в орг. структуре**. По умолчанию открывается первая оргструктура в списке: первой считается единица с наименьшим порядком (при равенстве — по названию, затем по идентификатору).

**Навигация**

По дереву оргструктуры можно перемещаться несколькими способами:

- **Сворачивание/разворачивание** — кликом по элементам или кнопками «Развернуть все» и «Свернуть все» на боковой панели управления; после них масштаб подгоняется автоматически, чтобы дерево целиком осталось в поле зрения
- **Масштаб** — колесом мыши либо кнопками «Увеличить масштаб» и «Уменьшить масштаб» на той же боковой панели; кнопка «Выровнять по центру» возвращает дерево в центр области просмотра
- **Перетаскивание** — перемещение по структуре при зажатой кнопке мыши

**Что не запоминается.** Состояние раскрытых ветвей между входами не сохраняется: после повторного открытия страницы дерево снова свёрнуто. Запоминание сознательно не делали — вместо него поиск и метка «Ещё N должностей» сами раскрывают дерево до нужного сотрудника.


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

**Сотрудник на нескольких должностях.** Сотрудник, который занимает несколько должностей, нарисован на схеме в каждой из них. Чтобы это было видно, в каждой его карточке под именем выводится кликабельная метка **«Ещё N должностей»**, где N — число его карточек на схеме минус один. Если сотрудник занимает одну должность, метки нет и карточка ведёт себя как раньше. Метка появляется и в карточках руководителей, показанных внутри карточки подразделения.

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

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

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

### Сохранение схемы в PDF

На боковой панели управления расположена кнопка «Сохранить как». Перед сохранением дерево автоматически раскрывается целиком — в файл попадает всё дерево, а не только видимая часть экрана.

- «На компьютер» — PDF-файл скачивается на компьютер.
- «В мой диск» — тот же файл сохраняется в файловое хранилище, в папку «Экспорт из орг. структуры».

Если дерево очень большое, выгрузка не зависает и не закрывает вкладку: действует предел по числу элементов дерева и по размеру картинки. При превышении предела выгрузка останавливается до создания картинки и показывает уведомление.

Файл собирается из всего раскрытого дерева в увеличенном разрешении. Названия подразделений и должностей, ФИО и подписи на карточках в PDF читаются без увеличения; карточки сохраняют белый фон, скругление и расположение элементов как на экране, аватары остаются круглыми.

Раскрытое дерево крупной компании шире экрана в десятки раз, поэтому страница PDF получается большой по ширине. Читать её удобно при масштабе около 100 %; при показе «по ширине окна» текст будет мелким у любого файла с таким деревом — это следствие того, что всё дерево сохраняется одним файлом.

**Действия с элементами**

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

**Информация об элементе:** если у элемента оргструктуры (отдела или должности) есть связь с пространством, содержащим описание, отображается кнопка **Информация**. По нажатию открывается статья пространства во всплывающем окне (только текст, без навигации). Полную статью можно открыть в отдельной вкладке.

![Статья пространства, привязанного к орг. единице, во всплывающем окне оргструктуры](https://help.1forma.ru/help-images/org-structure/org_chart-08.png)

**Комментарии:** администратор может задать произвольный текст комментария для элемента оргструктуры, который отображается под названием элемента.


**Просмотр состава:** при нажатии на название орг. единицы отображается карточка с числом участников. Нажатие кнопки **«Открыть список»** открывает диалог состава — тот же диалог состава, который используется для групп. Функция доступна всем пользователям, включая не-администраторов. Ранее просмотр состава орг. единицы был доступен только администраторам через контекстное меню.

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

**Ограничения и правила**

При построении оргструктуры действуют ограничения:

- Элемент не может быть родителем сам себе
- Дочерний тип должен иметь порядок уровня строго больше родительского
- По умолчанию разрешены дубликаты имён в одной ветке; запрет включается отдельной настройкой
- В переключателе оргструктур отображаются только корневые элементы с активной опцией «Показывать в оргструктуре»

## Вакантные должности на схеме

Числа на карточках схемы оргструктуры соответствуют тому, что нарисовано: счётчик считает те же узлы, которые выведены на схеме, а не больше и не меньше. Отдельная настройка площадки «Не показывать вакантные должности в орг. структуре» убирает вакантные узлы со схемы и из счётчиков — при выключенной настройке вакансии видны как раньше.
