Почему в управленческой зарплате 1С:УПП отработанное время считается по норме графика, а не по табелю?

Программист 1С v8.3 (Обычные формы) Управленческий учет IT и автоматизация бизнеса
← На главную

При настройке управленческого учета заработной платы в конфигурации 1С:Управление производственным предприятием 1.3 нередко возникает ситуация: сотруднику введен табель учета рабочего времени с явными переработками (например, 198 часов при графиковой норме 164,5 часа), однако при расчете начисления по произвольной формуле программа упорно подставляет часы по норме графика.

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

Архитектурная причина поведения системы

Проанализируем ситуацию с точки зрения механизмов платформы и структуры конфигурации УПП. Проблема заключается в разделении контуров регламентированного и управленческого учета:

  1. Изоляция контуров учета: Документ ТабельУчетаРабочегоВремени формирует движения строго для регламентированного расчета зарплаты сотрудников организаций. Отдельного управленческого документа «Табель» в типовой конфигурации не предусмотрено.
  2. Особенности формирования запроса показателей: В алгоритмах расчета управленческой зарплаты при сборе значений предопределенных показателей произвольных формул (таких как ВремяВЧасах или ОтработаноВремениВЧасах) запрос обращается напрямую к графику работы сотрудника предприятия через левое соединение, полностью игнорируя регламентированный табель.
  3. Методология видов времени: Даже в расчетных механизмах регламентированного учета основное явочное время («Я») ограничено плановым графиком. Часы, отработанные сверх нормы, классифицируются системой как переработка или сверхурочные («С», «РВ») и не увеличивают показатель нормы/явки в стандартных формулах оклада напрямую.

По этой причине расчет с комментарием всегда возвращает норму графика, сколько бы фактических часов ни содержал регламентированный табель.

Вариант 1. Использование пользовательского показателя схемы мотивации (без доработки конфигурации)

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

  1. Перейдем в справочник ПоказателиСхемМотивации и создадим новый показатель, например, ФактическиОтработаноЧасов. Назначим ему вид: числовой, вводится ежемесячно перед расчетом для каждого сотрудника.
  2. Скорректируем формулу в плане видов расчета управленческих начислений:
    
    Результат = Тарифная ставка месячная * ФактическиОтработаноЧасов / Норма времени в часах
    
  3. Ввод фактических часов выполняем с помощью документа ВводЗначенийПоказателейСхемМотивации (или вручную в табличную часть начисления). Для удобства заполнения этого документа фактическими часами из регламентированного табеля можно подключить простую внешнюю обработку табличной части.

Вариант 2. Разделение начислений на оклад и доплату за переработку

Если методология компании допускает начисление переработки отдельной строкой, разберем типовую схему разделения:

  1. Основное начисление оставляем рассчитываться по графику за норму часов (164,5 часа) с типовой формулой: Результат = Тарифная ставка месячная / Норма времени в часах * Время в часах
  2. Создаем дополнительный вид расчета для оплаты переработок (например, «Управленческая доплата за сверхурочные часы»), где результат вычисляется исходя из часовой ставки: Результат = (Тарифная ставка месячная / Норма времени в часах) * ЧасыПереработки
  3. Часы переработки (в данном примере: 198 - 164,5 = 33,5 часа) фиксируются отдельным показателем или вносятся разовым начислением. Это позволяет прозрачно видеть в расчетном листке базовую часть оклада и сумму за переработанное время.

Вариант 3. Доработка запроса расчета показателей в конфигураторе

Если конфигурация уже находится на поддержке с возможностью изменения и требуется, чтобы показатель ОтработаноВремениВЧасах сразу видел данные табеля, выясним причину в коде общего модуля.

В процедурах сбора данных для плана видов расчета УправленческиеНачисления выполняется левое соединение с графиками. Для изменения поведения потребуется модифицировать текст запроса расчета показателей произвольных формул:

  1. Найдем место соединения с графиком работы в процедуре подготовки данных расчета управленческой зарплаты.
  2. Заменим левое соединение к графику на обращение к фактическим данным регистра накопления рабочего времени или напрямую к данным документа регламентированного табеля, связав записи по физическому лицу сотрудника за текущий расчетный месяц.
  3. Обеспечим суммирование как основного явочного времени, так и сверхурочных часов, передавая итоговое число в поле ОтработаноВремениВЧасах.

Данный путь требует тщательного тестирования, так как изменение поведения базового запроса повлияет на все управленческие начисления, использующие учет отработанного времени.

← На главную