Периодические расчеты
Периодические расчеты — это один из механизмов платформы, позволяющий реализовывать различные модели расчета заработной платы с определенной периодичностью. Работа механизма периодических расчетов базируется на двух прикладных объектах: «План видов расчета» и «Регистр расчета».
Основные понятия
Период – определяет интервал дат для выбора записей.
Периодичность расчетов – определяет, с каким периодом будут выполняться расчеты (День, Месяц, Квартал или Год).
Период регистрации ‑ дата начала периода, указанного при регистрации расчета (обычно вычисляется по дате документа-регистратора), может приводиться к началу дня, месяца, квартала или года, зависит от периодичности регистра расчета.
Период действия ‑ начальная дата периода, определяемая в соответствии со значением свойства «Периодичность» у регистра расчета.
Период действия расчета ‑ определяется датой начала и датой окончания периода, за который производится расчет.
Механизм вытеснения – позволяет рассчитать «Фактический период действия» в пределах «Периода действия» на основании анализа записей в регистре расчета. Данный механизм влияет на состав записей в виртуальной таблице «ФактическийПериодДействия».
Фактический период действия ‑ определяет реальные периоды действия «Вида расчета» в пределах «Периода действия».
Базовый период ‑ это период, заданный свойствами БазовыйПериодНачало и БазовыйПериодКонец, в котором лежат записи регистра расчета, входящие в состав расчетной базы текущей записи регистра расчета. «Базовый период» может быть не кратен периоду регистра расчета.
Планы видов расчета
План видов расчета — это прикладной объект конфигурации, используемый в механизме сложных периодических расчетов, служащий для описания зависимости одних видов расчета от других.
Вид расчета – это объект базы данных описывающий принцип своего расчета с учетом связанных с ним других видов расчета. Могут добавляться разработчиком, как предопределенные элементы, так и пользователями в режиме 1С:Предприятие.
Базовые виды расчета – это виды расчета, которые будут являться базовыми для текущего вида расчета.
Вытесняющие виды расчета – это виды расчета, записи которых в регистрах расчета вытесняют записи данного вида расчета по периоду действия, принадлежащие этому же «Плану видов расчета». «Вытесняющие виды расчета» доступны, если в свойстве «Использует период действия» установлен флаг.
Ведущие виды расчета – это виды расчета, при вводе или изменении которых результат текущего вида расчета должен быть пересчитан. В качестве «Ведущих видов расчета» можно указать виды расчета из одного или нескольких «Планов видов расчета».
Стандартные табличные части
ВытесняющиеВидыРасчета – содержит список вытесняющих видов расчета. Активна если в свойстве «Использует период действия» установлен флаг.
Если в плане видов расчета указать, что «Прогул» вытесняет «Оклад», и, в то же время, «Оклад» вытесняет «Прогул», и попытаться сохранить изменения, то система выдаст предупреждение и не станет сохранять изменения.
ВедущиеВидыРасчета – содержит список ведущих видов расчета. Активна всегда.
БазовыеВидыРасчета – содержит список базовых видов расчета. Активна если в свойстве «Зависимость от базы» выбрано одно из значений: «Зависит по периоду действия» или «Зависит по периоду регистрации».
Свойства закладки «Расчет»
Основные настройки плана видов расчета осуществляются на закладке «Расчет».
Использует период действия ‑ определяет необходимость использования периода действия записи определенного вида расчета. При этом в «Плане видов расчета» должен быть хотя бы один «Вид расчета» обладающий протяженностью во времени. Если данное свойство установлено, то данный «План видов расчета» может быть назначен «Регистру расчета» с «Периодом действия», при этом все записи в регистре будут обладать протяженностью во времени.
Зависимость от базы – определяет, будут ли в этом «Плане видов расчета» находиться зависимые по базовому периоду «Виды расчета».
Существует три варианта:
- Не зависит – не зависит от «Базового периода».
- Зависит по периоду действия – зависит от протяженности во времени другого «Вида расчета», то есть в дальнейшем при определении расчетной базы для записи регистра расчета будут учитываться только те записи, у которых «Фактический период действия» попадает в «Базовый период».
Если установлена зависимость базы по периоду действия, то может произойти частичное попадание записей регистра расчета в базовый период, причем база будет рассчитана пропорционально тому, какую часть от фактического периода влияющей записи составляет перекрывающийся, с указанным базовым периодом, участок. При этом будут использованы данные графика, связанного с этой записью.
- Зависит по периоду регистрации – зависит от периода регистрации «Вида расчета», то есть в дальнейшем при определении расчетной базы для записи регистра расчета будут учитываться только те записи, у которых «Период регистрации» попадает в «Базовый период».
При указании варианта «Зависит по периоду действия» или «Зависит по периоду регистрации» у плана видов расчета активируется стандартная табличная часть «БазовыеВидыРасчета», в которой указываются базовые виды расчета для текущего вида расчета.
Чтобы табличная часть «БазовыеВидыРасчета» заполнилась видами расчета необходимо в списке «Базовые планы видов расчета» указать те планы видов расчета, из которых будут браться «Виды расчета» для вычисления «Расчетной базы».
Период действия является базовым периодом – указывает, что для получения базы в качестве «Базового периода» будет использоваться «Фактический период действия» с учетом всех вытеснений, а не «Базовый период» заданный свойствами БазовыйПериодНачало и БазовыйПериодКонец. Свойство «Период действия является базовым периодом» становится доступным после включения свойства «Использует период действия» и выбора одного из режима зависимости от базы «Зависит по периоду действия» или «Зависит по периоду регистрации».
Например, если «Повышенная премия за день» вытесняет «Премию процентом», при этом у «Премии процентом» не установлен флаг «Период действия является базовым периодом», то премия процентом будет рассчитана с учетом базового периода. Вытеснение на расчет премии процентом никак не повлияет.
Если у «Премии процентом» установлен флаг «Период действия является базовым периодом», то премия процентом будет рассчитана с учетом фактических периодов полученных на основе интервалов дат периодов действия, которые образовались за счет вытеснения «Премии процентом» другим видом расчета, а именно «Повышенной премией за день».
Предопределенные «Виды расчета»
В план видов расчета можно добавлять предопределенные виды расчета.
Для обращения к предопределенному виду расчета необходимо найти его по заданному в конфигураторе имени: ПланыВидовРасчета.<Имя плана видов расчета>.<Имя предопределенного объекта>.
Если по какой-либо причине в режиме 1С:Предприятие был удален предопределенный вид расчета, то для этого необходимо указать имя предопределенного вида расчета в свойстве «ИмяПредопределенныйДанных» и в свойстве «Предопределенный» установить значение «Истина».
Ваганов Сергей, эксперт в области разработки прикладных решений на платформе 1С:Предприятие, преподаватель-методист CORS Academy и автор курса «Разработчик 1С с нуля до профессионала».
Периодические расчеты
Периодические расчеты — это один из механизмов платформы, позволяющий реализовывать различные модели расчета заработной платы с определенной периодичностью. Работа механизма периодических расчетов базируется на двух прикладных объектах: «План видов расчета» и «Регистр расчета».
Основные понятия
Период – определяет интервал дат для выбора записей.
Периодичность расчетов – определяет, с каким периодом будут выполняться расчеты (День, Месяц, Квартал или Год).
Период регистрации ‑ дата начала периода, указанного при регистрации расчета (обычно вычисляется по дате документа-регистратора), может приводиться к началу дня, месяца, квартала или года, зависит от периодичности регистра расчета.
Период действия ‑ начальная дата периода, определяемая в соответствии со значением свойства «Периодичность» у регистра расчета.
Период действия расчета ‑ определяется датой начала и датой окончания периода, за который производится расчет.
Механизм вытеснения – позволяет рассчитать «Фактический период действия» в пределах «Периода действия» на основании анализа записей в регистре расчета. Данный механизм влияет на состав записей в виртуальной таблице «ФактическийПериодДействия».
Фактический период действия ‑ определяет реальные периоды действия «Вида расчета» в пределах «Периода действия».
Базовый период ‑ это период, заданный свойствами БазовыйПериодНачало и БазовыйПериодКонец, в котором лежат записи регистра расчета, входящие в состав расчетной базы текущей записи регистра расчета. «Базовый период» может быть не кратен периоду регистра расчета.
Планы видов расчета
План видов расчета — это прикладной объект конфигурации, используемый в механизме сложных периодических расчетов, служащий для описания зависимости одних видов расчета от других.
Вид расчета – это объект базы данных описывающий принцип своего расчета с учетом связанных с ним других видов расчета. Могут добавляться разработчиком, как предопределенные элементы, так и пользователями в режиме 1С:Предприятие.
Базовые виды расчета – это виды расчета, которые будут являться базовыми для текущего вида расчета.
Вытесняющие виды расчета – это виды расчета, записи которых в регистрах расчета вытесняют записи данного вида расчета по периоду действия, принадлежащие этому же «Плану видов расчета». «Вытесняющие виды расчета» доступны, если в свойстве «Использует период действия» установлен флаг.
Ведущие виды расчета – это виды расчета, при вводе или изменении которых результат текущего вида расчета должен быть пересчитан. В качестве «Ведущих видов расчета» можно указать виды расчета из одного или нескольких «Планов видов расчета».
Стандартные табличные части
ВытесняющиеВидыРасчета – содержит список вытесняющих видов расчета. Активна если в свойстве «Использует период действия» установлен флаг.
Если в плане видов расчета указать, что «Прогул» вытесняет «Оклад», и, в то же время, «Оклад» вытесняет «Прогул», и попытаться сохранить изменения, то система выдаст предупреждение и не станет сохранять изменения.
ВедущиеВидыРасчета – содержит список ведущих видов расчета. Активна всегда.
БазовыеВидыРасчета – содержит список базовых видов расчета. Активна если в свойстве «Зависимость от базы» выбрано одно из значений: «Зависит по периоду действия» или «Зависит по периоду регистрации».
Свойства закладки «Расчет»
Основные настройки плана видов расчета осуществляются на закладке «Расчет».
Использует период действия ‑ определяет необходимость использования периода действия записи определенного вида расчета. При этом в «Плане видов расчета» должен быть хотя бы один «Вид расчета» обладающий протяженностью во времени. Если данное свойство установлено, то данный «План видов расчета» может быть назначен «Регистру расчета» с «Периодом действия», при этом все записи в регистре будут обладать протяженностью во времени.
Зависимость от базы – определяет, будут ли в этом «Плане видов расчета» находиться зависимые по базовому периоду «Виды расчета».
Существует три варианта:
- Не зависит – не зависит от «Базового периода».
- Зависит по периоду действия – зависит от протяженности во времени другого «Вида расчета», то есть в дальнейшем при определении расчетной базы для записи регистра расчета будут учитываться только те записи, у которых «Фактический период действия» попадает в «Базовый период».
Если установлена зависимость базы по периоду действия, то может произойти частичное попадание записей регистра расчета в базовый период, причем база будет рассчитана пропорционально тому, какую часть от фактического периода влияющей записи составляет перекрывающийся, с указанным базовым периодом, участок. При этом будут использованы данные графика, связанного с этой записью.
- Зависит по периоду регистрации – зависит от периода регистрации «Вида расчета», то есть в дальнейшем при определении расчетной базы для записи регистра расчета будут учитываться только те записи, у которых «Период регистрации» попадает в «Базовый период».
При указании варианта «Зависит по периоду действия» или «Зависит по периоду регистрации» у плана видов расчета активируется стандартная табличная часть «БазовыеВидыРасчета», в которой указываются базовые виды расчета для текущего вида расчета.
Чтобы табличная часть «БазовыеВидыРасчета» заполнилась видами расчета необходимо в списке «Базовые планы видов расчета» указать те планы видов расчета, из которых будут браться «Виды расчета» для вычисления «Расчетной базы».
Период действия является базовым периодом – указывает, что для получения базы в качестве «Базового периода» будет использоваться «Фактический период действия» с учетом всех вытеснений, а не «Базовый период» заданный свойствами БазовыйПериодНачало и БазовыйПериодКонец. Свойство «Период действия является базовым периодом» становится доступным после включения свойства «Использует период действия» и выбора одного из режима зависимости от базы «Зависит по периоду действия» или «Зависит по периоду регистрации».
Например, если «Повышенная премия за день» вытесняет «Премию процентом», при этом у «Премии процентом» не установлен флаг «Период действия является базовым периодом», то премия процентом будет рассчитана с учетом базового периода. Вытеснение на расчет премии процентом никак не повлияет.
Если у «Премии процентом» установлен флаг «Период действия является базовым периодом», то премия процентом будет рассчитана с учетом фактических периодов полученных на основе интервалов дат периодов действия, которые образовались за счет вытеснения «Премии процентом» другим видом расчета, а именно «Повышенной премией за день».
Предопределенные «Виды расчета»
В план видов расчета можно добавлять предопределенные виды расчета.
Для обращения к предопределенному виду расчета необходимо найти его по заданному в конфигураторе имени: ПланыВидовРасчета.<Имя плана видов расчета>.<Имя предопределенного объекта>.
Если по какой-либо причине в режиме 1С:Предприятие был удален предопределенный вид расчета, то для этого необходимо указать имя предопределенного вида расчета в свойстве «ИмяПредопределенныйДанных» и в свойстве «Предопределенный» установить значение «Истина».
Ваганов Сергей, эксперт в области разработки прикладных решений на платформе 1С:Предприятие, преподаватель-методист CORS Academy и автор курса «Разработчик 1С с нуля до профессионала».












































































































