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