Для того, чтобы иметь возможность регистрировать в базе данных начисления производимые сотрудникам OOO "На все руки мастер", нам понадобится специальный документ.
Откроем конфигуратор и создадим новый документ. Назовем его "НачисленияСотрудникам".
Этот документ будет иметь табличную часть "Начисления", содержащую следующие реквизиты:
· | "Сотрудник", тип СправочникСсылка.Сотрудники, |
· | "ГрафикРаботы", тип СправочникСсылка.ВидыГрафиковРаботы, |
· | "ДатаНачала", тип Дата, |
· | "ДатаОкончания", тип Дата, |
· | "ВидРасчета", тип ПланВидовРасчетаСсылка.ОсновныеНачисления, |
· | "Результат", тип Число, длина 15, точность 2. |
Реквизиты "ДатаНачала" и "ДатаОкончания" понадобятся нам для того, чтобы задавать период, в котором должна действовать запись расчета.
На закладке "Движения" запретим оперативное проведение документа, отметим, что документ будет создавать движения по регистру расчета "Начисления" и запустим конструктор движений.[341]
В окне конструктора выберем табличную часть "Начисления" нажмем "ЗаполнитьВыражения". Для реквизитов "ПериодДействияКонец" и "БазовыйПериодКонец" укажем выражение "КонецДня(ТекСтрокаНачисления.ДатаОкончания)"
Реквизиту "ИсходныеДанные" поставим в соответствие реквизит табличной части "Результат", а для реквизита "Результат" наоборот удалим выражение, присвоенное ему конструктором:
Нажмем "ОК" и посмотрим текст обработчика, созданный конструктором:
Процедура ОбработкаПроведения(Отказ, Режим)
//{{__КОНСТРУКТОР_ДВИЖЕНИЙ_РЕГИСТРОВ
// Данный фрагмент построен конструктором.
// При повторном использовании конструктора, внесенные вручную изменения будут утеряны!!!
Для Каждого ТекСтрокаНачисления Из Начисления Цикл
// регистр Начисления
Движение = Движения.Начисления.Добавить();[342]