Почему в личной карточке Т-2 вместо номера приказа печатается номер документа и как это исправить?

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

В процессе работы с кадровым учетом в конфигурациях 1С:Зарплата и управление персоналом 3 (ЗУП) и 1С:ERP Управление предприятием пользователи часто сталкиваются с неприятной ситуацией: при формировании унифицированной формы № Т-2 в разделе III "Прием на работу и переводы на другую работу" в колонке "Основание" отображается внутренний номер документа с префиксами и нулями (например, "00ERP-00001"), вместо красивого номера приказа (например, "1-к"), который был введен вручную в поле "Печатать как".

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

Причина возникновения расхождения номеров

Разберем ситуацию с технической точки зрения. В современных конфигурациях 1С на платформе 8.3 существует разделение между системным номером объекта и его представлением для печати. В документах кадрового учета (таких как ПриемНаРаботу, КадровыйПеревод) есть стандартный реквизит Номер и дополнительный механизм, позволяющий пользователю редактировать номер для печатной формы через специальное поле "Печатать как".

Ошибка, зарегистрированная под номером 10222047, заключалась в том, что в программном коде формирования отчета Т-2 запрос к базе данных обращался напрямую к полю Документ.Номер. При этом игнорировалась логика обработки префиксов и выбора значения из поля "Печатать как", если оно заполнено. В результате в печатную форму попадал "сырой" системный номер со всеми служебными символами.

Официальный статус исправления ошибки

Проанализируем состояние проблемы в различных версиях программ. На текущий момент компания 1С признала и исправила данную ошибку в следующих ветках релизов:

  1. 1С:ЗУП 3.1: Исправление вошло в состав релизов, начиная с версии 3.1.14.61 и выше. В этих версиях кадровый блок был обновлен приоритетно.
  2. 1С:ERP 2.4 / 1С:КА 2.4: Ошибка была зафиксирована в релизах 2.4.12.64 и 2.4.12.75. Исправление реализовано в версии 2.4.13.
  3. 1С:ERP 2.5 / 1С:КА 2.5: В актуальных ветках 2.5 данная проблема отсутствует, так как используется обновленная библиотека кадрового учета.

Если вы используете версию ниже указанных, рекомендуется выполнить обновление конфигурации до актуального релиза.

Проверка настроек интерфейса

Прежде чем приступать к программным изменениям, проверим, правильно ли настроена программа. Выясним, включена ли опция очистки номеров. Для этого выполним следующие шаги:

  1. Перейдем в раздел Настройки — Дополнительные настройки (или через Администрирование).
  2. Найдем пункт Удалять префиксы организации и информационных баз из номеров документов.
  3. Убедимся, что галочка установлена.

Также важно проверить сам документ приема на работу. В форме документа рядом с полем номера обычно есть гиперссылка или дополнительное поле Печатать как. Проанализируем, заполнено ли оно корректно. Если поле заполнено, а в Т-2 все равно выводится системный номер — значит, ваш релиз содержит указанную ошибку.

Техническое решение через расширение конфигурации

Рассмотрим вариант, когда быстрое обновление конфигурации невозможно (например, из-за большого количества кастомизаций). В этом случае наиболее эффективным методом будет создание расширения. Нам необходимо перехватить процедуру, которая собирает данные для раздела III карточки Т-2.

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

Пример логики, которую можно реализовать в расширении (схематично):


&Вместо("СформироватьДанныеРаздела3")
Процедура Расш1_СформироватьДанныеРаздела3(Параметры)
    // Вызываем оригинальную логику или полностью переопределяем запрос
    // В запросе заменяем поле Ссылка.Номер на логику выбора:
    // ВЫБОР КОГДА Ссылка.НомерНаПечати <> "" ТОГДА Ссылка.НомерНаПечати ИНАЧЕ Ссылка.Номер КОНЕЦ
КонецПроцедуры

Однако более правильным и современным способом в последних версиях платформы является использование механизма ПрефиксацияОбъектовКлиентСервер.ПолучитьНомерНаПечать. Посмотрим, как это реализовать. В коде, отвечающем за заполнение структуры данных для макета, необходимо вызвать данную функцию, которая автоматически удалит лидирующие нули и префиксы организации.

Юридический аспект и важность исправления

Разберем, почему нельзя оставлять эту ошибку без внимания. Личная карточка работника (форма Т-2) является основным документом персонального учета. Согласно правилам ведения документации:

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

Итоги

Мы проанализировали проблему вывода номеров в форме Т-2 и выяснили, что она является следствием программной ошибки в механизме обращения к реквизитам документа. Для решения проблемы мы рекомендуем:

  1. Обновить конфигурацию до релизов ERP 2.4.13 / ЗУП 3.1.14.61 или более поздних.
  2. Проверить настройки удаления префиксов в кадровом учете.
  3. При невозможности обновления — использовать расширение для корректировки запроса в модуле формирования кадровых данных.

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

← На главную