При ведении учета в программе «1С:Зарплата и управление персоналом 3.1» расчетчики часто сталкиваются со специфической проблемой: если сотрудникам бригады начисляется сдельный заработок, а кто-то из них в течение месяца уходил на больничный или в отпуск, программа отказывается автоматически рассчитывать сдельщину при заполнении документа Начисление зарплаты и взносов или выдает ошибку о пересечении периодов проведения.
В этой статье мы подробно разберем, почему возникает такое поведение системы, проанализируем внутренние механизмы платформы 1С и рассмотрим несколько практических способов решения данной проблемы — от простых настроек приоритетов до профессиональной схемы с разделением начислений.
Для начала проанализируем, как программа обрабатывает показатели выработки. В настройках любого сдельного начисления на вкладке «Основное» есть ключевой переключатель: «Значения накапливаемых показателей подбираются». У него есть два режима работы:
Данные для расчета зарплаты (сдельного наряда) с рабочими днями сотрудника. Если наряд зарегистрирован датой (например, 31-м числом), в которую сотрудник фактически отсутствовал (болел или находился в отпуске), программа считает, что сдельная работа выполнялась в период отклонения. Возникает логический конфликт периодов вытеснения, и документ начисления зарплаты не проводится.Рассмотрим по шагам проверенные практические методы решения этой проблемы.
Этот метод является самым надежным и методологически верным в экосистеме 1С. Мы разделяем учет денежных средств и учет фактически отработанного времени на два самостоятельных вида расчета. Это позволяет корректно начислить сдельную оплату за месяц без конфликтов с больничными и сохранить правильные данные для расчета среднего заработка.
Шаг 1. Настройка первого начисления — «Сдельный заработок (оплата)»
Это начисление будет отвечать исключительно за финансовую составляющую:
Настройки — Начисления и откроем (или создадим заново) начисление Сдельный заработок (оплата).Повременная оплата труда и надбавки или Прочие начисления и выплаты.Рабочее время, а в поле «Использовать время» укажем: Дополнительная оплата за уже оплаченное время. Благодаря этому начисление не будет пытаться регистрировать рабочие дни самостоятельно.Шаг 2. Настройка второго начисления — «Учет времени сдельщиков»
Это начисление нужно для того, чтобы зафиксировать в регистрах отработанные дни и часы с учетом всех вытеснений (больничных, отпусков):
Учет времени сдельщиков.Повременная оплата труда и надбавки. Начисление выполняется: Ежемесячно.
ТарифнаяСтавкаЧасовая * ВремяВЧасах * 0
Или, если используется дневной тариф:
Оклад * ВремяВДнях / НормаДней * 0
Рабочее время (вид времени по классификатору — Явка). Использовать время: За работу в пределах нормы времени.Больничный, Отпуск основной, Отпуск без сохранения оплаты, Командировка и другие невыходы.Шаг 3. Назначение сотрудникам
При приеме на работу или кадровом переводе назначим сотрудникам-сдельщикам оба этих начисления в качестве плановых. В результате при заполнении документа Начисление зарплаты и взносов программа начислит сумму сдельного заработка (без конфликта с больничными) и одновременно зафиксирует реальное отработанное время строкой с нулевой суммой. При этом в расчетном листке сотрудника будет выводиться только итоговая сумма сделки, а средний заработок для будущих периодов рассчитается абсолютно корректно.
Если вы хотите использовать только одно стандартное начисление сдельного заработка с настройкой подбора показателей «По соответствию даты регистрации интервалу начисления», вам придется жестко настроить правила вытеснения времени.
Разберем, как это сделать по шагам:
Сдельный заработок.Важно: Этот способ сработает только в том случае, если документ выработки (наряд) зарегистрирован датой, в которую сотрудник реально работал хотя бы часть времени. Если же наряд внесен датой, полностью приходящейся на период больничного, система все равно может выдать ошибку проведения.
Этот способ часто применяется в небольших организациях, где нет возможности или желания менять типовые настройки программы и создавать дополнительные начисления.
Если у вас есть сотрудник или бригада, в которой кто-то заболел в конце месяца (например, с 28 по 31 число), не вносите итоговый документ Данные для расчета зарплаты датой последнего дня месяца. Проанализируйте табель учета рабочего времени и выберите дату регистрации документа (например, 25-е число), когда вся бригада гарантированно находилась на рабочих местах.
Для больших предприятий с высокой текучестью кадров и частыми больничными данный метод малопригоден, так как требует от расчетчика постоянного ручного мониторинга дат.
Если на предприятии принципиально не хотят видеть в расчетных листках и кадровых документах "лишние" нулевые начисления для учета времени, проблему можно решить с помощью программиста 1С путем написания небольшого расширения конфигурации.
Суть технического решения заключается в следующем:
Выработка сотрудников не на дату документа, а распределяет их пропорционально отработанному времени по рабочим дням сотрудников согласно графику или фактически заполненному табелю.Мы проанализировали основные варианты обхода ограничений платформы при расчете сдельного заработка. Для большинства стабильно работающих компаний наиболее надежным, не требующим программирования и полностью поддерживаемым со стороны обновлений 1С является Способ 1 (Схема «Два начисления»). Он гарантирует бесперебойный расчет зарплаты и точное соблюдение законодательства при расчете среднего заработка для отпусков и пособий.