В конфигурациях 1С:Управление торговлей (редакции 11.2 и 11.3), а также в аналогичных решениях (ERP, Комплексная автоматизация) пользователи нередко сталкиваются с ситуацией, когда в начале месяца при попытке создать документ Счет-фактура выданный система зависает. При этом отладка показывает, что выполнение останавливается еще до входа в процедуры ПриСозданииНаСервере() или ОбработкаЗаполнения(), а регламентное задание «Выполнение отложенных движений по расчетам с клиентами/поставщиками» выполняется аномально долго либо блокирует работу пользователей. Разберем механизм возникновения этой ошибки и детальные шаги по ее устранению.
Рассмотрим, как устроена работа подсистемы взаиморасчетов в архитектуре с отложенным распределением:
РасчетыСКлиентамиПоДокументам. Если в этот момент активно регламентное или фоновое задание распределения взаиморасчетов, оно накладывает исключительные транзакционные и управляемые блокировки на измерения (Организация, Партнер, Контрагент, Договор или ОбъектРасчетов). Сеанс пользователя переходит в состояние ожидания освобождения ресурса вплоть до истечения таймаута.ЗаданияКРаспределениюРасчетовСКлиентами присутствуют записи с пустыми измерениями ОбъектРасчетов или Документ, либо даты документов попадают в закрытый период («Дату запрета изменения данных»), регламентное задание входит в бесконечный цикл. Оно пытается провести распределение, натыкается на блокировку запрета записи, откатывает транзакцию и при следующем шаге перезапускается заново, монопольно занимая ресурсы сервера.Проанализируем состояние очереди заданий. Для этого перейдем к просмотру регистра сведений ЗаданияКРаспределениюРасчетовСКлиентами (через Функции для технического специалиста / Все функции):
ОбъектРасчетов, Документ) или с неактуальными датами из прошлых закрытых периодов.Ведомость расчетов с клиентами и Задолженность клиентов по срокам. Если показатели сходятся, очередь заданий можно безопасно актуализировать.Чтобы исключить взаимные блокировки при оперативной работе менеджеров и бухгалтеров, разберем настройку фонового пересчета расчетов:
Выясним варианты решения проблемы в зависимости от используемого релиза программы:
Задания к распределению расчетов с клиентами и Задания к распределению расчетов с поставщиками (видимость команды настраивается через форму списка).РасчетыСКлиентамиПоДокументам формируются непосредственно в момент проведения первичного документа, что полностью исключает потребность в очереди заданий и устраняет задержки при создании счет-фактур.