02. Двойная структура: штатное + функциональное подчинение#
В крупных организациях редко бывает «одна» оргструктура. Сотрудник по штатному расписанию числится в одном подразделении, а по проектной/процессной деятельности подчиняется руководителю из другого. Этот раздел показывает, как такую двойную структуру отразить в Ruxeo и как добиться, чтобы задачи на руководителя по функциональной линии видел тот, кто реально работает.
§1. Концепция#
Зачем нужны две структуры#
Пример. У вас БЕ «Демо-Компания»; в ней есть штатное подразделение «Финансовый департамент» с руководителем Финдиром, и функциональное подразделение «Проектный комитет» с руководителем Главным проектным менеджером. Бухгалтер Иванов формально подчиняется Финдиру (зарплата, отпуска, дисциплина — через него). Но 70% времени Иванов работает на Проектный комитет (приоритеты задач, согласование бюджетов проектов).
Когда задачу согласования бюджета проекта надо отправить «руководителю Иванова» — кому она должна попасть? По штатной линии — Финдиру (но он не в курсе проекта). По функциональной линии — Главному ПМ (и это правильно).
Решение: ведём две параллельные оргструктуры под одной БЕ и связываем их через постоянных заместителей. Сотрудник по штатной линии становится «постоянным заместителем» функционального сотрудника. Все задачи, направленные на функционального сотрудника, реально выполняются штатным.
Как Ruxeo это поддерживает#
В Ruxeo нет специального «второго дерева» — обе структуры строятся в одном и том же справочнике подразделений, просто разными корнями. Под одной БЕ можно завести любое количество корневых подразделений: по одному корню под штатное и под функциональное подчинение, плюс при желании отдельные корни под филиальную структуру и т. п.
Связь «один Сотрудник реально работает за другого» оформляется документом «Делегирование» (Delegation). Постоянный заместитель — это просто делегирование без даты окончания (или с отдалённой датой) и со специальной причиной «постоянное заместительство».
⚠️ В текущей версии в карточке Подразделения нет поля-флага «штатное / функциональное». Различаются они только по корню дерева и неймингу. Контроль того, что в штатном дереве не появилось «функциональное» подразделение и наоборот — на администраторе. Полезно фиксировать соглашение по неймингу в проектной документации.
§2. 🛠 Создание двух деревьев под одной БЕ#
Кто: администратор. Где: «Администрирование» → «Подразделения».
Шаг 1. Завести два корневых подразделения#
Например:
| Код | Наименование | Назначение |
|---|---|---|
STAFF-ROOT |
Штатная структура | Корень всего штатного дерева |
FUNC-ROOT |
Функциональная структура | Корень всего функционального дерева |
Обе единицы привязываются к одной и той же БЕ; поле «Родительское подразделение» — пустое.
Это технические корни, в них самих сотрудников обычно не размещают; они нужны только как «начало двух деревьев».
Шаг 2. Развернуть штатное дерево#
Под STAFF-ROOT заводите подразделения по штатке:
Финансовый департамент(родитель: STAFF-ROOT)БухгалтерияКазначейство
ИТ-департамент(родитель: STAFF-ROOT)РазработкаЭксплуатация
Шаг 3. Развернуть функциональное дерево#
Под FUNC-ROOT заводите функциональные единицы:
Проектный комитет(родитель: FUNC-ROOT)Группа проекта АльфаГруппа проекта Бета
Соглашение по именованию#
Чтобы кадровики в дальнейшем не путали штатные и функциональные подразделения, рекомендуем добавлять префикс к коду или наименованию. Например:
| Подразделение | Код |
|---|---|
| Бухгалтерия | STAFF-FIN-ACC |
| Группа проекта Альфа | FUNC-PRJ-ALPHA |
Это не обязательное требование системы, но сильно облегчает жизнь, особенно когда подразделений много.
§3. 👤 Создание двух наборов сотрудников#
Здесь главное правило: физический человек = ОДНА штатная карточка + НОЛЬ или НЕСКОЛЬКО функциональных карточек.
Штатные сотрудники#
Это базовые карточки. Создаются по процедуре из раздела 01, §5.
Особенности: - ✓ Привязаны к подразделению из штатного дерева. - ✓ Имеют табельный номер. - ✓ Привязаны к учётной записи в системе. - ✓ Из них формируются группы безопасности «Сотрудники подразделения N». - ✓ Они получают зарплату, отпуска, идут через КЭДО.
Функциональные сотрудники#
Это дублирующие карточки для отображения функционального подчинения. Заводятся также через процедуру из раздела 01, §5, но с тремя отличиями:
- ✗ Не присваиваем табельный номер (поле «Табельный номер» оставляем пустым; в журнале регистрации Сотрудников можно временно отключить автонумерацию для этой карточки или просто очистить поле сразу после создания).
- ✗ Не привязываем к учётной записи (поле «Учётная запись» — пустое).
- ✓ Привязаны к функциональному подразделению (например, «Группа проекта Альфа»).
- ✓ ФИО — то же, что у штатной карточки. Можно к названию добавить пометку: «Иванов И.И. (функциональная)».
Функциональная карточка — это «роль в проекте», а не «второй человек». На неё можно адресовать задачи, она появляется в иерархии функционального дерева, но всё реальное (зарплата, отпуска, КЭДО, заявления) ведётся через штатную.
Пример#
| Физический сотрудник | Штатная карточка | Функциональная карточка |
|---|---|---|
| Иванов И.И. | Бухгалтерия → Иванов (таб. 2026-MSK-0010, учётка ivanov) |
Группа проекта Альфа → Иванов (таб. нет, учётка нет) |
| Петрова М.А. | Бухгалтерия → Петрова (таб. 2026-MSK-0011, учётка petrova) |
(нет — она работает только по штату) |
§4. 🛠 Создание постоянного замещения#
Теперь связываем функциональные карточки со штатными — чтобы задачи, попадающие на функциональную карточку, фактически попадали к человеку через его штатную учётку.
Кто: администратор. Где: дерево слева → Архив > Делегирования → создать новый документ «Делегирование».
Шаги#
[Шаг 1] Откройте папку «Делегирования» в кадровом архиве.
[Шаг 2] «Создать» → «Делегирование».
[Шаг 3] Заполните карточку:
| Поле | Что вводить | Пример |
|---|---|---|
| Кого замещают (делегатор) | Сотрудник из функционального дерева | Иванов И.И. (функциональная карточка из «Группа проекта Альфа») |
| Кто замещает (заместитель) | Сотрудник из штатного дерева, привязанный к учётной записи | Иванов И.И. (штатная карточка из «Бухгалтерия») |
| Дата начала | Сегодняшняя или дата приёма в проект | 01.01.2026 |
| Дата окончания | Можно оставить пустой (постоянное замещение) либо указать срок проекта | (пусто) |
| Причина | Из справочника причин делегирования | «Постоянное замещение» (const_deputy) |
| Бизнес-единица | БЕ обоих сотрудников | ООО «Демо-Компания» |
[Шаг 4] Сохранить.
[Шаг 5] Перевести жизненный цикл документа в состояние «Активно» (через действие в меню документа).
Что произошло#
С момента активации делегирования штатный Иванов получает «виртуальное» членство во всех группах безопасности, к которым относится функциональный Иванов:
- Группа подразделения «Группа проекта Альфа».
- Группы, в которые функциональный Иванов был добавлен индивидуально (если такие есть).
Это членство не записывается в систему явно — оно подсчитывается «на лету» при каждом входе штатного Иванова в систему. Всё, что выглядит «принадлежностью к группе» (видимость задач, доступ к документам, отображение в диспетчере подразделения) — теперь работает для штатного Иванова так, как будто он сам в этих группах состоит.
Тонкая настройка: исключения#
⚠️ Иногда нужно дать постоянное замещение, но исключить определённые группы (например, доступ к секретным финансовым документам функционального руководителя). В текущей версии такая возможность есть на уровне модели данных, но удобного UI для её настройки нет — настройка выполняется через ИТ-сопровождение по запросу.
§5. 👤 Сценарий: задача на функциональную карточку → выполняет штатный сотрудник#
Соберём всё вместе на примере.
Исходные данные#
- БЕ: ООО «Демо-Компания»
- Штатный Иванов (Бухгалтерия), учётная запись
ivanov. - Функциональный Иванов (Группа проекта Альфа) — без учётной записи.
- Документ-делегирование: функц. Иванов → штат. Иванов, причина «Постоянное замещение», статус «Активно».
- Кадровик создаёт приказ, в котором согласующим назначен «руководитель подразделения Группа проекта Альфа».
Поток#
[1] Кадровик запускает маршрут согласования приказа. [2] На шаге «согласование руководителем подразделения» система определяет, что руководитель «Группы проекта Альфа» — функциональный Иванов. [3] Задача формируется на функционального Иванова. [4] Поскольку функциональный Иванов не привязан к учётной записи — система ищет, кто может видеть его задачи через делегирования. Находит активное делегирование на штатного Иванова. [5] Штатный Иванов под учёткой ivanov заходит в систему → в его «Задачах» появляется приказ → он согласовывает. [6] Маршрут идёт дальше; в истории документа видно, что согласование выполнил ivanov, выступив в роли «функциональный Иванов из Группы проекта Альфа».
Где это видно#
- 👁 Контролёр / администратор видит и кому изначально была направлена задача (функциональная карточка), и кто её фактически выполнил (штатная учётная запись). Это полезно при аудитах.
- 👤 Кадровик при настройке маршрута может работать с обеими моделями: «руководитель подразделения по штату» и «руководитель подразделения по функционалу» — в зависимости от того, какую ветку дерева выбрал.
- 🧑 Сотрудник на портале видит только свои реальные задачи, не различая «по штату это или по функционалу».
§6. 👁 Проверка корректности настройки#
Поскольку в текущей версии нет встроенного «инспектора делегирований» в UI, проверять настройку рекомендуется так:
Проверка 1. Корни — два#
В справочнике подразделений отфильтруйте по нужной БЕ. Должны быть видны минимум два подразделения с пустым родителем — корни штатного и функционального деревьев.
Проверка 2. Сотрудники не пересекаются#
В справочнике сотрудников отсортируйте по подразделению. Убедитесь: - Все сотрудники в штатных подразделениях имеют табельный номер и учётку. - Все сотрудники в функциональных подразделениях НЕ имеют табельного номера и учётки.
Проверка 3. Делегирования активны#
В папке «Делегирования» откройте список и убедитесь, что нужные документы — в состоянии «Активно». Деактивированные не работают.
Проверка 4. Поток задачи#
Имитируйте процесс: создайте тестовый приказ, направьте на согласование руководителю функционального подразделения. Убедитесь, что соответствующий штатный сотрудник видит эту задачу под своей учётной записью.
§7. ⚠️ Особенности и ограничения#
Делегирование не каскадируется#
Если штатный Иванов сам в отпуске и у него временный заместитель Петров — задачи функционального Иванова не попадут к Петрову через цепочку «функц. Иванов → штат. Иванов → штат. Петров». Каскадирование делегирований не поддерживается принципиально (это защита от непредвиденных передач полномочий).
Решение в случае отпуска штатного Иванова — оформить ему временное делегирование на Петрова и Петров получит его собственные задачи. Задачи функционального Иванова уйдут к нему по цепочке функц. → штат. Иванов, и пока штатный Иванов в отпуске — они будут ждать его возвращения. Если это критично, можно дополнительно завести второе делегирование функц. Иванов → Петров на время отпуска Иванова.
Функциональная карточка не получает зарплату/отпуск/договор#
Никаких трудовых документов на функциональную карточку не оформляйте. Все договорные изменения, отпуска, увольнения — только на штатную. Функциональная нужна только как «адрес» для функциональной маршрутизации задач.
При увольнении сотрудника#
При увольнении штатного Иванова обязательно: 1. Деактивируйте все его делегирования (в которых он — «кто замещает» И в которых он — «кого замещают»). 2. Если есть его функциональная карточка — её тоже архивируйте. 3. Если на функциональную карточку были «активные» маршруты — переопределите задачи на нового сотрудника.
Без этих шагов задачи могут «зависнуть» на несуществующем сотруднике.
Административный обзор делегирований#
В текущей версии нет страницы вида «вот все активные делегирования для пользователя X». Если нужно понять, под кого выступает Иванов и под кого выступают на его место — администратор делает это через поиск в папке «Делегирования» с фильтром по сотруднику.
§8. Что дальше#
Двойная структура — это инфраструктурная штука; пока вы не запустите хоть один маршрут согласования (раздел 03–07), её ценность не видна. Поэтому, если у вас всё настроено и проверено — переходите к 03. Бумажное трудоустройство или 04. Электронное (КЭДО), оформите там пару сотрудников, и потом возвращайтесь сюда поэкспериментировать с маршрутизацией задач через функциональные карточки.