Готовишься к экзамену?
Полнофункциональный тренажер @bot_1cnik_bot с полноценным обучением, режимом экзамена и подробной статистикой.
В 1С при расчете начислений, от которых затем зависит сумма к выплате и автозаполнение документа «Ведомость в кассу», какой «вид периода» нужно передать в метод ПолучитьДанныеГрафика, чтобы получить количество фактически отработанных сотрудником дней?
Передать период регистрации записи (когда запись внесена/зарегистрирована).
Неправильно: период регистрации показывает, когда запись учтена в системе, но не отражает фактически отработанное время сотрудника; для отработанных дней нужен период, учитывающий реальное действие записи с учетом вытеснений.
Передать период действия записи (плановый интервал действия начисления).
Неправильно: период действия - это «как задумано» по записи, но при отклонениях (вытеснениях, невыходах и т.п.) фактическая отработка может отличаться, поэтому для отработанных дней используют фактический период.
Передать фактический период действия записи (интервал действия с учетом вытеснений и корректировок).
Правильно: чтобы получить именно отработанные дни, метод ПолучитьДанныеГрафика должен опираться на фактический период действия - он отражает реальное действие записи с учетом вытеснений, и по нему корректно считается фактически отработанное время.
Передать базовый период записи (период, за который производится расчет базы).
Неправильно: базовый период относится к формированию базы расчета и не предназначен для определения фактически отработанных дней по графику; для этого используется фактический период действия записи.
Пояснение
Расширенная подсказка (как это связано с автозаполнением «Ведомости в кассу»):
1) Почему разработчику вообще нужен ПолучитьДанныеГрафика
Во многих начислениях сумма зависит от коэффициента отработанного времени (например, «ВремяВДнях / НормаДней»). Если коэффициент посчитан неверно, то неверными будут начисления/удержания, а значит и сумма «к выплате», которую затем подтянет «Ведомость в кассу» по кнопке «Заполнить».
2) В чем ключевая разница «период действия» vs «фактический период действия»
- Период действия - это интервал, на который запись назначена.
- Фактический период действия - это интервал, на котором запись реально действует с учетом вытеснений (например, больничный/отпуск/невыход могут вытеснять начисление по периоду действия).
Когда нужно получить именно «сколько сотрудник реально отработал», ориентируются на фактический период.
3) Практический пример
Сотруднику назначен оклад на весь месяц, но в середине месяца он ушел в отпуск, который вытеснил оклад на часть периода.
- По периоду действия оклад «как бы действует» весь месяц.
- По фактическому периоду действия оклад действует только на оставшихся рабочих днях.
Если взять данные графика по фактическому периоду, получится корректное количество отработанных дней для начисления.
4) Как это помогает при разборе проблем автозаполнения ведомости
Если «Ведомость в кассу» заполнилась, но сумма к выдаче неожиданная, часто проблема не в самой ведомости, а в расчете начислений:
- проверьте, что расчет времени для начисления использует фактический период действия;
- пересчитайте начисления и заново выполните «Заполнить» в ведомости, чтобы подтянулись обновленные суммы «к выплате».
5) Где искать данные графика
В типовых рекомендациях по расчетным механизмам 1С описывается получение данных графика и работа с фактическим периодом действия (в том числе при вытеснениях) - это базовая опора для корректного расчета времени в днях/часах.