///
Графики работы, их значение и создание в среде разработки 1С:Предприятие 8.3.

Графики работы, их значение и создание в среде разработки 1С:Предприятие 8.3

28.09.2021

Графики работы, их значение и создание в среде разработки 1С:Предприятие 8.3

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

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

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

В среде разработки 1С:Предприятие 8.3 при решении расчетных задач, делая первичные начисления, используется отношение фактически отработанного времени к рабочему времени, определяемому рабочим графиком сотрудника. Без определения рабочего времени соответствующим графиком работы правильное начисление зарплаты сотрудникам было бы невозможно. Нужно учесть, что рабочее время сотрудников можно измерять рабочими днями и рабочими часами в зависимости от вида начисления: при часовой тарифной ставке формула начисления предусматривает фактически отработанное время в часах/рабочее время в часах по графику; при начислении окладов- фактически отработанное время в днях/ рабочее время в днях по графику.

Далее в статье будет описана последовательность действий разработчика при создании механизма рабочих графиков.

Конфигурирование

Для определения прикладного объекта конфигурации, который хранил бы рабочее и нерабочее время рабочего графика определим необходимые и достаточные реквизиты:

1. Дата календаря - тип ДАТА

2. Значение-тип ЧИСЛО:

Значение может содержать количество рабочих часов в день или 1= рабочему дню. Нерабочее время на дату определим Значением=0;

3. Наименование Графика.

Единицами рабочего времени могут быть дни или часы. Поэтому создадим перечисление для их хранения.

1.Перечисление «ЕдиницаРабочегоВремени»

рисунок 1

Добавим значения единиц измерения времени.

рисунок 2

Применяемые графики работы как объекты учета могут храниться в справочнике.

2.Справочник «ГрафикиРаботы»

рисунок 3

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

  • КоличествоРабочихДнейВНеделе;
  • КоличествоРабочихЧасов;
  • ЕдиницаРабочегоВремени.
рисунок 4

Создадим форму элемента справочника для написания процедур в модуле формы.

рисунок 5

Для заполнения и очистки рабочего графика создадим на форме команды:

  • ЗаполнитьГрафик
  • ОчиститьГрафик

Для заполнения периода графика добавим реквизиты: ДатаНачалаПериода ; ДатаКонцаПериода.

рисунок 6
рисунок 7

3.Регистр сведений «ГрафикиРаботы»

Для хранения дат рабочего и нерабочего времени в течение указанного периода используем прикладной объект конфигурации – регистр сведений.

Создадим регистр сведений ГрафикиРаботы.

рисунок 8

Добавим измерения: Дата –тип ДАТА и ГрафикРаботы-тип СправочникСсылка.ГрафикиРаботы.

рисунок 9

4.Справочник «Праздники»

К нерабочему времени можно отнести праздничные дни. Для их создания и хранения создадим справочник Праздники.

рисунок 10

Программирование

1.В модуле справочника «ГрафикиРаботы»

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

рисунок 11.1
рисунок 11.2

2.Общий модуль РасчетыНаСервере

В общем модуле РасчетыНаСервере напишем экспортную функцию, в которую в качестве параметров передадим КалендарнуюДату, чтобы определить по ней к рабочему или нерабочему времени она относится, ЕРВ-единицу рабочего времени, КРЧ-количество рабочих часов в неделе, КРД-количество рабочих дней в неделе и Наименование графика.

рисунок 12.1
рисунок 12.2

3.Модуль формы справочника ГрафикиРаботы

Создадим процедуру обработчик команды «ЗаполнитьГрафик».

рисунок 13

Создадим процедуру обработчик команды «ОчиститьГрафик».

рисунок 14

Использование механизма рабочих графиков пользователем в режиме 1С:Предприятие

Использование механизма рабочих графиков пользователем в режиме 1С:Предприятие

Заполняем справочник праздничными днями

рисунок 15

2.Справочник «ГрафикиРаботы»

Заполним реквизиты элемента справочника:

  • Наименование;
  • Количество рабочих дней в неделе;
  • Единицу рабочего времени;
  • Дату начала и окончания периода заполнения рабочим и нерабочим временем.

А) Пример заполнения рабочими днями:

рисунок 16

Выполним команду «ЗаполнитьГрафик» и проверим результат заполнения указанного периода рабочим и нерабочим временем в регистре «ГрафикиРаботы».

3.Регистр сведений «ГрафикиРаботы»

Проверим заполнение рабочими и нерабочими днями период графика.

рисунок 17

Б) Пример заполнения рабочими часами:

Заполним реквизиты справочника «ГрафикиРаботы».

рисунок 18
рисунок 19

Изучить программирование 1С вы можете в Учебном Центре Первого Бита. Ознакомьтесь с расписанием и оставьте заявку. Наши менеджеры подберут для вас подходящие курсы.


Расписание курсов 1C


Подпишитесь на нас!
И получите в подарок промокод на 1500 руб! Все новые статьи, акции и анонсы каждую неделю: