1с 2 мин -> 2 сек на слабом ПК

Покупатели на кассах ждут, когда касса отвиснет, что бы оплатить товар.

Была интересная задача. В компании у кассиров есть механизм по формированию списка сохраненных чеков, но с обновлением цены. То есть когда кассир открывает отложенный чек, то в чеке отображаются новые цены по товарам. Но время на формирование списка отложенных чеков и обновления в них цен, занимало 2 минуты. И пока формируется, база висит и ничего нельзя сделать. Кассовые компьютеры довольно слабые, и базы 1с для них уже тяжелые.

Попытка оптимизировать код, ускорила время на 15 сек. Для меня это слабый показатель, и нужно было придумать другое решение.

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

Решил изменить архитектуру кода. Весь код, который формируется при нажатии на кнопку, перенес в регламентные задания. Был риск, что при выполнении регламентного задания, касса начнет тормозить. Но при тестах, это не подтвердилось.

В итоге пока кассир работает, 1с автоматически обновляет данные. И когда кассир нажимает на кнопку, то открываются уже готовые данные, и не нужно ждать когда выполнится код.

1с 2 мин -> 2 сек на слабом ПК | Сетка — социальная сеть от hh.ru