Особенности настройки объекта Перерасчет

Объект Перерасчет служит для хранения информации о том, для каких записей регистров расчета необходимо перерассчитать результаты расчета (ресурсы). Он является объектом конфигурации подчиненным регистру расчета. Необходимость перерасчета ресурсов может возникнуть из-за неправильной последовательности ввода документов пользователем (ввода документов "задним числом"), которая приводит к необходимости пересчитать результаты расчета тех записей, которые зависят от результатов расчета других записей, введенных в систему позже.

Настройки объекта перерасчет

Информация о требующих перерасчета записях может храниться с разной подробностью.

Записи перерасчета содержат предопределенные поля:

Таким образом, как минимум, информация о перерасчетах хранится с точностью до регистратора (документа) и вида расчета.

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

Рассмотрим пример.

Если в регистре расчета хранятся данные о начисленной основной заработной плате сотрудников организации и, таким образом, регистр расчета имеет измерение "Сотрудник", то перерасчет также может иметь измерение "Сотрудник". Это приведет к тому, что записи перерасчета будут означать необходимость пересчета тех записей регистра, которые принадлежат конкретному регистратору, имеют определенный вид расчета и содержат ссылку на определенного сотрудника.

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

Измерения перерасчета – один из инструментов, позволяющих выполнить настройку такого автоматического заполнения перерасчета.

Для этого служат свойства измерения перерасчета:

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

Если в системе уже есть записи основного регистра, то любое изменение состава записей ведущих регистров должно привести к появлению записей перерасчета. Эти записи перерасчета будут сигнализировать о необходимости пересчитать ту или иную совокупность записей основного регистра.

Для того чтобы описать, какие именно изменения записей ведущих регистров приведут к появлению перерасчетов и служат измерения перерасчета. Чтобы задать необходимость перерасчета записей по тому же сотруднику, по которому введены (изменены) записи ведущих регистров делается следующее. В свойство "Измерение регистра" вводится ссылка на измерение "Сотрудник" основного регистра, а в свойство "Данные ведущих регистров" - ссылки на измерение "Сотрудник" всех ведущих регистров. При такой настройке в случае любого изменения состава записей ведущего регистра (т.е. при записи соответствующего набора записей), будет выполнено следующее:

При этом строки будут введены только в случае, если таких строк еще нет в таблице перерасчета.

Следует отметить, что появление записей перерасчета не означает каких-либо изменений непосредственно в основном регистре. Записи перерасчета – не более чем сигнал, который подает система. А как именно реагировать на этот сигнал, о необходимости пересчитать записи регистра зависит от разработчика конкретного решения. Примеры обработки записей перерасчета будут рассмотрены нами в других публикациях.

Настройки планов видов расчета, связанные с перерасчетами

Зависимость одних записей регистра от других строится за счет настроек планов видов расчета. Для этого служат понятия:

Допустим, основному регистру расчета назначен план видов расчета "Основной", а ведущему регистру – план видов расчета "Вспомогательный". Тогда основному плану видов расчета необходимо установить следующие свойства группы свойств "Расчет":

Это будет означать, что основной регистр расчета, который ведет себя согласно плану видов расчета "Основной", зависит от тех регистров, которым назначен план видов расчета "Вспомогательный" (т.е. в нашем случае – ведущий регистр расчета) и при этом записи основного регистра зависят от записей ведущего по периоду действия или по периоду регистрации.

При настройке плана видов расчета "Основной" его видам расчета (например, виду расчета "Надбавка") необходимо в списке ведущих видов расчета задать виды расчета плана "Вспомогательный" (например, виды расчета "Доплата персональная" и "Доплата ежемесячная"). Это будет означать, что результаты расчета записей основного регистра с видом расчета "Надбавка" зависят от результатов записей ведущего регистра с видами расчета "Доплата персональная" и "Доплата ежемесячная" и должны быть пересчитаны в случае их любого изменения (появления или удаления).

При этом, для того чтобы выяснить какие записи нужно пересчитать, система сопоставит записи ведущего и основного регистров расчета:


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