Как получить кадровые данные сотрудников в 1С ЗУП 3.1

· Обновлено 12.07.2026 · ⏱ 6 мин · Редакция 1s-83.com

📋 Содержание

Кадровые данные сотрудника в ЗУП 3.1 достают двумя путями: через готовый отчёт в интерфейсе — если нужен подразделение, должность, график по списку людей, — и запросом к регистру, когда данные тянут в обработку, печатную форму или обмен.

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

Где ЗУП 3.1 хранит кадровые данные

Кадровые данные разбросаны по нескольким объектам. Понимание, что где лежит, снимает половину вопросов.

  • 👤 Личные данные (ФИО, дата рождения, пол, гражданство) — справочник ФизическиеЛица.
  • 📇 Документы физлица (паспорт, СНИЛС, ИНН) — отдельные регистры сведений: ПаспортныеДанные, СтраховыеНомераФизЛиц, ИНННомераФизЛиц.
  • 🧑‍💼 Место работы (подразделение, должность, вид занятости, ставка, график) — регистр сведений КадроваяИсторияСотрудников.
  • 💰 Плановые начисления (оклад, надбавки) — регистр ПлановыеНачисленияСотрудников.
  • 🔗 Связка человека и работы — справочник Сотрудники (у одного ФизическоеЛицо может быть несколько сотрудников — по числу мест работы).

💡 Ключевой момент: Сотрудник и ФизическоеЛицо — разные сущности. Личные данные (паспорт, СНИЛС) привязаны к физлицу, кадровые (должность, подразделение) — к сотруднику. Совместитель на двух ставках — это два Сотрудника, но одно ФизическоеЛицо.

Кадровые данные сотрудников в отчётах

Для кадровика и бухгалтера самый быстрый путь — готовые отчёты. Программировать ничего не нужно.

Основные отчёты лежат в разделе Кадры → Отчёты по кадрам:

ОтчётЧто показывает
Личные данные сотрудниковФИО, дата рождения, паспорт, адрес, контакты
Штатные сотрудникисписок работающих на дату: подразделение, должность, ставка
Кадровые данные сотрудниковсводка по личным и служебным сведениям
Личная карточка (Т-2)печатная форма по одному человеку
Отчёты по численности и текучестидвижение кадров за период

Если нужного поля в готовом отчёте нет — берите Универсальный отчёт (Главное → Универсальный отчёт) и стройте его прямо над регистром КадроваяИсторияСотрудников.

👣 Пошаговый помощник
Открыть Универсальный отчёт
Раздел Главное → Универсальный отчёт (или Администрирование → Печатные формы, отчёты и обработки).

Универсальный отчёт закрывает 90% разовых задач «нужен список людей с полем X на дату Y» без единой строки кода.

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

Когда данные нужны в печатной форме, обработке или обмене — пишем запрос. Основа — виртуальная таблица СрезПоследних регистра КадроваяИсторияСотрудников.

Данные одного сотрудника на дату

ВЫБРАТЬ
    КадроваяИстория.Сотрудник,
    КадроваяИстория.Подразделение,
    КадроваяИстория.Должность,
    КадроваяИстория.ВидЗанятости,
    КадроваяИстория.ГрафикРаботы
ИЗ
    РегистрСведений.КадроваяИсторияСотрудников.СрезПоследних(
        &Дата,
        Сотрудник = &Сотрудник) КАК КадроваяИстория

В параметр &Дата подставляем дату среза, в &Сотрудник — ссылку на нужного сотрудника. СрезПоследних вернёт последнюю запись на эту дату — то есть актуальное место работы.

⚠️ Не путайте &Дата (момент времени) с периодом отбора. СрезПоследних(&Дата, …) берёт запись, действующую на дату, а не за период. Для истории переводов используйте основную таблицу регистра без «Среза».

Список сотрудников через временные таблицы

Когда людей много, отбор Сотрудник В (&Список) в срезе тормозит. Правильнее положить список во временную таблицу и соединить:

ВЫБРАТЬ
    СписокСотрудников.Сотрудник КАК Сотрудник
ПОМЕСТИТЬ ВТ_Сотрудники
ИЗ
    &ТаблицаСотрудников КАК СписокСотрудников
;
////////////////////////////////////////////////////////////
ВЫБРАТЬ
    ВТ.Сотрудник,
    КадроваяИстория.Подразделение,
    КадроваяИстория.Должность
ИЗ
    ВТ_Сотрудники КАК ВТ
