В современной корпоративной культуре часто встречается практика предоставления сотрудникам нескольких оплачиваемых дней в году, которые они могут использовать для личных нужд или при легком недомогании без оформления больничного листа. Перед специалистом 1С встает сложная задача: как зафиксировать такое отсутствие, сохранить полную оплату по окладу, не исказить официальный табель Т-13 и при этом жестко контролировать годовой лимит (например, не более 3-х дней в год). Рассмотрим подробнее несколько способов реализации этой задачи в версии ЗУП КОРП.
Поскольку используется версия КОРП, мы можем задействовать встроенную подсистему управления персоналом. Этот метод наиболее изящен для контроля лимитов. Разберем по шагам, как это настроить.
Во-первых, необходимо создать новый Вид отсутствия. В разделе «Настройки» — «Виды отсутствий» создаем элемент, например, «Личный день (оплачиваемый)». Настраиваем для него периодичность (раз в год) и количество дней. Это позволит программе автоматически отслеживать остатки, аналогично остаткам отпусков.
Во-вторых, настроим связь с расчетом зарплаты. Проанализируем ситуацию: нам нужно, чтобы при вводе такого отсутствия оклад сотрудника не уменьшался. Для этого создадим новое начисление. В настройках начисления на вкладке «Учет времени» укажем:
Таким образом, сотрудник сможет через самообслуживание подать заявку на отсутствие, руководитель ее одобрит, а система автоматически уменьшит доступный лимит дней, сохранив при этом полную зарплату.
Если нет необходимости внедрять полноценное самообслуживание, можно пойти по пути упрощенного учета через Показатели расчета зарплаты. Рассмотрим этот вариант подробнее.
Создадим новый показатель «ИспользованоЛичныхДней». Настроим его как «Числовой», «Для сотрудника» и укажем, что он вводится только в месяце, когда используется. Далее создадим Шаблон ввода исходных данных. Этот шаблон позволит кадровику или расчетчику вводить документ «Данные для расчета зарплаты», где просто фиксируется факт использования дня.
Для контроля лимита в данном методе придется разработать небольшой отчет на СКД (Системе компоновки данных), который будет суммировать значения этого показателя с начала года по каждому сотруднику. Проанализируем формулу начисления: сам показатель может не участвовать в расчете напрямую (не влиять на сумму), а служить лишь маркером для учета.
Этот способ позволяет видеть отсутствие в табеле, но сохранять оплату по окладу без настройки сложных начислений. Выясним причину, почему это работает: большинство типовых начислений (Оклад по дням/часам) в ЗУП настроены так, что они оплачивают все виды времени, которые входят в группу «Рабочее время».
Выполним следующие настройки:
При заполнении Табеля или использовании документа Отсутствие с сохранением оплаты, мы будем указывать этот вид времени. Программа увидит, что это «Явка», и при расчете начисления «Оклад по дням» включит эти дни в оплату. Для контроля лимита в 3.1 КОРП можно использовать отчет «Потери рабочего времени» или типовой отчет «Табель», настроив отбор по созданному коду времени.
Если требуется строгий автоматизированный контроль «день в день» и типовых средств недостаточно, рассмотрим вариант с небольшим расширением конфигурации. Мы можем создать:
Процедура ПередЗаписью(Отказ, РежимЗаписи, РежимПроведения)
Если ОбменДанными.Загрузка Тогда Возврат; КонецЕсли;
Запрос = Новый Запрос;
Запрос.Текст =
"ВЫБРАТЬ
| СУММА(Лимиты.КоличествоДней) КАК Использовано
|ИЗ
| РегистрСведений.ИспользованиеЛичныхДней КАК Лимиты
|ГДЕ
| Лимиты.Сотрудник = &Сотрудник
| И Лимиты.Период МЕЖДУ &НачалоГода И &КонецГода";
// ... установка параметров и выполнение запроса ...
Если РезультатЗапроса > ДопустимыйЛимит Тогда
Сообщение = Новый СообщениеПользователю;
Сообщение.Текст = "Превышен лимит оплачиваемых отсутствий для сотрудника!";
Сообщение.Сообщить();
Отказ = Истина;
КонецЕсли;
КонецПроцедуры
Такой подход является максимально гибким. Мы можем регистрировать данные в этом документе, а при проведении делать движения по регистру и одновременно «подкладывать» данные в типовые механизмы учета времени, не меняя основную конфигурацию.
При реализации любого из методов важно проанализировать, как эти дни должны влиять на средний заработок для будущих отпусков или больничных. Если мы учитываем эти дни как Явку, то:
Это самый простой вариант, который обычно устраивает бухгалтерию, так как сотрудник фактически получает свою обычную зарплату. Однако, если методология компании подразумевает исключение этих периодов из расчета среднего (как при обычном отпуске), то необходимо использовать документ Отсутствие с сохранением оплаты с видом времени, который не является явкой, и настраивать начисление по среднему заработку, что может быть невыгодно сотруднику.
Посмотрим на ситуацию с точки зрения кадрового учета: если вы не хотите видеть «странные» коды в официальной печатной форме Т-13, используйте Метод 1 или 2, где в табеле остается обычная «Я», а дополнительный учет ведется «за кадром» в регистрах или показателях.