Как исправить ошибку несоответствия видов времени в Табеле и Графике работы в 1С:ЗУП 3.0

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

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

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

Причина возникновения проблемы

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

Решение 1: Отключение проверки соответствия (Самый простой способ)

Начиная с релиза 3.0.22, разработчики добавили возможность смягчить эту проверку. Рассмотрим, как это сделать в интерфейсе программы:

  1. Перейдем в раздел Настройка.
  2. Выберем пункт Расчет зарплаты.
  3. Найдем флажок Проверять соответствие фактического времени плановому.
  4. Снимем этот флажок.

После снятия этой настройки система позволит проводить Табель с любыми видами времени, даже если они противоречат графику. Однако стоит помнить, что это отключает контроль над всеми сотрудниками. Разберем последствия: если расчетчик случайно поставит явку во время отпуска, программа может не выдать предупреждение, что приведет к переплате.

Решение 2: Использование Индивидуальных графиков

Если мы не хотим отключать общую проверку, проанализируем ситуацию с использованием документа Индивидуальный график. Это «правильный» с точки зрения методологии 1С путь.

Когда мы создаем Индивидуальный график на месяц, он полностью замещает собой общий график сотрудника. Если в конкретный день нужно вместо рабочей смены поставить выходной (и при этом не уменьшать норму времени, либо наоборот — уменьшить ее), мы фиксируем это в графике. Проблема здесь в том, что Индивидуальный график пересчитывает норму рабочего времени. Если вместо 21 рабочего дня мы укажем 20, то оклад за месяц будет выплачен в полном объеме за 20 дней, так как норма теперь равна факту.

Рассмотрим хитрость, предложенную пользователями (Message 1):

  1. Вводим Индивидуальный график, где проставляем нужные выходные/явки.
  2. Проводим его.
  3. Заполняем и проводим Табель.
  4. Распроводим (отменяем проведение) Индивидуальный график.

В результате Табель остается проведенным, а расчет зарплаты (норма времени) подтягивается из основного графика. Однако этот метод является «костылем» и может привести к ошибкам при пересчете зарплаты в будущем.

Решение 3: Оформление через документы-отклонения

Посмотрим на ситуацию с точки зрения трудового законодательства. Если сотрудник не вышел в свой рабочий день, это не просто «выходной», а отсутствие. Выясним, как это оформить правильно:

Решение 4: Программное изменение логики (Для программистов)

Если вы работаете на старом релизе или по каким-то причинам не можете использовать стандартные настройки, проанализируем код модуля. Основная проверка выполняется в общем модуле УчетРабочегоВремени.

Найдем процедуру СоздатьВТДопустимыеСочетанияПлановогоИФактическогоВремени. Чтобы разрешить сочетание явки и выходного, можно внести изменения в формирование таблицы соответствий. Рассмотрим пример кода, который снимает ограничение:


// В модуле УчетРабочегоВремени находим формирование таблицы ТаблицаСоответствия
// Комментируем жесткие условия проверки
// Если Выборка.ОсновноеВремя <> ВидВремениВыходной Тогда

СтрокаТаблицы = ТаблицаСоответствия.Добавить();
СтрокаТаблицы.ВидВремениПлановый = ВидВремениЯвка;
СтрокаТаблицы.ВидВремениФактический = Выборка.ОсновноеВремя;

// Добавляем возможность ставить явку в выходной
СтрокаТаблицы = ТаблицаСоответствия.Добавить();
СтрокаТаблицы.ВидВремениПлановый = ВидВремениВыходной;
СтрокаТаблицы.ВидВремениФактический = Выборка.ОсновноеВремя; 

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

Влияние на средний заработок и отчетность

Разберем важный нюанс: любые манипуляции с видами времени в табеле напрямую влияют на расчет среднего заработка для отпусков и командировок. Если вы ставите «Явку» (код Я) вместо «Выходного» (код В), эти часы и дни включаются в отработанное время. Если же вы ставите выходной в рабочий день без оформления официального отсутствия, это может привести к занижению среднего заработка в будущем.

Также проанализируем влияние на стаж для СФР (бывший ПФР). Коды «Явка» и «Выходной» обычно не прерывают стаж, но если вы начнете использовать специфические коды (например, «НН» — неявка по невыясненным причинам), это может отразиться в отчетности ЕФС-1 (ранее СЗВ-СТАЖ) как разрыв стажа или особый период.

Резюме

Выясним, какой путь лучше выбрать:

  1. Если организация небольшая и контроль не критичен — отключите проверку в настройках расчета зарплаты.
  2. Если нужно разовое изменение для конкретного сотрудника — используйте Индивидуальный график или документы-отклонения (Отгул, Отпуск за свой счет).
  3. Если у вас специфическое производство с постоянными «подменами» — рассмотрите переход на актуальные релизы ЗУП 3.1, где функционал Изменение графиков работы списком позволяет оперативно управлять плановым временем без долгой бумажной волокиты.
← На главную