Создание регистра расчета Начисления

 
 

Прежде, чем мы начнем создавать объект конфигурации Регистр расчета «Начисления», нам потребуется создать два дополнительных объекта конфигурации - регистр сведений «ГрафикиРаботы» и справочник «ВидыГрафиковРаботы». Справочник понадобится нам для того, чтобы хранить информацию о том, какие графики работы существуют в OOO «На все руки мастер», а регистр сведений - для указания того, какие дни в месяце являются рабочими, поскольку сумма оплаты по окладу будет рассчитываться исходя из того, сколько дней отработал сотрудник в расчетном месяце. Откроем конфигуратор и создадим новый объект конфигурации Справочник с именем «ВидыГрафиковРаботы». В этом справочнике у нас будет два предопределенных графика работы - «ГрафикАдминистрации» и «ГрафикМастеров».

После этого создадим объект конфигурации Регистр сведений с именем «ГрафикиРаботы». Этот регистр будет иметь два измерения:

• «ГрафикРаботы», тип СправочникСсылка.ВидыГрафиковРаботы,

• «Дата», тип Дата.

Затем создадим единственный ресурс регистра - «Значение», с типом Число, длиной 1.

Запустим 1С:Предприятие в режиме отладки и заполним регистр данными о рабочих днях марта графика мастеров. Чтобы проще выполнить эту довольно однообразную работу, можете воспользоваться возможностью добавления элементов в справочник копированием (Действия | Скопировать). Не забудьте, что 8 марта выходной день, и у вас должно получиться 22 рабочих дня в марте.

 
 

Теперь все готово для создания регистра расчета.

Создадим новый объект конфигурации Регистр расчета с именем «Начисления». В качестве плана видов расчета, используемого регистром, выберем план видов расчетов «ОсновныеНачисления». Установим, что регистр будет использовать период действия, график будет задаваться в регистре сведений «ГрафикиРаботы», значение графика будет находиться в ресурсе «Значение», а дата графика - в измерении «Дата».

Укажем, что регистр расчета будет использовать базовый период, и периодичность регистра будет «Месяц».

 
 

Затем перейдем на закладку «Данные» и создадим:

• измерение «Сотрудник», тип СправочникСсылка.Сотрудники, базовое,

• ресурс «Результат», тип Число, длина 15, точность 2,

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

• реквизит «ИсходныеДанные», тип Число, длина 15, точность 2.

Реквизит «ГрафикРаботы» мы будем использовать для того, чтобы связать запись регистра с используемым графиком работы, а реквизит «ИсходныеДанные» - чтобы хранить в нем данные, которые могут понадобиться при расчете или перерасчете (в нашем примере это будет расчет оклада.

Теперь перейдем на закладку «Перерасчеты». Создадим объект конфигурации Перерасчет, который так и назовем - «Перерасчет», у него будет единственное измерение - «Сотрудник», для которого в установке связи мы укажем измерение регистра «Сотрудник» и в качестве данных ведущих регистров выберем то же самое измерение «Сотрудник» регистра расчета «Начисления».
Создание документа НачисленияСотрудникам

Для того, чтобы иметь возможность регистрировать в базе данных начисления производимые сотрудникам OOO «На все руки мастер», нам понадобится специальный документ.

Откроем конфигуратор и создадим новый документ. Назовем его «НачисленияСотрудникам».

Этот документ будет иметь табличную часть «Начисления», содержащую следующие реквизиты:

• «Сотрудник», тип СправочникСсылка.Сотрудники,

• «ГрафикРаботы», типСправочникСсылка.ВидыГрафиковРаботы,

• «ДатаНачала», тип Дата,

• «ДатаОкончания», тип Дата,

• «ВидРасчета», тип ПланВидовРасчетаСсылка.ОсновныеНачисления,

• «Результат», Число, длина 15, точность 2.

Реквизиты «ДатаНачала» и «ДатаОкончания» понадобятся нам для того, чтобы задавать период, в котором должна действовать запись расчета. На закладке «Движения» запретим оперативное проведение документа, отметим, что документ будет создавать движения по регистру расчета «Начисления» и запустим конструктор движений.

В окне конструктора выберем табличную часть «Начисления» нажмем «ЗаполнитьВыражения». Для реквизитов «ПериодДействияКонец» и «БазовыйПериодКонец» укажем выражение «КонецДня(ТекСтрокаНачисления.ДатаОкончания)» Реквизиту «ИсходныеДанные» поставим в соответствие реквизит табличной части «Результат», а для реквизита «Результат» наоборот удалим выражение, присвоенное ему конструктором:

 
 

Нажмем «ОК» и посмотрим текст обработчика, созданный конструктором:

 
 

Запустим 1С:Предприятие в режиме отладки и посмотрим, как работает наш документ.

 
 

Начислим оклад за март всем сотрудникам OOO «На все руки мастер», как показано на рисунке:


Проведем документ и посмотрим, какие движения он сформировал в регистре «Начисления»:

Обратите внимание на то, что платформа привела период регистрации каждой записи к началу периода регистра расчета (в обработчике проведения мы указывали значение даты документа - 08.04.2004). Кроме этого заметьте, что с каждой записью мы сохранили в реквизите «ИсходныеДанные» размер оклада сотрудника, введенный в документе, чтобы в дальнейшем рассчитать сумму оплаты по окладу.

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


Понравилась статья? Добавь ее в закладку (CTRL+D) и не забудь поделиться с друзьями:  



double arrow
Сейчас читают про: