- Задачи по расчетным механизмам — тема № 4: Настройки регистра расчета, на которые нужно обратить внимание при решении аттестационного задания, Курсы по 1С
- ᐉ Планы видов расчета и регистры расчета
- Регистр расчета | 1С:Предприятие
- Структура
- Связь с планом видов расчета
- Периодичность
- Подача на регистратор
- Связь с временной шкалой
- Перерасчеты
- Уникальность записи
- Механизмы, реализуемые регистром расчета
- Смещение по сроку действия
- Зависимость по базовому периоду
- Формирование записей пересчета
- Формы регистра расчетов
- Функциональность регистра расчета
- 1С:Предприятие 8.3. Практическое руководство разработчика. Урок 17 (1:00). Таблицы видов расчета и регистры расчета. Общие сведения о регистрах вычислений
Задачи по расчетным механизмам — тема № 4: Настройки регистра расчета, на которые нужно обратить внимание при решении аттестационного задания, Курсы по 1С
В плане архитектуры и настроек регистры расчета являются, пожалуй, самым сложным объектом в расчетных механизмах. Неверно спроектированный регистр расчета всегда является грубейшей ошибкой на экзамене, поэтому в данном блоке рассмотрим, как правильно настроить регистр расчета, как определить его структуру, а также как избежать наиболее распространенных ошибок при его проектировании и настройке.
Регистры расчета предназначены для хранения записей с результатами и параметрами расчета, а также они позволяют рассчитывать записи по базе (по заданному базовому периоду). Кроме того, если регистр расчета использует период действия, то с его помощью реализуются механизмы вытеснения и сторнирования, о которых будет рассказано несколько позже. Можно сказать, что, несмотря на то, что зависимости видов расчета друг от друга настраиваются в ПВР, расчетные механизмы платформы задействованы именно в регистрах расчета.
Регистры расчета очень тесно связаны с ПВР и графиками работы (в случае если регистр использует период действия). По этой причине регистры расчета настраиваются уже после того, как созданы и настроены соответствующие объекты. Как и для плана видов расчета, использование регистра расчета с включенным периодом действия для разовых начислений является грубой ошибкой. В этом случае в базу данных будет добавлена таблица с фактическими периодами действия, в которую помещаются разделенные при вытеснении периоды. Например, Оклад за месяц был частично вытеснен Больничным, который пришелся на середину месяца, в этом случае будет одна запись по Больничному и две по Окладу.
Рисунок 1 – С помощью виртуальной таблицы ФактическийПериодДействия можно наглядно увидеть механизм вытеснения (период действия для вида расчета «Оклад» был разбит больничным на два периода)
Все это совершенно не нужно для разовых начислений и будет только приводить к неоптимальному использованию ресурсов системы. Соответственно, если по условию задачи нужно использовать разовые начисления и протяженные по времени начисления, то следует создавать регистр с включенным периодом действия и еще один с выключенным для разовых начислений.
В некоторых задачах еще требуется отдельно создавать регистр расчета и план видов расчета для удержаний.
Для регистра расчета с выключенным периодом действия колонок с интервалом периода действия не будет и таблица, в которой хранятся записи по фактическим периодам действия, для данного регистра не будет задействована.
Рисунок 2 – Записи регистра расчета «Дополнительные начисления»
Далее мы по порядку пройдемся по настройкам регистра расчета и начнем с вкладки «Основные».
Настройки на вкладке «Основные»
Рисунок 3 – Настройки регистра расчета (закладка «Основные»)
План видов расчета – в одном регистре расчета могут регистрироваться записи только с видами расчета из указанного плана видов расчета. Одному плану видов расчета может соответствовать несколько регистров расчета.
Период действия определяет, будут ли в данном регистре учитываться записи, протяженные по времени (с периодом действия). В этом случае в регистре становятся доступными стандартные реквизиты: ПериодДействия, ПериодДействияНачало и ПериодДействияКонец. Кроме того, установка этого свойства означает, что в данном регистре будет задействован механизм вытеснения и будет использоваться таблица с фактическими периодами действия записей. Таблица с фактическими периодами действия представляет собой отдельную таблицу, которая ссылается на основную запись регистра расчета и хранит одну или несколько записей с интервалами фактических периодов.
В качестве примера разберем ситуацию, в которой командировка будет вытеснять оклад. Пусть запись регистра расчета для оклада будет заполнена следующим образом:
К сожалению, у Вас недостаточно прав для дальнейшего просмотра.
Если Вы приобрели курс, но еще не активировали токен — пожалуйста, активируйте доступ по инструкциям, высланным на Ваш email после покупки.
Если Вы не залогинены на сайте — залогиньтесь, вернитесь на эту страницу и обновите ее.
Если Вы залогинены, у Вас активирован токен доступа, но Вы все равно видите эту запись — напишите нам на e-mail поддержки.
ᐉ Планы видов расчета и регистры расчета
Начисления и удержания в программе описываются видами расчета. Списки видов расчетов хранятся в планах видов расчет. В комплекте поставки конфигурации планы видов расчета уже заполнены наиболее типичными видами расчетов. В процессе работы с программой в планы видов расчета можно добавлять новые виды расчета, настраивать влияние одних видов расчета на другие, уточнять расчетную базу, настраивать вытеснение и т.д.
В конфигурации имеется несколько планов видов расчета для целей регламентированного и управленческого учета.
Планы видов расчета для целей регламенированного учета:
- Основные начисления организаций — предназначен для хранения описании видов расчета начислений, имеющих протяженность во времени, а также начислений, которые могут назначаться в плановом порядке
- Дополнительные начислении организаций — предназначен для хранения описаний видов расчета разовых единовременных начислений не имеющих длительности во времени
- Удержания организаций — предназначен для хранения описаний видов расчета удержаний, используемых в регламентированном учете
- Средний заработок — содержит специализированный нерасширяемый перечень видов расчета, используемых при расчете оплаты по среднему заработку
Планы видов расчета для целей управленческого учета:
- Управленческие начисления — предназначен для хранения описаний видов расчета начислений, используемых при расчете управленческой заработной платы
- Управленческие удержания — предназначен для хранения описаний видов расчета удержаний (взысканий), используемых при расчете управленческой заработной платы
Каждому плану видов расчета соответствует свой регистр расчета, в который записываются результаты расчета.
Рис. Планы видов расчета и регистры расчета
Каждая запись регистра расчета содержит ссылку на один из видов расчета соответствующего плана видов расчета.
Записи всех регистров расчета характеризуются периодом регистрации. Период регистрации — это дата начисления или удержания. Период регистрации определяет, в расчетном листке за какой месяц будут отражены суммы произведенных начислений и удержаний. Для начислений, имеющих протяженность во времени (оплата по окладу, оплата отпуска и т.п ). в качестве периода регистрации принимается первое число месяца, на который приходится дата нынолнения начисления.
В общем случае план видов расчета и соответствующий ему регистр расчета могут быть с поддержкой и без поддержки периода действия. Период действия записи регистра расчета — это период, за который определяется время, подлежащее оплате по данному виду расчета. Другими словами — это период, за который производится начисление.
Пример
В текущем месяце оплачивается период временной нетрудоспособности, приходящейся на прошлый месяц.
В регистр расчета будут помещены записи, период регистрации которых — первое число текущего месяца, т.е. начисление по больничному листу будет отражено в расчетном листке сотрудника за текущий месяц. Периодом действия, за который определяется оплачиваемое время нетрудоспособности, будет являться период времени нетрудоспособности, т.е. период действия в этом случае приходится на прошлый месяц.
Про виды расчета, входящие в план видов расчета, поддерживающих период действия, говорят, что они могут иметь длительность или протяженность во времени. В конфигурации только два плана видов расчета используют период действия — это Основные начисления организаций и Управленческие начисления. Остальные планы видов расчета периода действия не имеют. Виды расчета, входящие в них, не зависят от времени.
Рубрика: 1С: Зарплата и Управление Персоналом 8Метки: Заработная платаРегистр расчета | 1С:Предприятие
Регистры вычисления являются объектов прикладной конфигурации . Они используются в механизме сложных периодических расчетов и служат для хранения записей о конкретных видах расчетов, которые необходимо выполнить, а также для хранения промежуточных данных и самих результатов выполненных расчетов.Структура
Информация в регистре расчета хранится в виде записей, каждая из которых содержит значения показателей и соответствующие значения ресурсов.
Реестр меры описывают разделы, в которых хранится информация, и регистр ресурсы содержат непосредственно хранимую информацию. Например, для регистра расчета Основная обязанность работников организации , имеющая следующую структуру:
записи, хранящиеся в базе данных, будут иметь следующий вид:
Связь с планом видов расчета
Регистр расчета связан с одной из схем видов расчета, существующих в прикладном решении. Это соотношение задает условия наличия поля Тип расчета для каждой записи регистра, благодаря которому механизмы регистра могут отслеживать взаимное взаимодействие.
Периодичность
Регистр расчета хранит данные не только в разделе созданных показателей, но и в разделе времени. Это является причиной существования еще одного обязательного поля для каждой записи реестра – Срок действия . При создании реестра расчета разработчик может указать минимальную периодичность, с которой записи будут записываться в реестр:
Подача на регистратор
Изменение состояния регистра расчета происходит обычно при проведении документа. Поэтому каждая запись реестра связана с конкретным документом-регистратором и с номером строки этого документа. Добавление записей в реестр, их изменение и удаление возможно только одновременно для всех записей, связанных с одним документом.
Связь с временной шкалой
Для регистра вычислений можно указать связь с временной шкалой. Временная шкала представляет собой информационный регистр, в котором хранится временная схема исходных данных, задействованных в расчетах.
Мерами этого графика могут быть, например, график работы и дата, а ресурсом – количество часов работы в эту дату. Тогда можно будет связать запись регистра расчета с каким-либо конкретным графиком работы и, используя инструменты скрипта в дальнейшем, получить информацию о количестве часов работы, необходимых для выполнения расчетов.Например, временная шкала имеет следующую структуру:
может содержать информацию о количестве часов работы:
Перерасчеты
Регистр расчета может включать специальные объекты — Перерасчеты :
В этих объектах система будет хранить информацию о том, какие записи реестра утратили актуальность и подлежат перерасчету в результате работы механизмов зависимости в соответствии с базовым периодом и смещением по сроку действия.
Уникальность записи
В системе предусмотрен контроль уникальности записей, хранящихся в регистре расчета. Поэтому в регистре расчета не может быть двух записей, связанных с одной и той же строкой одного и того же документа.
Механизмы, реализуемые регистром расчета
Смещение по сроку действия
Механизм смещения по сроку действия позволяет рассчитать фактический срок действия записи регистра расчета на основе анализа других записей, содержащихся в реестре.
Как правило, запись регистра расчета содержит две даты, указывающие период, в течение которого охватывается операция этой записи. Этот период называется сроком действия записи. Однако, если вид расчета, к которому относится данная запись, может быть заменен другим видом расчета, то срок действия данной записи является только «запрошенным» периодом, то есть «мы хотим, чтобы запись действовала в этот период». «. В реальности фактический срок действия этой записи можно указать только после анализа всех записей видов расчета, которые вытесняют этот вид расчета по сроку действия. Фактический срок действия будет представлять собой набор периодов, которые являются подмножеством исходного периода действия этой записи. Если не будет найдена запись, замещающая данную по сроку действия, то фактический срок действия этой записи будет равен сроку ее действия. Другим крайним случаем смещения по сроку действия является полное замещение данной записи другими записями. В этом случае фактический срок действия будет отсутствовать.
Каждая запись регистра расчета содержит тип расчета, к которому она относится. Для того чтобы определить, какие записи должны вытеснить данную запись по сроку действия, в регистре расчетов используется связь с планом видов расчета, в котором описывается взаимное взаимодействие видов расчета. Использование этого отношения позволяет регистру вычислений определить фактический срок действия для каждой записи.
Зависимость по базовому периоду
Механизм зависимости по базовому периоду позволяет получить значение базы для записи регистра расчета на основе анализа других записей, содержащихся в регистре.
База — это числовое значение, которое следует использовать для вычисления результата данной записи. База рассчитывается путем анализа результатов расчета других записей, от которых зависит данная запись по базовому периоду. Таким образом, в общем случае запись регистра расчетов содержит две даты, определяющие период, в котором требуется проанализировать записи видов расчета, от которых зависит данный вид расчета по базисному периоду. Использование связи с планом видов расчета позволяет регистру расчета определить виды расчета, от которых зависит данный вид расчета по базовому периоду.
Регистр расчета поддерживает два вида зависимости по базовому периоду:
- зависимость по периоду действия;
- зависимость по периоду регистрации.
В случае зависимости по сроку действия для получения базы будут выбраны только те записи, для которых найдено пересечение их фактического срока действия с базовым периодом данной записи. Значение базы, полученное из конкретной влияющей записи, в общем случае не равно результату, содержащемуся в этой записи. База будет рассчитываться пропорционально тому, какую часть фактического периода влияющей записи составляет интересующий раздел с указанным базовым периодом. В этом случае будут использоваться данные графики, связанные с этой записью.
В случае зависимости по периоду регистрации для получения базы результаты расчета будут выбираться для тех записей, которые попадают в этот период записи со значением его поля «Период регистрации».
Наиболее сложным вариантом зависимости является случай, когда для типа расчета данной записи установлено свойство «Срок действия — базовый период». Данное свойство означает, что в качестве базового периода данной записи будет использоваться не базовый период, указанный в соответствующих полях записи, а фактический срок действия записи, полученный в результате работы механизма смещения по сроку действия, который в общем случае представляет собой набор некоторых периодов.
Формирование записей пересчета
Механизм формирования записей пересчета отслеживает факт появления в реестре записей, влияющих на результат расчета уже существующих записей. Возможность влияния новых записей на существующие определяется в результате анализа взаимовлияния видов расчета и на основе действия механизмов смещения по сроку действия и зависимости по базовому периоду.
Результатом работы механизма формирования записей пересчета является набор записей пересчета, который содержит информацию о том, какие записи регистра необходимо пересчитать (пересчитать).
Формы регистра расчетов
Для обеспечения возможности просмотра пользователем данных, содержащихся в регистре расчетов, в системе поддерживается форма отображения регистра расчетов – форма списка. Позволяет сортировать и выбирать отображаемую информацию по нескольким фильтрам:
Система может автоматически генерировать эту форму. При этом разработчик может создавать собственные формы, которые будут использоваться системой вместо форм по умолчанию, в том числе форму набора записей, позволяющую добавлять, изменять и удалять записи регистра расчетов.
Функциональность регистра расчета
Основными функциональными возможностями, которые предоставляет регистр расчета для разработчика, являются:- выбор записей в заданном интервале по заданным фильтрам;
- выбор записей по рекордеру;
- получение базовых значений для записей реестра, соответствующих заданному выбору;
- получение данных графики для записей реестра, соответствующих заданному выбору;
- получение данных записей для пересчета;
- чтение, изменение и запись набора записей в реестре.
1С:Предприятие 8.3. Практическое руководство разработчика. Урок 17 (1:00). Таблицы видов расчета и регистры расчета. Общие сведения о регистрах вычислений
Объект конфигурации «Реестр расчетов» предназначен для описания структуры накопленных данных, полученных в результате расчетов. На основе объекта конфигурации «Регистр расчета» платформа создает таблицы базы данных, в которых хранятся накопленные данные, формируемые различными объектами базы данных.
Регистры расчета не предназначены для непосредственного редактирования пользователями. При необходимости разработчик может разрешить пользователям редактировать регистр расчета. Однако обычно регистры расчета изменяются алгоритмами других объектов базы данных, а не прямым вмешательством пользователя.
Как и любой другой регистр, регистр вычислений имеет ресурсы, в которых он хранит числовые данные, у него есть измерения, используемые для получения значений ресурсов регистра по этим измерениям, и у него есть атрибуты, которые описывают каждую запись регистра вычислений.
Отличительной особенностью расчетных регистров является их периодичность, возможность использования алгоритмов смещения по периоду действия и зависимости по базовому периоду, связь с графиком видов расчета. Мы обсудим каждую из этих функций в следующих разделах.
Периодичность
Периодичность регистра расчета может иметь одно из следующих значений:
- День
- Месяц
- Квартал
- Год
Периодичность регистра расчета определяет период времени, которому принадлежит каждая запись регистра.
Если периодичность установлена на День, каждая запись в реестре относится к какому-то дню; если для периодичности установлено значение «Месяц», каждая запись реестра относится к какому-то месяцу и т. д.
Для отражения принадлежности записи к определенному периоду в реестре имеется системный атрибут RegistrationPeriod типа Дата. При записи данных в регистр платформа всегда устанавливает значение этого атрибута на начало периода, которому принадлежат данные.
Например, если данные записываются в расчетный регистр с периодичностью, установленной на Месяц, и RegistrationPeriod для этих данных равен 08.04.2014, в регистре хранятся данные со значением RegistrationPeriod, установленным на 01.04.2014 (рис. 17.6).
Рис. 17.6. Запись данных документа в расчетный регистр
Если в этом сценарии установить периодичность регистра «Год», значение сохраняемого периода регистрации изменится на 01.01.2014 (рис. 17.7).
Рис. 17.7. Запись данных документа в регистр расчета
Замещение по периоду действия
Еще одной важной особенностью регистра расчета является возможность замещения одних записей другими записями по периоду действия.
При этом каждая запись регистра вычислений генерирует фактический период действия, который в общем случае представляет собой сумму нескольких периодов, содержащихся в одном периоде действия (рис. 17.8).
Рис. 17.8. Запись о расчете отсутствия заменяет запись о расчете заработной платы по периоду действия
После добавления записи о начислении заработной платы структура записей таблицы регистра расчета выглядит так, как показано в таблицах 17. 1 и 17.2.
Таблица 17.1. Таблица регистра вычислений
… | Начало периода действия | Конец периода действия | Тип расчета | … |
… | … | … | … | … |
… | 01.04.2014 00:00:00 | 30.04.2014 23:59:59 | Зарплата | … |
… | … | … | … | … |
Таблица 17.2. Фактический период действия таблица
… | Начало периода действия | Конец периода действия | Тип расчета | … |
… | … | . .. | … | … |
… | 01.04.2014 00:00:00 | 30.04.2014 23:59:59 | Зарплата | … |
… | … | … | … | … |
После добавления записей из вида расчета Отсутствие, который смещает расчеты Зарплаты по периоду действия, записи, связанные с расчетом зарплаты, выглядят так, как показано в таблицах 17.3 и 17.4.
Таблица 17.3. Таблица регистра вычислений
… | Начало периода действия | Конец периода действия | Тип расчета | … |
… | … | … | … | … |
… | 01.04.2014 00:00:00 | 30.04.2014 23:59:59 | Зарплата | … |
. .. | 04.04.2014 00:00:00 | 10.04.2014 23:59:59 | Отсутствие | … |
… | … | … | … | … |
Таблица 17.4. Таблица периодов фактического действия
… | Начало периода действия | Конец периода действия | Тип расчета | … |
… | … | … | … | … |
… | 01.04.2014 00:00:00 | 03.04.2014 23:59:59 | Зарплата | … |
… | 11.04.2014 00:00:00 | 31.04.2014 23:59:59 | Зарплата | … |
… | … | … | … | … |
Зависимость по базовому периоду
Еще одна функция регистра расчета — поддержка зависимости записи регистра по базовому периоду. Эта функция предназначена для расчета зависимых (вторичных) записей регистра на основе результата расчета первичной записи.
Регистр расчета может поддерживать два типа зависимости по базовому периоду: зависимость по периоду действия и зависимость по периоду регистрации.
Зависимость по периоду действия
Зависимость по периоду действия означает, что когда платформа анализирует базовые записи, она выбирает записи, в которых фактический период действия и заданный базовый период перекрываются.
Например, в начале апреля начисляется заработная плата за март. Бонусы за март рассчитываются исходя из зарплаты за март. В этом сценарии разработчики, как правило, используют зависимость по периоду действия (рис. 17.9).
Рис. 17.9. Зависимость по периоду действия
К приведенному выше рисунку следует сделать два замечания.
Поля Начало базового периода и Конец базового периода применимы только к записям с видами расчета, для которых заданы зависимости по базовому периоду (в данном случае для расчета бонусов).
Базовое значение, полученное из определенной записи, которая влияет на расчет, обычно не равно результату, хранящемуся в этой записи. Базовое значение рассчитывается на основе соотношения между частью фактического периода влияющей записи, перекрывающейся с базовым периодом, и полным фактическим периодом влияющей записи, а также на основе данных расписания, привязанных к записи.
Зависимость по периоду регистрации
Зависимость по периоду регистрации означает, что при анализе базовых записей платформа выбирает записи, у которых значение поля Период регистрации попадает в указанный базовый период.
Рассмотрим пример расчета штрафа за мартовский начисленный оклад. Записи об отсутствии, зарегистрированные в марте, служат базой для расчета суммы штрафа (к ним могут относиться записи об отсутствии за март, а также записи об отсутствии за февраль. В этом случае разработчики, как правило, используют зависимость по периодам регистрации (рис. 17.10).
Рис. 17.10. Зависимость по периоду регистрации
Последней важной особенностью регистра расчета является его связь с планом видов расчета. Эта связь обеспечивает смещение по периоду действия и зависимость по базовому периоду, поскольку схема видов расчета описывает взаимосвязь между видами расчета.
Регистр расчета может иметь подчиненные объекты пересчета. Они используются для регистрации факта добавления записей реестра, влияющих на результаты расчета существующих записей реестра. Объект конфигурации перерасчета может иметь несколько измерений, каждое из которых определяет связь между измерениями этого регистра расчета и размерностями регистров расчета, влияющими на него. В некоторых сценариях это может быть один и тот же регистр.
Платформа хранит список записей реестра, подлежащих пересчету, в таблицах базы данных на основе объектов конфигурации «Пересчет». Таблицы перерасчета заполняются автоматически на основе записей регистра расчета, на которые влияют ведущие типы расчета, а также на основе записей регистра расчета, фактические периоды которых изменены. На основании этих данных разработчик может принять решение о необходимости пересчета записей реестра.
Последнее замечание, которое нам необходимо сделать относительно регистров вычислений, касается возможности связать регистр вычислений с расписанием. График должен быть представлен регистром сведений (непериодическим, с обязательным измерением типа Дата и ресурсом типа Число), который содержит временные исходные данные, используемые в расчетах. Измерениями этого расписания могут быть, например, рабочий график (ссылка на каталог) и дата, а его ресурс может хранить количество рабочих часов на эту дату. В этом случае вы можете привязать запись регистра расчета к конкретному графику работы (указав ссылку на каталог графика работы в качестве атрибута записи), а затем средствами скрипта 1С:Предприятия получить количество рабочих часов в периоде действия, фактический период или период регистрации для каждой записи.
Узнать больше! Подробнее о структуре объектов скрипта 1С:Предприятия, предназначенных для операций с регистром расчета, см. в разделе Краткий справочник разработчика. Расчетные регистры.