Расчетная система
Расчетные модули (в дальнейшем - расчетчики) вынесены в отдельные процессы, которые запускаются одновременно с основным ядром системы.
Общение между основным процессом и расчетчика происходит с помощью протокола ampq реализовано на базе RabbitMq.
Среди основных частей расчетной системы можно выделить следующие блоки
Интерфейс получения информации из справочников.
Компилятор языка формул - модуль разбора формул
Модуль приведения формульных выражений к первичным значениям - основная логика формирования формул для ячеек
Модуль выполнения расчета ячеек - получение первичных данных и расчет формул
Модуль агрегации данных - применение правил агрегации и суммирование нескольких документов для разных организаций
Модуль автопрокачки данных - система оптимизации расчетов
Last updated