При работе в программе «1С:Зарплата и Управление Персоналом» (редакция 3.1) часто возникает необходимость просмотреть, отредактировать или выгрузить реквизиты трудового договора сотрудника (номер, дату заключения, срок действия). В зависимости от того, как сотрудники были внесены в базу и какая задача стоит — пользовательская или разработческая — информация о договоре может быть найдена в разных местах системы. Рассмотрим подробнее все основные способы поиска и работы с этими данными.
Основным местом, где указываются реквизиты договора при повседневной кадровой работе, является первичный документ кадрового учета. Разберем по шагам, как найти эти сведения:
Прием на работу (или Прием на работу списком) по интересующему нас сотруднику.На этой вкладке находятся ключевые реквизиты: номер договора, дата его заключения, признак срочного договора, дата окончания и основание срочности. Обратите внимание: если в настройках программы (раздел Настройка → Кадровый учет) включена опция «Прием на работу без приказа о приеме», заполнение сведений на этой вкладке становится обязательным для проведения документа.
Проанализируем ситуацию, когда сотрудники были внесены в программу без первичного документа приема — например, при переносе данных из прошлых редакций программы или через документ Начальная штатная расстановка. В таких случаях открыть документ приема невозможно, а реквизиты договора хранятся в регистрах сведений.
Информация о договорах содержится в следующих регистрах:
Если требуется внести или скорректировать номер и дату договора вручную без создания документа приема, введем записи с помощью документа Перенос данных (раздел Администрирование → Перенос данных), указав нужные значения в этих регистрах сведений.
Важное ограничение: Некоторые встроенные печатные формы (например, дополнительные соглашения при кадровом переводе) обращаются напрямую к документу приема. Если данные о трудовом договоре внесены только через регистры или перенос данных, в некоторых печатных формах номер и дата договора могут не заполниться автоматически.
Выясним, как вывести массовую информацию по трудовым договорам всех или нескольких сотрудников без открытия каждого документа вручную. Для этого воспользуемся стандартной отчетностью:
Кроме того, печатные формы и сводные кадровые данные можно сформировать с помощью служебной обработки Печать кадровых данных.
Если вы разрабатываете внешнюю печатную форму, обработку или отчет, обращайтесь к кадровым данным через специализированные механизмы БСП и кадрового учета. Не рекомендуется делать прямые запросы к регистрам сведений, так как их структура может меняться при обновлениях конфигурации.
Рассмотрим пример получения реквизитов договора с помощью экспортного метода общего модуля КадровыйУчет:
// Формируем массив сотрудников и список требуемых полей
МассивСотрудников = Новый Массив;
МассивСотрудников.Добавить(СотрудникСсылка);
МассивПолей = Новый Массив;
МассивПолей.Добавить("ДатаДоговора");
МассивПолей.Добавить("НомерДоговора");
МассивПолей.Добавить("ДатаОкончанияДоговора");
// Получаем кадровые данные на требуемую дату
ДанныеДоговора = КадровыйУчет.КадровыеДанныеСотрудников(Истина, МассивСотрудников, МассивПолей, ТекущаяДата());
Для Каждого Стр Из ДанныеДоговора Цикл
Сообщить("Договор № " + Стр.НомерДоговора + " от " + Формат(Стр.ДатаДоговора, "ДФ=dd.MM.yyyy"));
КонецЦикла;
Для работы с большими массива данных в запросах используйте метод КадровыйУчет.СоздатьВТСотрудникиОрганизации, который создает временную таблицу с актульной кадровой информацией на заданную дату.