После обновления конфигурации "1С:Управление торговлей" до версии 11.5.25.85 и выше, многие пользователи сталкиваются с проблемой существенного замедления работы базы данных. Иногда это сопровождается тем, что штатные процедуры обновления зависают, и требуется проведение принудительного выполнения отложенного обновления информационной базы. Основной причиной замедления часто становится аномальный рост количества записей в регистре сведений ЗаданияКРаспределениюВзаиморасчетов, а также в связанных с ним регистрах, таких как ЗаданияКРаспределениюРасчетовСКлиентами и ЗаданияКРаспределениюРасчетовСПоставщиками. Это происходит, например, при массовом перепроведении документов товародвижения (заказов клиентов, реализаций), что провоцирует систему на создание множества заданий для отложенного проведения взаиморасчетов. Рассмотрим эту проблему подробнее и выясним, как ее эффективно решить.
Для начала, давайте разберемся, какую роль играют эти регистры в системе 1С:УТ. Регистры ЗаданияКРаспределениюВзаиморасчетов, ЗаданияКРаспределениюРасчетовСКлиентами и ЗаданияКРаспределениюРасчетовСПоставщиками предназначены для регистрации потребностей системы в актуализации данных взаиморасчетов. В конфигурациях "1С:УТ 11" взаиморасчеты ведутся в два этапа: первичное (предварительное) проведение документа и последующее "допроведение" или актуализация движений. Записи в этих регистрах сигнализируют системе о том, что по определенной аналитике (партнер, объект расчетов, валюта, дата) данные взаиморасчетов могут быть неактуальными и требуют пересчета. Если в этих регистрах нет записей, система считает, что последовательность не нарушена и движения актуальны.
Возникает логичный вопрос: почему записи в этих регистрах продолжают плодиться, если в версии 11.5 и выше "оффлайн" режим взаиморасчетов считается устаревшим и рекомендуется использовать "онлайн" режим (а в версии 11.5.27 поддержка "оффлайн" режима вовсе прекращается с принудительным переходом на "онлайн")? Мы выяснили, что записи всё равно могут появляться.
Это связано с тем, что записи продолжают писаться для возможного перехода на старую схему или для обработки длительных операций распределения взаиморасчетов в фоновом режиме, даже если основной расчет происходит в транзакции проведения документа. Они добавляются при изменении сумм в регистрах накопления Расчеты с клиентами и Расчеты с поставщиками. Таким образом, даже в "онлайн" режиме система может создавать задания для последующей актуализации или дорасчета, что проявляется в виде роста этих регистров.
Основным и наиболее эффективным способом решения проблемы разрастания регистров и связанных с этим торможений базы, а также некорректного отображения данных в отчетах (например, в актах сверки), является правильная настройка и запуск регламентного задания — для контроля его стабильной работы подойдёт автоматический контроль за выполнением регламентных заданий в 1С.
Мы установили, что ключевым является регламентное задание "Выполнение отложенных движений по расчетам с клиентами/поставщиками". Это задание отвечает за актуализацию взаиморасчетов и обработку "отложенных" движений. Для его включения и настройки выполните следующие действия:
Администрирование.Обслуживание.Регламентные операции найдите Регламентные и фоновые задания.Мы видим по опыту пользователей, что после включения данного регламентного задания, система начинает обрабатывать записи в регистрах. Визуально это проявляется в том, что поле Документ в регистре ЗаданияКРаспределениюВзаиморасчетов (и аналогичных) очищается, что означает успешное распределение взаиморасчетов по данному заданию. Сами записи при этом не удаляются сразу, но их наличие с пустым полем Документ уже не влияет на производительность и актуальность отчетов.
После включения регламентного задания, мы наблюдаем следующее поведение регистров:
Документ в них очищается.ЗаданияКРаспределениюРасчетовСКлиентами и ЗаданияКРаспределениюРасчетовСПоставщиками. Регламентное задание "Выполнение отложенных движений по расчетам с клиентами/поставщиками" обрабатывает задания для всех этих регистров.Таким образом, после запуска регламентного задания и перепроведения документов, записи в "ЗаданияКРаспределениюРасчетов" могут появляться, но быстро исчезают или обрабатываются, и акты сверки начинают заполняться корректно — восстановить актуальность взаиморасчетов поможет обработка диагностики закрытия месяца и автоперепроведения документов в 1С. Если же требуется навести порядок в самих расчетах, можно применить автоматическое групповое создание документов взаимозачета задолженности.
В системе присутствуют и другие регламентные задания, которые могут быть связаны с обработкой очередей и фоновых заданий:
Однако, по нашему опыту и подтвержденному решению, именно "Выполнение отложенных движений по расчетам с клиентами/поставщиками" является ключевым для решения описанной проблемы с разрастанием регистров взаиморасчетов.
Мы категорически не рекомендуем принудительно очищать регистры ЗаданияКРаспределениюВзаиморасчетов и аналогичные. Хотя это может показаться быстрым решением для борьбы с тормозами, это приводит к серьезным проблемам с актуальностью данных. Если записи удалить, они не будут обсчитываться, что приведет к некорректным данным в отчетах по взаиморасчетам и актах сверки. Многие пользователи сталкивались с тем, что после такой очистки половина документов просто не появляется в сверке. Вместо удаления лучше использовать групповое создание документов Корректировка задолженности для правильного закрытия висящих остатков. Всегда следует использовать штатные механизмы системы, такие как регламентные задания.
Мы выяснили, что проблемы с разрастанием регистра могли усилиться после обновления до версии 11.5.25.85. В этой версии были внесены изменения, например, в логику обеспечения потребностей и распределения запасов, что могло косвенно повлиять на механизм формирования заданий по взаиморасчетам. Чтобы убедиться, что в коде обновленной базы нет скрытых проблем, рекомендуется провести анализ конфигурации на наличие ошибок.
Для поддержания оптимальной производительности и корректности данных в 1С:УТ 11.5, помимо настройки регламентных заданий, мы рекомендуем:
В целом, поддержание актуального состояния регистров взаиморасчетов требует внимательной настройки регламентных заданий и понимания принципов их работы, особенно при переходе на новые версии конфигурации. Следуя этим рекомендациям, вы сможете существенно улучшить производительность вашей базы 1С:УТ 11.5 и обеспечить корректность финансовых отчетов.