Сокращение времени записи документов в «1С: Консолидация»


Типовые механизмы сохранения данных в «1С: Консолидация»  не рассчитаны на большие  объемы документов со сложными структурами. Например, отчет, состоящий из  30 колонок и 400 строк, записывается в течение 1, 5 минут, что является недопустимо долгим.  Продолжительное время записи данных блокирует работу пользователя с программой до окончания процесса сохранения.

Однако этот процесс может быть существенно оптимизирован на программном уровне. Изменения алгоритмов системы приводят  к сокращению времени выполнения процедуры в 10 раз.

Запись отчета до оптимизации

Алгоритм записи отчета построен таким образом, что сохранение в регистры данных выполняется последовательно, одно за другим. Это является недостатком данной модели. Из-за большого количества регистров, время выполнения их записи может составлять до 98% от общего времени сохранения данных.

Типовая схема процессов записи отчета представлена ниже:

Оптимизация процессов записи отчетов

Независимость процедур записи позволяет применить их выполнение по параллельной схеме. В результате, все процедуры будут выполняться одновременно, а общее время записи отчета будет равняться времени выполнения самой длительной операции.

Схема выполнения процедур записи в параллельном режиме приведена на рисунке ниже:

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

Во время записи система блокирует доступ к зависимым отчетам:

Об окончании процесса записи система оповещает дополнительно.

Добавить комментарий