ЛЕВОЕ СОЕДИНЕНИЕ РегистрСведений.КадроваяИсторияСотрудников.СрезПоследних(
        &Дата, ) КАК КадроваяИстория
    ПО КадроваяИстория.Сотрудник = ВТ.Сотрудник

ЛЕВОЕ СОЕДИНЕНИЕ важно: у уволенного или неоформленного человека записи в срезе может не быть — левое соединение оставит его в результате с пустыми полями, а не выкинет из выборки.

Кадровые данные на разные даты

Задача «должность каждого сотрудника на дату его юбилея» решается соединением списка пар (сотрудник + своя дата) со срезом без параметра периода, с условием по дате в тексте виртуальной таблицы:

ВЫБРАТЬ
    ВТ.Сотрудник,
    ВТ.ДатаСреза,
    История.Должность
ИЗ
    ВТ_СотрудникиДаты КАК ВТ
ЛЕВОЕ СОЕДИНЕНИЕ РегистрСведений.КадроваяИсторияСотрудников КАК История
    ПО История.Сотрудник = ВТ.Сотрудник
        И История.Период <= ВТ.ДатаСреза

Тут придётся дополнительно отобрать максимальный Период по каждому сотруднику (через вложенный запрос или МАКСИМУМ с группировкой) — «Срез последних» на индивидуальные даты не рассчитан.

Функции и общие модули вместо запроса

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

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

💡 Прежде чем писать свой запрос к регистру, откройте Конфигуратор → Общие модули и поищите готовую функцию с «Кадров» в имени. Часто нужное уже написано и поддерживается вендором.

Кадровые данные в таблицу значений

Результат запроса выгружают в таблицу значений одной строкой — дальше с ней удобно работать в обработке или печатной форме:

Запрос = Новый Запрос(ТекстЗапроса);
Запрос.УстановитьПараметр("Дата", ТекущаяДата());
ТЗ = Запрос.Выполнить().Выгрузить();

Через Выгрузить() получаете таблицу значений с колонками из запроса. Для механизма компоновки (СКД) и представлений подход другой — там кадровые данные тянут схемой компоновки, а не прямым запросом.

Типичные ошибки

Форумы по этой теме забиты одними и теми же граблями. Прогоните свой код через список.

🩺 Диагностика: выберите симптом

Если готовые способы не подошли

Не нашли поле ни в отчётах, ни в регистре — вероятно, данные лежат в другом объекте:

  • 📌 Адрес, телефон, e-mail — регистр КонтактнаяИнформация.
  • 📌 Стаж, воинский учёт, образование — отдельные регистры и табличные части ФизическиеЛица.
  • 📌 Начисления и удержания — регистр ПлановыеНачисленияСотрудников.
  • 📌 Табельный номер — реквизит справочника Сотрудники.

Быстрый способ найти источник поля: откройте карточку сотрудника, наведите на реквизит и через Ещё → Изменить форму или отладчик посмотрите путь к данным. Либо ищите поле в Универсальном отчёте по разным регистрам — это не требует Конфигуратора.

Частые вопросы

Чем отличается «Сотрудник» от «Физического лица» в ЗУП 3.1?
ФизическоеЛицо — человек с личными данными (паспорт, СНИЛС). Сотрудник — его место работы. У совместителя на двух ставках одно физлицо и два сотрудника. Кадровые данные (должность, подразделение) храните и тяните по Сотрудник.
Из какого регистра брать должность и подразделение?
Из регистра сведений КадроваяИсторияСотрудников, таблица СрезПоследних на нужную дату. В старых релизах ЗУП смотрите смежные регистры кадрового учёта.
Как получить кадровые данные без программирования?
Через Универсальный отчёт над регистром КадроваяИсторияСотрудников или готовые отчёты раздела Кадры → Отчёты по кадрам — «Штатные сотрудники», «Личные данные сотрудников».
Почему в отчёт не попадают уволенные?
Скорее всего используется внутреннее соединение или отбор по статусу «Работает». Для истории берите основную таблицу регистра без «Среза» и левое соединение.
Как выгрузить данные во внешнюю обработку?
Выполните запрос и вызовите Результат.Выгрузить() — получите таблицу значений. Дальше данные доступны для печатной формы, файла или обмена.
Можно ли получить данные на дату приёма или увольнения?
Да, но СрезПоследних на индивидуальные даты не рассчитан. Соедините таблицу пар «сотрудник + дата» с регистром по условию Период <= Дата и отберите максимальный период по каждому.

Материал подготовлен редакцией 1С 8.3 — независимый справочник. Проверено и обновлено: 12.07.2026. Независимый справочник. Мы не представляем фирму «1С» и не аффилированы с ней.