При работе в конфигурациях 1С:Зарплата и управление персоналом 3.1 (ЗУП) или 1С:Зарплата и кадры государственного учреждения (ЗКГУ) пользователи часто сталкиваются с критической ошибкой при попытке провести документ Разовое начисление. Система выдает сообщение следующего содержания: «Запись не верна! Значение поля "Сотрудник" не может быть пустым! (Регистр накопления: Данные о начислениях для расчета среднего заработка (ФСС); Номер строки: 1)». Эта проблема блокирует расчеты и требует детального технического анализа. В этой статье мы подробно разберем, почему возникает эта ситуация и как ее исправить, используя инструменты платформы 1С.
Первое, что нам необходимо понять: ошибка не всегда связана непосредственно с тем документом, который мы проводим в данный момент. Программа 1С при проведении начислений выполняет сложные транзакции, которые затрагивают множество взаимосвязанных регистров. Если в одном из этих регистров уже существует «битая» или неполная запись, система не сможет завершить новую транзакцию, так как нарушается целостность данных.
Рассмотрим ситуацию глубже: ошибка указывает на регистр Данные о начислениях для расчета среднего заработка (ФСС). Однако корень проблемы часто кроется в других местах, например, в регистре Учет доходов для исчисления страховых взносов или в служебном механизме перерасчетов. Основная причина — наличие в базе данных записи, где измерение Сотрудник технически равно ПустаяСсылка, хотя по правилам конфигурации оно обязательно должно быть заполнено.
Как показывает практика и опыт многих технических специалистов, наиболее частым виновником является документ Перерасчет страховых взносов. Проанализируем этот сценарий. Если в системе был введен перерасчет, который по какой-то причине не подтянул данные о сотруднике (например, из-за программного сбоя или некорректного импорта данных), он создает записи с пустым значением в колонке начисления или сотрудника.
Для исправления ситуации выполним следующие шаги:
Учет доходов для исчисления страховых взносов через меню «Все функции» (или «Функции для технического специалиста»).Сотрудник.Перерасчет страховых взносов или Начисление зарплаты и взносов), отменим его проведение, проверим заполнение данных и проведем заново.Иногда система спотыкается о служебные записи, которые не видны в обычных отчетах. Разберем работу с механизмом перерасчетов. Если программа считает, что за прошлые периоды нужно что-то доначислить, она создает запись в специальной таблице. Если эта запись сформирована некорректно (без привязки к сотруднику), документ Разовое начисление может выдавать ошибку.
Для устранения этой причины:
Разовое начисление снова.Бывают случаи, когда визуально в регистре поле кажется заполненным, но на самом деле там находится объект, который был удален из базы (так называемая «битая ссылка» или Объект не найден). Обычная сортировка списка здесь может не помочь. Проанализируем ситуацию с помощью небольшого запроса к базе данных.
Используем консоль запросов для поиска проблемных строк в регистре ФСС:
ВЫБРАТЬ
ДанныеДляРасчетаСреднего.Регистратор,
ДанныеДляРасчетаСреднего.НомерСтроки,
ДанныеДляРасчетаСреднего.Сотрудник
ИЗ
РегистрНакопления.ДанныеОНачисленияхДляРасчетаСреднегоЗаработкаФСС КАК ДанныеДляРасчетаСреднего
ГДЕ
ДанныеДляРасчетаСреднего.Сотрудник = ЗНАЧЕНИЕ(Справочник.Сотрудники.ПустаяСсылка)
ИЛИ ДанныеДляРасчетаСреднего.Сотрудник.Ссылка ЕСТЬ NULL
Если запрос вернул результат, мы увидим конкретный документ-регистратор, который портит данные. Это позволит точечно исправить ошибку, не перелопачивая всю базу вручную.
Выясним еще одну причину: работа с уволенными или договорниками (ГПХ). Часто Разовое начисление создается для человека, который на текущую дату уже не является штатным сотрудником. В некоторых релизах 3.1 механизм расчета среднего заработка для ФСС пытается найти связь между Физическим лицом и активным Сотрудником. Если трудовой договор завершен, система может сформировать пустую ссылку.
В этом случае рекомендуем:
Основные сотрудники физических лиц нет дублей для этого человека. Если одному физлицу назначено несколько «основных» сотрудников в одном периоде, система может запутаться при записи данных.Если вы убедились, что в регистрах всё чисто, но ошибка сохраняется только у одного пользователя или на конкретном рабочем столе, проанализируем влияние локального кэша платформы. Иногда некорректно кэшированные метаданные приводят к тому, что при записи набора записей регистра одно из полей очищается самой платформой непосредственно перед транзакцией.
Для решения этой проблемы выполним следующие действия:
Важный момент: Ошибка часто привязана к конкретному месяцу (например, только в апреле). Это верный признак того, что в этом месяце был проведен какой-то корректирующий документ (перерасчет взносов, материальная помощь или возврат НДФЛ), который создал некорректную запись в регистрах накопления. Тщательный анализ всех документов за «проблемный» месяц — ключ к быстрому решению задачи.