Почему у уволенного сотрудника в 1С:ЗУП 3.1 отображается статус «Работа, дата возврата» и как это исправить?

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

При переходе на новую редакцию программы «1С:Зарплата и управление персоналом» (ЗУП) 3.1 или в процессе ведения учета пользователи часто сталкиваются с неприятной визуальной ошибкой. В справочнике «Сотрудники» в графе «Состояние, дата возврата» вместо логичного статуса «Уволен» отображается странная формулировка: «Работа, (дата возврата) [следующий день после увольнения]». При этом все кадровые документы (прием и увольнение) проведены корректно, а в кадровой истории нет никаких лишних движений.

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

Почему возникает статус «Работа, дата возврата» у уволенного сотрудника?

Для начала проанализируем логику работы конфигурации 1С:ЗУП 3.1. Отображение состояния сотрудника в списке завязано на сложные механизмы регистров сведений. Вот ключевые причины возникновения ошибки:

  1. Особенность фиксации даты увольнения в регистрах. Согласно законодательству РФ, день увольнения является для сотрудника последним рабочим днем. Программа строго следует этому правилу. В регистрах сведений РегистрСведений.КадроваяИсторияСотрудников и РегистрСведений.СостоянияСотрудников увольнение фиксируется не датой самого увольнения, а следующим за ним днем. Например, если сотрудник уволен 22.01.2018, то его статус «Уволен» должен наступить с 23.01.2018. Если в этот момент происходит сбой в записи интервалов, программа начинает считать дату 23.01.2018 «датой возврата» на работу.
  2. Влияние «Рабочей даты» программы. Состояние сотрудника в списке рассчитывается динамически на текущую рабочую дату, установленную в настройках 1С (или системную дату компьютера). Если вы увольняете сотрудника «будущим числом» (например, сегодня 20-е число, а увольнение оформляется 22-м), то до наступления даты увольнения программа вполне логично будет показывать текущее рабочее состояние сотрудника. Однако если дата увольнения уже прошла, а статус не изменился — дело в программном сбое регистров.
  3. Рассогласование интервальных регистров. В ЗУП 3.1 кадровые состояния хранятся в нескольких связанных регистрах: в базовом РегистрСведений.СостоянияСотрудников и во вспомогательном интервальном регистре РегистрСведений.СостоянияСотрудниковИнтервальный (а также ДанныеСостоянийСотрудников). При переносе данных из старых версий (например, ЗУП 2.5) или из-за незавершенных транзакций связь между этими регистрами может нарушиться, из-за чего в списке отображаются некорректные «хвосты» предыдущих состояний.

Способ 1. Тестирование и исправление информационной базы (самый частый вариант решения)

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

Важно: Перед выполнением любых технических процедур обязательно сделайте резервную копию (бэкап) вашей информационной базы!

Выполним следующие шаги:

  1. Запустите программу 1С в режиме «Конфигуратор» от имени администратора.
  2. В верхнем меню перейдите в раздел Администрирование — Тестирование и исправление....
  3. Установите флажки напротив следующих пунктов:
    • Реиндексация таблиц информационной базы (помогает восстановить правильные индексы кадровых регистров);
    • Проверка логической целостности информационной базы;
    • Проверка ссылочной целостности информационной базы;
    • Реструктуризация таблиц информационной базы.
  4. В блоке «При наличии ссылок на несуществующие объекты» выберите вариант «Очищать объекты» или «Создавать дефолтные» (рекомендуется предварительно запустить в режиме тестирования без изменений).
  5. Нажмите кнопку «Выполнить».

После завершения процесса запустите программу в режиме «Предприятие» и проверьте список сотрудников. В большинстве случаев некорректный статус уходит, заменяясь на пустое поле (что для уволенного сотрудника в списке ЗУП 3.1 является нормой при скрытых архивных записях).


Способ 2. Перезаполнение интервальных регистров (для новых релизов ЗУП)

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

Разберем, как запустить эту процедуру:

  1. Перейдите в раздел Администрирование — Обслуживание.
  2. Откройте подраздел Корректировка данных.
  3. Найдите и запустите обработку «Перезаполнение интервальных регистров» (в некоторых релизах доступ к ней можно получить через функции технического специалиста, введя в поиске Обработка.ПерезаполнениеИнтервальныхРегистров).
  4. Выберите необходимый период (или оставьте незаполненным для полной очистки и перезаполнения по всей базе) и запустите выполнение.

Программа автоматически сопоставит документы-первоисточники (такие как «Прием на работу», «Увольнение», «Отпуск» и др.) с записями в интервальных регистрах и пересчитает их. Это полностью устранит расхождения.


Способ 3. Проблема «зависших» отпусков по уходу за ребенком после переноса данных

Часто проблема с увольнением и некорректными статусами возникает по сотрудникам, которые до переноса данных находились в длительных отклонениях (например, в отпуске по уходу за ребенком).

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

Если вы увольняете сотрудника, который по данным регистров все еще «находится в отпуске по уходу», программа не может сопоставить увольнение и активный отпуск. В итоге получается кадровый хаос в статусах.

Решим эту проблему по шагам:

  1. Проверьте кадровые документы сотрудника. Если увольнение происходит сразу после или во время отпуска по уходу, создайте документ «Возврат из отпуска по уходу» (раздел Кадры — Отпуска по уходу за ребенком) датой, предшествующей дню увольнения (или совпадающей с ней в зависимости от методологии).
  2. Проведите документ возврата.
  3. После этого откройте и заново перепроведите документ «Увольнение».

Способ 4. Ручная корректировка регистров через «Перенос данных»

Если период, в котором были допущены ошибки переноса, уже закрыт для редактирования (установлена дата запрета изменения данных), стандартное перепроведение документов заблокировано. В таком случае мы можем скорректировать данные регистра напрямую с помощью технического документа.

Выполним корректировку следующим образом:

  1. Перейдите в раздел Администрирование — Переносы данных.
  2. Создайте новый документ. Номер сформируется автоматически, в качестве кода укажите понятный префикс (например, «РК» — ручная корректировка).
  3. Нажмите кнопку «Настройка состава регистров» на панели документа.
  4. Перейдите на вкладку Регистры сведений, найдите в списке Данные состояний сотрудников и Состояния сотрудников, установите напротив них флажки и нажмите «ОК».
  5. В появившихся вкладках добавьте строки по проблемному сотруднику. Укажите правильное состояние (например, «Увольнение»), дату начала состояния (следующий день после даты увольнения) и документ-основание.
  6. Запишите и проведите документ «Перенос данных».

Этот способ позволяет точечно «подсказать» программе правильное состояние сотрудника без вмешательства в закрытые кадровые документы прошлых лет.


Дополнительный совет: Проверка настроек списка сотрудников

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

  1. Откройте справочник «Сотрудники».
  2. В правом верхнем углу нажмите кнопку Еще — Настроить список....
  3. Перейдите на вкладку Условное оформление.
  4. Убедитесь, что там не активен флажок «Показывать только состояния отклонений». Если этот флажок включен, программа может скрывать стандартное состояние увольнения и выводить только промежуточные или некорректные статусы.
  5. Также через меню Еще — Изменить форму вы можете принудительно вывести на экран колонку «Дата увольнения», чтобы визуально сверять реальные кадровые данные с расчетным полем «Состояние».

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

← На главную