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