Как вывести сотрудников-совмещателей отдельной строкой в отчетах 1С:ЗУП 3.1?

Программист 1С v8.3 (Управляемые формы) 1С:Зарплата и Управление Персоналом
← На главную

В повседневной практике кадрового учета часто возникает ситуация, когда один штатный сотрудник временно исполняет обязанности другого (например, на время отпуска или болезни). В программе 1С:Зарплата и Управление Персоналом 3.1 такая операция оформляется документом Совмещение должностей. Однако пользователи часто сталкиваются с проблемой: типовой отчет Штатные сотрудники не показывает «вторую строчку» для замещающего сотрудника. Проанализируем, почему это происходит и как настроить систему для получения нужных данных.

Почему стандартный отчет не выводит совмещение

Прежде всего, разберем архитектурную логику программы. В 1С:ЗУП 3.1 существует принципиальное различие между внутренним совместительством и совмещением:

  1. Внутреннее совместительство — это отдельный трудовой договор. Для него в системе создается новый элемент в справочнике Сотрудники. Поскольку это разные объекты, отчет Штатные сотрудники видит их как две разные записи и выводит двумя строками.
  2. Совмещение (исполнение обязанностей) — это выполнение дополнительных работ в течение основного рабочего времени без заключения нового трудового договора. В этом случае новый Сотрудник не создается. Это лишь дополнительное начисление (доплата) и временное занятие штатной единицы.

Так как отчет Штатные сотрудники строится преимущественно по справочнику Сотрудники и кадровой истории, он физически не может «раздвоить» одного и того же человека, если у него нет второго табельного номера, даже если настроены начисления и удержания в карточке сотрудника.

Решение 1: Использование отчета по занятости позиций

Рассмотрим наиболее правильный путь решения задачи без программирования. Если нам нужно увидеть, кто фактически занимает позиции штатного расписания (включая временных заместителей) или получить аналитический отчет по укомплектованности и вакансиям (удобно через аналитический отчет по укомплектованности штата для 1С:ЗУП), нам следует обратиться к отчету Занятость позиций штатного расписания.

Выполним следующие шаги для настройки:

  1. Перейдем в раздел КадрыОтчеты по кадрам.
  2. Откроем отчет Занятость позиций штатного расписания.
  3. Нажмем кнопку Настройки и переключимся в Расширенный режим.
  4. На вкладке Поля и сортировки найдем и добавим поле Замещаемый сотрудник.
  5. В этом отчете система анализирует не просто список людей, а состояние каждой штатной единицы. Для позиции, которую занимает совмещающий сотрудник, в колонке Вид занятости будет указано Совмещение.

Решение 2: Анализ через действующие начисления

Проанализируем ситуацию с точки зрения оплаты труда. Если руководство хочет видеть список всех «доплатников» и провести анализ плановых начислений сотрудников, можно использовать отчет Действующие начисления. Разберем, как его настроить:

  1. В разделе Зарплата или Кадры выберем Отчеты по кадрам (или по зарплате)Действующие начисления.
  2. В фильтрах установим отбор по полю Начисление, выбрав значение Доплата за совмещение должностей, исполнение обязанностей.
  3. Добавим в структуру отчета поле Документ-основание. Именно в этом документе зафиксировано, чьи обязанности исполняет сотрудник и в какой период.

Решение 3: Программная настройка через СКД (для продвинутых пользователей)

Если требуется глубокая модификация отчета или создание собственного варианта в Универсальном отчете, нам потребуется работа с регистрами сведений или консоль запросов ЗУП. Как отмечают эксперты, данные о совмещении хранятся в специализированных регистрах.

Рассмотрим структуру запроса для разработки собственного отчета. Основным источником данных должен стать регистр ЗанятостьПозицийШтатногоРасписанияИнтервальный. Посмотрим на ключевые поля, которые нам понадобятся:

Для понимания логики формирования данных в Толстом клиенте можно зайти в режим Редактировать схему компоновки данных (кнопка Еще — Варианты отчета). Выясним, как соединить данные кадровой истории и занятости:


ВЫБРАТЬ
    Занятость.Сотрудник КАК Исполнитель,
    Занятость.ЗамещаемыйСотрудник КАК КогоЗамещает,
    Занятость.Позиция КАК ШтатнаяЕдиница,
    Занятость.ВидЗанятостиПозиции КАК ТипЗанятости
ИЗ
    РегистрСведений.ЗанятостьПозицийШтатногоРасписанияИнтервальный КАК Занятость
ГДЕ
    Занятость.ВидЗанятостиПозиции = ЗНАЧЕНИЕ(Перечисление.ВидыЗанятостиПозицийШтатногоРасписания.Совмещение)

Дополнительно можно подключить регистр СостоянияСотрудников, чтобы отфильтровать только тех, кто в данный момент находится в статусе «Работает», и исключить тех, кто сам ушел в отпуск или на больничный.

Важные выводы

Подведем итог. Вывести совмещение в отчет Штатные сотрудники «как есть» не получится из-за структуры справочников 1С. Однако задача полностью решаема через отчеты по Штатному расписанию. Помните, что для системы 1С совмещение — это свойство Позиции штатного расписания (кем она занята), а не свойство Сотрудника (его основное место работы). Поэтому, сменив фокус отчета с людей на штатные позиции, мы получим желаемую «дополнительную строчку» с фамилией замещающего работника.

← На главную