Столкнулись с проблемой конфликта блокировок при закрытии этапов производства. Закрытие этапов происходит паралельно несколькими диспетчерами. Конфликт блокировок срабатывал на регистре сведений "Задания к расчету графика производства".
После анализа выяснили, в регистре больше 50 млн. записей. В итоге, при закрытии этапа, когда для него из этого регистра удаляются все задания к расчету графика, регистр блокировался на длительное время, что приводило к конфликту блокировок.
Для исправления этой проблемы была написана эта обработка. Она удаляет все задания из регистра, оставляя только последнее.
Обработку можно запускать как внешнюю обработку (есть выбор дат, между которых отбираются этапы), так и как регламентное задание (отрабатывает все этапы производства по текущую дату).
Проверено на следующих конфигурациях и релизах:
- 1С:ERP Управление предприятием 2, релизы 2.5.17.160