При расчете отпускных выплат в программе 1С:Зарплата и Управление Персоналом (редакция 2.5) ключевую роль играет количество отработанных календарных дней за расчетный период. В отличие от редакции 3.0, где эти показатели фиксируются в специализированных регистрах накопления, в ЗУП 2.5 данный механизм реализован иначе. Проанализируем, где в пользовательском интерфейсе найти эти данные, как программа рассчитывает дни и что делать, если значения рассчитываются некорректно.
Разберем важную особенность архитектуры редакции 2.5: отработанные календарные дни не хранятся в системе в виде готовой итоговой цифры по сотруднику за каждый месяц. Программа вычисляет этот показатель динамически в момент расчета среднего заработка.
Общая логика расчета основана на формуле вычитания периодов отклонений из полного календарного периода:
Количество отработанных календарных дней = Всего календарных дней в месяце - Количество неотработанных календарных дней
Для расчета используются регистры расчета ОсновныеНачисленияСотрудниковОрганизаций и ДополнительныеНачисленияСотрудниковОрганизаций, а также сведения производственного календаря и графиков работы. В неполных месяцах система умножает полученную пропорцию отработанных дней на среднемесячный коэффициент (29.3).
Рассмотрим, где увидеть и проверить итоговые рассчитанные значения непосредственно в документе расчета отпуска:
В этой колонке программа показывает итоговое количество календарных дней, принятое к расчету среднего заработка за каждый месяц расчетного периода — как для полностью отработанных месяцев (где берется норма 29.3), так и для неполных месяцев.
Выясним, как детально проверить точность проведенных расчетов и увидеть все исключенные дни (больничные, командировки, отпуска за свой счет):
Если учет в информационной базе начался недавно и исторические данные по начислениям отсутствуют, количество отработанных дней за прошлые периоды задается вручную.
Посмотрим, где находятся эти сведения: данные вводятся и просматриваются в документе «Ввод сведений о среднем заработке» на соответствующей вкладке расчета отпускных. Введенные значения будут напрямую учитываться алгоритмами программы при последующих расчетах.
Проанализируем техническую сторону вопроса. Если необходимо получить данные программно или написать собственный запрос, следует учитывать особенности хранения сведений о графиках и календарных днях.
В конфигурации используется регистр сведений ГрафикиРаботыПоВидамВремени, содержащий ресурс ПроизводственныйКалендарьКалендарныеДни. Однако при работе с ним важно помнить, что в этот ресурс не всегда попадают государственные праздничные дни, хотя при расчете отпуска они не исключаются из календарного периода.
Для корректного программного определения периодов и дат рекомендуется изучить работу специализированных функций конфигурации, таких как:
// Пример обращения к функции расчета дат по календарным дням
ДатаОкончания = КадровыйУчет.ДатаОкончанияОтпускаПоКалендарнымДням(ДатаНачала, КоличествоДней);
Рассмотрим распространенные ситуации, когда программа неправильно рассчитывает количество отработанных календарных дней:
Больничный лист, Невыходы в организациях), система не вытеснит эти дни и учтет период как полностью отработанный. Решение: всегда оформлять первичные расчетные или кадровые документы-отклонения.ОсновныеНачисленияОрганизаций на вкладке «Прочие».