Рассмотрим ситуацию, с которой массово сталкиваются пользователи после обновления программы 1С:Зарплата и управление персоналом до релизов 3.1.22.86 и выше (а также в ветке 3.1.23). При попытке распечатать стандартные кадровые приказы, такие как Приказ об увольнении (Т-8), Приказ о приеме (Т-1), Перевод (Т-5) или Личную карточку (Т-2), система выдает критическую ошибку: Среди кадровых данных сотрудников нет данных с именем "ВоинскийУчетДатаСнятияСВоинскогоУчета". Печать прерывается, и стандартные формы перестают формироваться.
Проанализируем причину этой проблемы и разберем по шагам способы ее устранения, чтобы быстро восстановить работу отдела кадров.
Корень проблемы кроется в масштабном обновлении подсистемы «Воинский учет», которое разработчики 1С включили в новые релизы. В типовой конфигурации изменился состав запрашиваемых кадровых данных для формирования печатных форм. Теперь в пакете данных появился новый обязательный реквизит — ВоинскийУчетДатаСнятияСВоинскогоУчета. В карточках сотрудников форма Воинского учета также визуально обновилась, получив новую графу с датой.
Сама по себе типовая база 1С обрабатывает это поле корректно. Ошибка возникает исключительно из-за конфликта обновленной конфигурации с вашими доработками. Если в базе подключены расширения конфигурации, внешние печатные формы или отчеты, которые переопределяют работу общих модулей (в первую очередь КадровыйУчет, КадровыйУчетРасширенный или КадровыйУчетБазовый), происходит сбой.
Устаревший код расширения просто не знает о существовании нового поля. Когда обновленный типовой механизм 1С пытается получить дату снятия с учета, переопределенная функция в расширении не находит это поле в своей структуре, валидация не проходит, и система выдает исключение.
Посмотрим, что нужно сделать для восстановления работоспособности печатных форм. Решать проблему мы будем опытным путем, исключая факторы один за другим.
КадровыеДанные, которая была жестко задана программистом в расширении. В этот массив нужно добавить новые поля воинского учета, появившиеся в релизе 3.1.22.86.Если конфликт вызывает готовая внешняя обработка или расширение, скачанное с профильных ресурсов или купленное у сторонних разработчиков, самостоятельное исправление кода может быть затруднено из-за закрытых модулей или сложной архитектуры. В этом случае необходимо оперативно связаться с автором доработки и запросить актуальную версию файла, адаптированную конкретно под релизы ЗУП 3.1.22.86, 3.1.23 и выше.
Важное замечание про патчи от 1С: Не стоит ждать официального исправления от фирмы 1С для данной конкретной ошибки. Вендор выпускает патчи только для исправления ошибок в типовом коде программы. Так как сбой вызывается неадаптированным пользовательским кодом в расширении или внешней форме, никакой официальный патч эту проблему не устранит. Решать ее придется исключительно силами ваших программистов или специалистов сопровождения путем актуализации доработок.