СПОСОБ И СИСТЕМА ОСУЩЕСТВЛЕНИЯ ФИНАНСОВЫХ РАСЧЕТОВ
METHOD AND SYSTEM OF PERFORMING FINANCIAL SETTLEMENTS

Изобретение относится к области проведения финансовых расчетов со сложными взаимосвязями, исчисление которых привязано к определенным нормативно установленным периодам времени, с помощью средств вычислительной техники. Конечной целью финансовых расчетов является вычисление итоговой суммы, подлежащей выплате (перечислению) или наоборот получению (взысканию), которая далее будет называться итоговая сумма выплаты. Итоговая сумма выплаты, как правило, представляет собой результат нескольких видов расчетов (видов начислений/удержаний), каждый из которых вычисляется по определенному правилу.
Наиболее типичным и традиционным способом финансового расчета является расчет заработной платы сотрудников, сюда же можно отнести расчеты дивидендов держателей ценных бумаг, расчеты со сложными процентными ставками в кредитном деле. В большинстве случаев, расчеты ведутся не только по видам расчетов, но и по объектам учета - лицевым счетам сотрудников, инвесторов, заемщиков.
Расчеты производятся на основании документов, которые далее будут называться входными документами.
Каждый расчет привязан к определенному периоду времени, в котором он выполняется, называемому «расчетным периодом». При этом «по периоду действия» расчет может быть привязан либо к временному промежутку в пределах расчетного периода, либо  к какому-то любому другому временному промежутку. Например, при штатном расчете зарплаты в начале мая можно говорить как о начислении апрельской зарплаты («расчетный период» апрель, «период действия» апрель), так и о перерасчете зарплаты за март («расчетный период» апрель, «период действия» март). Каждый расчетный период заканчивается вычислением итоговой суммы выплаты.
Расчеты могут быть очень сложными, с массой дополнительных условий. Несколько видов расчета могут являться взаимоисключающими друг для друга по периоду своего действия (например, вид расчета «Отпуск за свой счет» нейтрализует (вытесняет) действие других видов расчета, в частности, «Оплата по окладу»).
Кроме того, некоторые виды расчетов вычисляются в зависимости от других видов расчетов, вычисляемых в том же или прошлом периоде времени, называемом «базовым». Например, если вид расчета «Премия» зависит от вида расчетов «Оплата по окладу» за прошлый период, то период, за который учитывается оклад при начислении премии, будем называть «базовым периодом» для премии.
УРОВЕНЬ ТЕХНИКИ
Из уровня техники известны различные системы и способы, предназначенные для расчета заработной платы (WO 03038693 A1, 08.05.2003. RU 122793 U1, 10.12.2012, RU 2628231 C1, 15.08.2017, RU 2584453 C2, 20.05.2016). Например, в известном изобретении (WO 03038693) информационная система для расчета выплат заработной платы в разных юрисдикциях, реализует способ, в котором применяются различные схемы удержаний, с помощью: (1) первой базы данных, где накапливается информация обо всех работниках компании, такая как личные данные работников, фактическая информация о времени работы за определенный период, включая дни болезни, сверхурочные, прогулы и т.п., а также информация о нормативных ставках, окладах сотрудников, полученных ими ссудах и т.п.; (2) второй базы данных, куда вводится информация, описывающая специфические удержания и компенсации, предусмотренные законодательством конкретных государств, такие как ставки налога на доход, ставки социальных выплат, налоги с ссуд, предоставляемых работодателем, системы налоговых вычетов; (3) подсистемы расчета, которая, используя информацию из первой и второй баз данных, позволяет произвести расчет надлежащих выплат каждому конкретному работнику с учетом особенностей законодательства страны, в которой производится выплата и налогообложение. Однако перечисленные технические решения не касаются проблем, возникающих при перерасчете данных, привязанных к определенным нормативно установленным периодам времени.
https://buh.ru/articles/documents/14421/
Из других источников [статья А.В. Ярвельян «Исправление документов прошлого периода в "1С:Зарплате и управлении персоналом 8"», опубл.  01.09.2009 в Интернете по адресу ] известно, что в процессе перерасчета идут, как правило, по пути удаления или сторнирования результатов ранее произведенных расчетов. Понятно, что замена старых результатов расчетов на новые требует немало времени, при этом вероятны ошибки (например, из-за забытых ручных правок). Даже если изменение входных данных незначительное, и не предполагает полную замену старых результатов расчетов на новые, то и в этом случае требуется потратить ресурсы для обнаружения того, что в прошлых периодах нужно поправить. Следовательно, для сокращения затрат времени необходимо создать такую систему производства финансовых расчетов, в которой для получения результатов новых расчетов не требуется отменять старые расчеты.
Проблема заключается еще в том, что после многократного проведения перерасчетов и выплат бывает непросто определить, какую сумму можно выплатить в данный момент по каждому виду выплат. Рассмотрим простейший пример: в результате первого расчета работнику начислена сумма зарплаты за первую половину месяца (аванс) 10000 руб. и произведена выплата этой суммы через кассу. Если после перерасчета будет начислена зарплата за целый месяц в сумме 30000 руб., то какую сумму нужно перечислить работнику через банк? В регистре расчета мы видим только сумму 30000 руб.
Очевидно, что для получения суммы к выплате можно пойти по пути привлечения отчетов о фактических выплатах. Известно техническое решение (заявка на изобретение RU 2008140217 A, 10.05.2010), в котором предлагаются система контроля и монетизации инвестиций, включающая: 1)пользовательский интерфейс для вступления в соглашение об инвестициях с хозяйствующим субъектом; приема одного или более платежей; приема отчета о выплатах третьей стороне хозяйствующим субъектом; 2)компьютерную систему, связанную с пользовательским интерфейсом, для сравнения выплат третьей стороне с принятым платежом для подтверждения того, что принятый платеж осуществлен в сумме, определенной в соглашении об инвестициях.
В этой известной системе суммы, подлежащие выплате согласно соглашению об инвестициях, контролируются с привлечением принятого отчета о выплатах третьей стороне. Однако применение этого способа непосредственно в процессе производства финансовых расчетов требует дополнительного времени на ввод отчетов, при этом не гарантируется, что детализация данных в этих отчетах будет совпадать с детализацией данных, применяемой при осуществлении расчетов. В принципе, быстрее и точнее получать итоговые суммы к выплате в самом блоке расчетных вычислений.
Возможность проведения перерасчетов предусмотрена в известном изобретении «Способ производства периодических расчетов (варианты) и автоматизированная вычислительная система для их осуществления» (патент RU 2306606 C1, 20.09.07), наиболее близком к заявляемому решению.
Первый вариант способа производства сложных периодических расчетов, основанный на использовании механизма вытеснения одних расчетов другими по периоду действия, характеризуется тем, что вводят информацию в первую информационную структуру, содержащую как минимум две записи, каждая из которых включает в себя по крайней мере поле наименования вида расчета, поле со ссылками на виды расчетов, являющихся вытесняющими по отношению к данному виду расчетов, вводят информацию во вторую информационную структуру, содержащую как минимум две записи, каждая из которых включает в себя по крайней мере поле атрибута, указывающего на принадлежность к виду расчета, два поля, позволяющих установить временной период действия расчета, и поле результата расчета, определяют принадлежность первой записи второй информационной структуры к определенному виду расчета по соответствующему атрибуту, обращаются к первой информационной структуре, содержащей описание видов расчетов и их взаимосвязей и получают список расчетов, являющихся вытесняющими по отношению к виду расчета, определенному для первой записи второй информационной структуры, отбирают те записи из второй информационной структуры, которые отвечают условиям, согласно которым атрибуты искомых записей указывают на принадлежность к вытесняющим видам расчетов, полученным из первой информационной структуры, и одновременно период действия искомых записей пересекается с периодом действия первой записи второй информационной структуры, а затем вычисляют результаты первой записи второй информационной структуры с учетом ее фактического периода действия, рассчитанного как результат пересечения с периодами действия отобранных вытесняющих записей и помещают результаты в поле результата первой записи второй информационной структуры.
Второй вариант способа производства сложных периодических расчетов при помощи автоматизированной вычислительной системы с использованием механизма зависимости одних расчетов от других по базовому периоду, характеризуется тем, что вводят информацию в первую информационную структуру, содержащую как минимум две записи, каждая из которых включает в себя по крайней мере наименование вида расчета, поле со ссылками на виды расчетов, являющихся базовыми по отношению к данному виду расчетов, вводят информацию во вторую информационную структуру, содержащую как минимум две записи, каждая из которых включает в себя по крайней мере поле атрибута, указывающего на принадлежность к одному из видов расчета, два поля, позволяющих установить временной период действия расчета, два поля, позволяющих установить базовый период расчета, и поле результата расчета, определяют принадлежность первой записи второй информационной структуры к определенному виду расчета по соответствующему атрибуту, обращаются к первой информационной структуре, содержащей описание видов расчетов и их взаимосвязей и получают список расчетов, являющихся базовыми по отношению к виду расчета, определенному для первой записи второй информационной структуры, отбирают те записи из второй информационной структуры, которые отвечают условиям согласно которым атрибуты искомых записей указывают на их принадлежность к базовым видам расчетов, полученным из первой информационной структуры, и одновременно период действия искомых записей пересекается с базовым периодом первой записи второй информационной структуры, определяют результат первой записи второй информационной структуры с использованием значений результатов отобранных базовых записей с учетом степени пересечения базового периода первой записи второй информационной структуры и фактического периода действия отобранных базовых записей, и помещают результат в поле результата первой записи первой информационной структуры.
Автоматизированная вычислительная система, предназначенная для  осуществления способа производства сложных периодических расчетов по первому и второму вариантам,  характеризуется тем, что содержит блок информационного массива, представляющего собой набор локальных и/или распределенных баз данных, и содержащего, по крайней мере, структуры для описания видов расчетов и их взаимосвязи, структуры для хранения результатов вычислений по каждому виду расчетов в виде регистров расчетов, функциональный блок ввода фактической информации, выполненный с возможностью ввода информации о конкретных начислениях и/или удержаниях и запись данной информации в один или несколько регистров расчетов, функциональный блок расчетных вычислений, выполненный с возможностью расчета и перерасчета записей регистра и выдачи результатов расчетов в виде сигналов, при этом функциональный блок ввода фактической информации выполнен с возможностью отслеживания и регистрации событий, связанных с необходимостью перерасчета определенных записей регистра расчетов, а в состав блока информационного массива включены структуры для хранения информации о записях регистров, подлежащих перерасчету в связи с наступлением определенных событий типа добавления, модификации, удаления тех записей регистров расчетов, которые сопоставлены с видами расчетов, являющимися базовыми или вытесняющими по отношению к видам расчетов, к которым относятся подлежащие перерасчету записи регистров, функциональный блок ввода фактической информации связан в блоке информационного массива по крайней мере со структурами для описания видов расчетов и их взаимосвязи, структурами для хранения результатов вычислений по каждому виду расчетов, структурами, предназначенными для хранения информации о записях регистров, подлежащих перерасчету в связи с наступлением определенных событий, функциональный блок расчетных вычислений связан в блоке информационного массива, по крайней мере, со структурами для описания видов расчетов и их взаимосвязи, структурами для хранения результатов вычислений по каждому виду расчетов, структурой, предназначенной для хранения информации о записях регистров, подлежащих перерасчету в связи с наступлением определенных событий. Эта известное изобретение выбирается в качестве прототипа, так как содержит наибольшее число существенных признаков, совпадающих с заявляемым изобретением.
Прототип имеет существенный недостаток, заключающийся в том, что в нем, во-первых, не описан механизм замены результатов старых расчетов на новые в процессе перерасчета и, во-вторых, не решена задача вычисления итоговой суммы, подлежащей выплате, после неоднократных перерасчетов и выплат в рамках одного расчетного периода.
РАСКРЫТИЕ ИЗОБРЕТЕНИЯ
Технической задачей, на решение которой направлено заявленное решение, является производство финансовых расчетов со сложными взаимосвязями, исчисление которых привязано к определенным нормативно установленным периодам времени, в условиях многократного изменения исходных данных и алгоритмов расчета, многократного проведения перерасчетов и выплат.
Технический результат заключается в повышении точности осуществления финансовых расчетов, за счет формирования разниц перерасчетов, сохранения разниц перерасчетов и вычисления итоговых сумм выплат на основании разниц перерасчетов.
Для достижения указанного технического результата разработан способ проведения финансовых расчетов, содержащий этапы, на которых:
формируют информационную структуру, содержащую первую базу данных для описания видов расчетов и их взаимосвязи, вторую базу данных для хранения картотеки с описанием объектов учета и перечнем видов расчетов по каждому объекту учета и для хранения входных документов, третью базу данных для хранения информации об объектах, подлежащих перерасчету, включая временной период, начиная с которого требуется провести перерасчет, четвертую базу данных для хранения результатов расчетов,
осуществляют ввод данных в первую базу данных для описания видов расчетов и их взаимосвязи, во вторую базу данных для хранения картотеки с описанием объектов учета и перечнем видов расчетов по каждому объекту учета и для хранения входных документов,
при каждом изменении описания объекта учета во второй базе данных и при каждом изменении описания вида расчетов в первой базе данных, входящего в перечень видов расчетов по объекту учета во второй базе данных, осуществляют ввод данных в третью базу данных для хранения информации об объектах, подлежащих перерасчету, включая временной период, начиная с которого требуется провести перерасчет,
производят посредством устройства для обработки данных выполнение расчетных вычислений с привязкой к определенным периодам времени над объектами учета, перечисленными во второй базе данных, в соответствии с перечнем видов расчетов для каждого объекта учета во второй базе данных и в соответствии с описанием видов расчетов и их взаимосвязи в первой базе данных, с использованием зависимости одних расчетов от других по базовому периоду и с использованием механизма вытеснения одних расчетов другими по периоду действия, описанных в первой базе данных, причем перерасчет ранее произведенных вычислений выполняют только для объектов учета, перечисленных в третьей базе данных, начиная с периода действия, указанного в третьей базе данных,
сохраняют результат каждого расчета в четвертой базе данных для хранения результатов вычислений,
записывают на машиночитаемые носители информации и передают на устройства отображения и во внешние системы по каналам связи исходные данные и данные, полученные в результате вычислений,
дополнительно формируют пятую базу данных для описания видов выплат и их связи с видами расчетов, шестую базу данных для хранения разниц перерасчетов и седьмую базу данных для хранения сумм фактических выплат,
осуществляют ввод данных во вторую базу данных для описания видов выплат и их связи с видами расчетов,
после проведения каждого расчета производят с помощью устройства для обработки данных поиск и суммирование всех записей в шестой базе данных, относящихся к тому же виду расчетов, объекту учета и периоду действия, что и проведенный расчет, причем если в шестой базе данных для хранения разниц перерасчетов отсутствуют искомые записи, то их сумма считается равной нулю,
производят посредством устройства для обработки данных вычисление разности между результатом расчета и суммой разниц перерасчетов, причем если вычисленная разность отлична от нуля, то в шестую базу данных для хранения данных перерасчетов добавляется запись с суммой значения разности и с указанием вида расчетов, расчетного периода, периода действия расчета, объекта учета,
производят посредством дополнительного устройства для обработки данных по команде пользователя формирование итоговых сумм, подлежащих выплате, по каждому объекту учета, путем поиска и суммирования в шестой базе данных для хранения разниц перерасчетов записей, относящихся к текущему расчетному периоду и указанному виду выплат, причем для поиска в шестой базе данных используется описание связи видов выплат с видами расчетов, сохраняемое в пятой базе данных, путем поиска и суммирования в седьмой базе данных для хранения сумм фактических выплат записей, относящихся к текущему расчетному периоду и указанному виду выплат, и вычисления разности между суммой отобранных записей в шестой базе данных и суммой отобранных записей в седьмой базе данных, причем если в шестой или седьмой базе данных отсутствуют искомые записи, то сумма искомых записей считается равной нулю,
фиксируют результаты вычисления итоговых сумм по каждому объекту в выходных документах и в седьмой базе данных для хранения сумм фактических выплат.
Предпочтительно при вводе в третью базу данных информации об объектах, подлежащих перерасчету, дополнительно сохранять дату и время наступления события, вызывающего необходимость перерасчета.
Оптимально результаты каждого расчета в четвертой базе данных сохранять с указанием вида расчетов, расчетного периода, периода действия расчета, базового периода расчета, объекта учета, даты и времени расчета.
Перерасчет ранее произведенных вычислений над объектами учета, указанными в третьей базе данных, предпочтительно выполнять при условии, что дата и/или время последнего изменения превышают дату и/или время последнего расчета по объекту.
Заявляемый технический результат достигается также тем, что в известной системе осуществления финансовых расчетов, содержащей:
блок информационного массива, включающий набор баз данных, содержащий первую базу данных для описания видов расчетов и их взаимосвязи, вторую базу данных для хранения картотеки с описанием объектов учета и перечнем видов расчетов по каждому объекту учета и для хранения входных документов, третью базу данных для хранения данных об объектах, подлежащих перерасчету, четвертую базу данных для хранения результатов вычислений в виде регистра расчетов, устройство ввода данных и устройство обработки данных, причем первая база данных включает, по меньшей мере две записи, каждая из которых содержит  по крайней мере наименование вида расчетов, поле со ссылками на виды расчетов, являющихся вытесняющими по отношению к данному виду расчетов и поле со ссылками на виды расчетов, являющихся базовыми по отношению к данному виду расчетов, причем устройство ввода данных выполнено с возможностью ввода данных через пользовательский интерфейс и через каналы связи с внешними системами, причем устройство обработки данных выполнено с возможностью осуществления расчетных вычислений по видам расчетов с привязкой к временным периодам, для чего первая база данных связана с внешними системами, устройством ввода данных и устройством обработки данных, вторая и третья базы данных связаны с устройством ввода данных и устройством обработки данных, четвертая база данных связана с устройством обработки данных,
в блок информационного массива дополнительно включены пятая база данных для описания видов выплат и их связи с видами расчетов, шестая база данных для хранения разниц перерасчетов по каждому виду учета и каждому объекту учета и седьмая база данных для хранения сумм фактических выплат, а также введено дополнительное устройство обработки данных для формирования итоговых сумм выплат, причем пятая база данных связана с внешними системами, устройством ввода данных и дополнительным устройством обработки данных, шестая база данных связана с устройством обработки данных и дополнительным устройством обработки данных, а седьмая база данных связана с дополнительным устройством обработки данных.
Заявляемую систему осуществления финансовых расчетов оптимально выполнить таким образом, чтобы вторая база данных содержала по меньшей мере одну запись, включающую, по крайней мере наименование объекта учета, поля для установления начального и конечного периодов действия данного объекта учета, поля с описанием объекта учета и поле со ссылками на виды расчетов, применяемых к данному объекту учета.
Каждая запись в третьей базе данных может включать, по крайней мере, поле для указания на принадлежность к одному из объектов учета, поле для установления временного периода действия, начиная с которого требуется провести перерасчет, и поле для установления даты и времени наступлении события, вызывающего необходимость перерасчета объекта учета.
Оптимально выполнить систему осуществления финансовых расчетов таким образом, чтобы  четвертая база данных для сохранения результатов вычислений была выполнена в виде регистра расчетов, в котором каждая запись включает по крайней мере поле для указания на принадлежность к одному из видов расчетов, поле для установления расчетного периода, поле для установления временного периода действия расчета, поле для установления базового периода расчета, поле для указания объекта учета и других аналитических признаков, поле для указания даты и времени начала расчета, поле результата расчета.
Пятая база  данных заявляемой системы может включать, по меньшей мере две записи, каждая из которых содержит по крайней мере наименование вида выплат, и поле со ссылками на виды расчетов, связанных с данным видом выплат.
Шестая база данных может быть выполнена в виде регистра разниц перерасчетов, в котором каждая запись включает по крайней мере атрибут для указания на принадлежность к одному из видов расчетов, поля для установления расчетного периода, поля для установления временного периода действия расчета, поля для указания объекта учета и других аналитических признаков, поле для значения разности между результатом расчета и суммой всех записей в регистре разниц перерасчетов, связанных с тем же видом расчета, тем же объектом и периодом действия.
Седьмая база данных может быть выполнена в виде регистра выплат, в котором каждая запись включает по крайней мере атрибут для указания на принадлежность к одному из видов выплат, поля для установления расчетного периода, поля для указания объекта учета и других аналитических признаков, поле для значения итоговой суммы выплаты.
В заявляемой системе оптимально выполнить  устройство ввода данных  с возможностью записи данных в первую, вторую, третью и пятую базу данных, причем при каждом изменении описания объекта учета во второй базе данных и при каждом изменении описания вида расчетов в первой базе данных, связанного с объектом учета во второй базе данных, устройство ввода данных производит запись в третью базу данных для хранения информации об объектах, подлежащих перерасчету, для чего устройство ввода данных связано с входом и выходом первой базы данных, с входом второй базы данных, с входом третьей базы данных, с входом и выходом пятой базы данных.
Устройство обработки данных заявляемой системы может быть выполнено с возможностью осуществления расчетных вычислений по видам расчетов и объектам учета с привязкой к временным периодам.
В заявляемой системе предпочтительно выполнить устройство обработки данных с возможностью осуществления расчетов и перерасчетов на основании описания видов расчетов в первой базе данных, взаимосвязи объектов учета с видами расчетов во второй базе данных, перечня объектов, подлежащих перерасчету, в третьей базе данных, с возможностью сохранения результатов вычислений в четвертой базе данных и с возможностью сохранения разниц перерасчетов в шестой базе данных; для чего устройство обработки данных связано с выходом первой базы данных, с выходом второй базы данных, с выходом третьей базы данных, с входом и выходом регистра расчетов, с входом и выходом регистра разниц перерасчетов.
Устройство обработки данных может выполнять перерасчет ранее произведенных вычислений над объектами учета, указанными в третьей базе данных, при условии, что дата и/или время наступления последнего события, вызывающего необходимость перерасчета по объекту, превышает дату и/или время последнего расчета по объекту.
Дополнительное устройство обработки данных заявляемой системы оптимально выполнить с возможностью отбора записей в шестой и седьмой базах данных, относящихся к текущему расчетному периоду и указанному виду выплат с учетом описания видов выплат и их связей с видами расчетов, содержащегося в пятой базе данных, с возможностью суммирования отобранных записей по каждому объекту учета, с возможностью формирования итоговых сумм в виде разности между суммой записей в шестой базе данных и суммой записей в седьмой базе и с возможностью записи результатов вычислений для формирования итоговых сумм выплат в выходных документах и в седьмой базе данных; для чего дополнительное устройство обработки данных связано с выходом пятой базы данных, с выходом регистра разниц перерасчетов, с входом и выходом регистра выплат.
Дополнительное устройство обработки данных может быть выполнено с возможностью передачи исходных данных и результатов обработки данных на устройства отображения информации, во внешние системы по каналам связи, а также с возможностью записи исходных данных и результатов финансовых расчетов на машиночитаемые носители информации.
На фиг. 1 схематически представлена структурная схема  системы осуществления финансовых расчетов.
Система осуществления финансовых расчетов, в одном из возможных вариантов ее реализации, содержит блок информационного массива, включающий первую базу данных 1 для описания видов расчетов, вторую базу данных 2 для хранения картотеки с  описанием  объектов учета и входных документов, третью базу данных 3 для хранения списка объектов, подлежащих перерасчету, четвертую базу данных 4 для хранения результатов вычислений, пятую базу данных 5 для описания видов выплат, шестую базу данных 6 для хранения разниц перерасчетов, седьмую базу данных 7 для хранения сумм фактических выплат, устройство ввода данных 8, устройство обработки данных 9 для производства расчетных вычислений, дополнительное устройство обработки данных 10 для формирования итоговых сумм выплат, выходные документы 11, внешние системы 12, машиночитаемые носители информации 13, устройства отображения 14.
Устройство ввода данных 8 осуществляет ввод данных через пользовательский интерфейс и каналы связи с внешними системами 12 и запись их в первую базу данных 1 для описания видов расчетов и их взаимосвязи, в пятую базу данных 5 для описания видов выплат и их связи с видами расчетов, во вторую базу данных 2 для хранения описания объектов учета с перечнем видов расчетов по каждому объекту учета, а также для хранения электронного представления входных документов. Также устройство 8 отслеживает события, связанные с необходимостью перерасчета определенных объектов учета, начиная с некоторого временного периода, и регистрирует эту информацию в базе данных 3.
Выполнение расчетных вычислений осуществляется устройством обработки данных 9 по команде пользователя или при наступлении события, связанного с необходимостью расчета либо перерасчета. При получении команды на проведение расчетов (перерасчетов) устройство обработки данных 9 проверяет список объектов, подлежащих перерасчету, собранный в третьей базе данных 3. Если список объектов не пустой, устройство обработки данных 9 сравнивает дату и время наступления событий, связанных с необходимостью перерасчета, с датой и временем начала последнего расчета по объекту. Перерасчету подвергаются только объекты, перечисленные в третьей базе данных 3, при условии, что дата и/или время наступления события, связанного с необходимостью перерасчета, превышает дату и/или время начала последнего расчета по объекту. Перерасчет осуществляется в текущем расчетном периоде, начиная с периода действия, указанного в третьей базе данных 3, и заканчивая периодом действия в пределах текущего расчетного периода. Для остальных объектов, указанных в картотеке второй базы данных 2, выполнение расчетных вычислений ограничивается периодом действия в пределах текущего расчетного периода.
Устройство обработки данных 9 осуществляет расчетные вычисления в соответствии с описанными взаимосвязями объектов учета и видов расчетов в первой и второй базах данных 1, 2. Процесс расчетных вычислений предусматривает использование механизма зависимости одних расчетов от других по базовому периоду и использование механизма вытеснения одних расчетов другими по периоду действия.
Результат каждого расчета (перерасчета), полученный на выходе устройства обработки данных 9, сохраняется путем добавления в четвертую базу данных 4 записи, включающей по крайней мере атрибут, указывающий на принадлежность к виду расчета, поля, обозначающие расчетный период, поля, обозначающие временной период действия расчета, поля, обозначающие базовый период расчета, поля, обозначающие объект учета, поле для указания даты и времени начала расчета и поле результата расчета.
После каждого расчета (перерасчета) в устройстве обработки данных 9 вычисляется разность между результатом расчета и суммой всех записей в шестой базе данных 6 по тому же виду расчетов и объекту учета с тем же периодом действия. Если искомые записи не найдены, сумма записей считается равной нулю. Если разность между результатом расчета и суммой искомых записей в шестой базе данных 6 отлична от нуля, то в шестую базу данных 6 добавляется запись, включающая по крайней мере атрибут, указывающий на принадлежность к виду расчетов, поля, обозначающие расчетный период, поля, обозначающие временной период действия расчета, поля, обозначающие объект учета и поле значения разности.
По команде на формирование итоговой суммы по конкретному виду выплат, дополнительное устройство обработки данных 10 проверяет наличие записей в шестой базе данных 6, относящихся к текущему расчетному периоду и указанному виду выплат. Поскольку в шестой базе данных 6 данные сгруппированы по видам расчетов, отбор записей производится с использованием описания видов выплат и их связи с видами расчетов в пятой базе данных 5. При обнаружении искомых записей дополнительное устройство обработки данных 10 осуществляет суммирование записей шестой базы данных 6 и суммирование записей седьмой базы данных 7, относящихся к текущему расчетному периоду и указанному виду выплат, с последующим получением  итоговых сумм в виде разности между суммой записей в шестой базе данных 6 и суммой записей в седьмой базе данных 7 по каждому объекту. Результат фиксируется как в выходных документах 11, так и в седьмой базе данных 7 путем добавления записи, включающей по крайней мере атрибут, указывающий на принадлежность к виду выплат, поля для обозначения расчетного периода, поля, обозначающие объект учета, поле значения разности.
Предложенный способ производства финансовых расчетов позволяет автоматически осуществлять вычисление итоговых сумм выплат, на основании значений в регистре разниц перерасчетов, при этом исправление исходных данных и/или замена алгоритма расчета не влечет за собой удаление или сторнирование результатов прошлых расчетов.
Продемонстрируем это на примерах, в которых приняты следующие обозначения:
Пятая база данных 5 – регистр расчетов
Шестая база данных 6 – регистр перерасчетов
Седьмая база данных 7 – регистр выплат
Первый пример: в одном расчетном периоде работнику начислена сумма зарплаты за первую половину месяца (аванс) 10000 руб. и произведена выплата этой суммы через кассу, а позднее начислена зарплата за целый месяц в сумме 30000 рублей. Требуется сформировать документ перечислений зарплаты в банк.
В таблице 1 отображены записи регистров, соответствующие предложенному способу производства расчетов, после начисления аванса (этап 1), после формирования документа выплаты аванса (этап 2), после начисления полной зарплаты (этап 3),  после формирования документа перечисления зарплаты (этап 4).
Таблица 1
Этап
Запись в регистр расчетов
Запись в регистр разниц перерасчетов
Сумма к выплате
Запись в регистр выплат
1
10000
10000
0
0
2
0
0
10000
10000
3
30000
20000
0
0
4
0
0
20000
20000
Сумма к выплате на этапе 4 вычисляется как разность суммы записей  в регистре разниц перерасчетов и суммы записей в регистре выплат, то есть (10000+20000)-10000=20000. В данном примере после каждого расчета формировался документ выплаты, поэтому сумма к выплате совпадает со значением последней на этот момент записи в регистре разниц перерасчетов.
Второй пример: в одном расчетном периоде работнику начислили зарплату по виду расчета «Оплата по окладу» в сумме 10000 рублей (этап 1) и оформили выплату (этап 2), затем увеличили оклад и сделали перерасчет (этап 3), затем учли неявку и снова сделали перерасчет (этап 4), затем обнаружили и исправили ошибку в алгоритме, после чего сделали перерасчет (этап 5), затем оформили выплату (этап 6).
Таблица 2
Этап
Запись в регистр расчетов
Запись в регистр разниц перерасчетов
Сумма к выплате
Запись в регистр выплат
1
10000
10000
0
0
2
0
0
10000
10000
3
11000
1000
0
0
4
10800
-200
0
0
5
15000
4200
0
0
6
0
0
5000
5000
В таблице 2 отображены записи регистров после каждого этапа. Перед началом шестого этапа сумма записей в регистре разниц перерасчетов 10000+1000-200+4200=15000, сумма записей в регистре выплат 10000. Сумма к выплате вычисляется как разность суммы записей  в регистре разниц перерасчетов и суммы записей в регистре выплат, то есть (10000+1000-200+4200)-10000=5000. Поскольку все этапы относятся к одному расчетному периоду, сумма записей  в регистре разниц перерасчетов (10000+1000-200+4200)=15000 совпадает с результатом расчета 15000, зафиксированному в регистре расчетов.
Третий пример отличается от второго тем, что этапы 1 - 2 выполняются в первом расчетном периоде, а этапы 3 – 6 выполняются во втором расчетном периоде. При этом по периоду действия все этапы относятся к первому временному периоду.
Таблица 3
Этап
Расчетный период
Период действия
Запись в регистр расчетов
Запись в регистр разниц перерасчетов
Запись в регистр выплат
1
1
1
10000
10000
0
2
1
1
0
0
10000
3
2
1
11000
1000
0
4
2
1
10800
-200
0
5
2
1
15000
4200
0
6
2
1
0
0
5000
В таблице 3 отображены записи регистров после каждого этапа. Поскольку этапы 3-6 выполняются в расчетном периоде, отличающемся от периода действия, сумма записей в регистре разниц перерасчетов (1000-200+4200)=5000 во втором расчетном периоде не совпадает с результатом расчета 15000, зафиксированному в регистре расчетов. Сумма к выплате на этапе 6 вычисляется как разность между суммой записей  в регистре разниц перерасчетов и суммой записей в регистре выплат, относящихся ко второму расчетному периоду, то есть (1000-200+4200)-0=5000.
Вышеприведенные примеры отражают упрощенную ситуацию, когда расчет касается одного вида расчетов «Оплата по окладу» и одного вида выплат «Оплата по окладу». Как правило, при каждом расчете (перерасчете) осуществляются расчетные вычисления не по одному, а по нескольким видам расчетов, представленным в записях регистра расчетов. Соответственно, в регистре разниц перерасчетов представлены суммы разниц по тем же видам расчетов.
Механизм вытеснения одних расчетов другими по периоду действия также реализуется с использованием регистра разниц перерасчетов. Проследим на примере, как учитывается больничный лист, относящийся к первому периоду, но представленный во втором периоде, и компенсация от предприятия, относящаяся к первому периоду, но начисленная в третьем периоде.
Пример: в первом расчетном периоде работнику начислили полную зарплату по виду расчета «Оплата по окладу» в сумме 20000 рублей (этап 1) и выплатили эту сумму (этап 2), во втором расчетном периоде выяснилось, что часть первого периода работник не являлся на работу по причине болезни, о чем он представил больничный лист. Поэтому во втором расчетном периоде произвели перерасчет по виду начислений «Оплата по окладу» с учетом неявки (этап 3) и сделали начисление по виду расчетов «Оплата больничного листа» (этап 4), после чего оформили взыскание (этап 5). Сумма взыскания на этапе 5 вычисляется как разность суммы записей в регистре разниц перерасчетов и суммы записей в регистре фактических выплат, относящихся ко второму расчетному периоду, то есть -200=(-4000+3800)-0.
В третьем расчетном периоде пришлось сделать перерасчет по всем вида расчетов в связи с двумя событиями:
изменился алгоритм расчета,
работнику начислена компенсация от предприятия за первый период.
В результате расчетных вычислений в третьем расчетном периоде выяснилось, что сумма по виду расчетов «Оплата по окладу» не изменилась (этап 6), сумма по виду расчетов «Оплата больничного листа» не изменилась (этап 7), сумма по виду расчетов «Компенсация от предприятия» равна 50 (этап 8). Сумма выплаты на этапе 9 вычисляется как разность суммы записей в регистре разниц перерасчетов и суммы записей в регистре фактических выплат, относящихся к третьему расчетному периоду, то есть 50=(0+0+50)-0.
В таблице 4 отображены записи регистров по каждому этапу. Для простоты изложения не показаны записи, относящиеся ко второму и третьему временным периодам по периоду действия.
Таблица 4
Этап
Расчетный период
Вид расчетов
Период действия
Запись в регистр расчетов
Запись в регистр разниц перерасчетов
Запись в регистр выплат
1
1
Оплата по окладу
1
20000
20000=(20000-0)
2
1
1
20000
3
2
Оплата по окладу
1
16000
-4000=(16000-20000)
4
2
Оплата больничного листа
1
3800
3800=(3800-0)
5
2
1
-200
6
3
Оплата по окладу
1
16000
0=(16000-20000+4000)
7
3
Оплата больничного листа
1
3800
0=(3800-3800)
8
3
Компенсация от предприятия
1
50
50=(50-0)
9
3
1
50
Формирование итоговых сумм выплат производится по конкретным видам выплат. Поскольку записи в регистре данных перерасчетов содержат данные по видам расчетов, а не по видам выплат, для отбора записей, относящихся к указанному виду выплат, используется описание видов выплат и их связи с видами расчетов. Устройство формирования итоговых сумм отбирает в регистре разниц перерасчетов записи, связанные с указанным видом выплат, и в случае наличия записей вычисляет итоговую сумму как разность между суммой отобранных записей в регистре разниц перерасчетов и суммой записей  регистра фактических выплат, относящихся к текущему расчетному периоду и указанному виду выплат. Результаты вычисления итоговых сумм фиксируются в выходных документах и в регистре фактических выплат с указанием вида выплат и расчетного периода.