Ответ в теме: Почему долго закрываются формы в «Документооборот» 2.1 после обновления?

База знаний Одина — Одинэсника Форумы ODIN — Форум по 1С Предприятию Почему долго закрываются формы в «Документооборот» 2.1 после обновления? Ответ в теме: Почему долго закрываются формы в «Документооборот» 2.1 после обновления?

#35894
bot_avaOdin — Одинэсник
Участник

    Если после обновления конфигурации «Документооборот» 2.1 формы стали долго закрываться, это связано с изменениями в платформе и конфигурации, которые влияют на обработку событий закрытия форм и обновление данных.

    Основные причины и способы исправления:

    1. **Изменения в режиме проведения документов и работе с формами**
    В новых версиях платформы (начиная с 8.3.25 и выше) прекращена поддержка проведения документов с запросом режима проведения у пользователя в тонком и веб-клиентах. При попытке проведения таких документов генерируется исключение, что может влиять на производительность и время закрытия форм.
    Исправление:
    — Проверьте, что в конфигурации не используется режим проведения «Запрашивать» для документов, особенно в тонком и веб-клиентах.
    — Переведите режим проведения на «Автоматический» или «Ручной» без запроса пользователю.
    — Обновите обработчики проведения документов с учетом новых требований платформы.

    2. **Обновление динамических списков и реквизитов формы**
    При закрытии формы может выполняться обновление данных, которое теперь происходит дольше из-за увеличенного объема данных или изменений в логике обновления.
    Исправление:
    — Оптимизируйте код обновления динамических списков и реквизитов.
    — Используйте методы Элементы.<ИмяЭлемента>.Обновить(), ЭтаФорма.Прочитать(), ЭтаФорма.ОбновитьОтображениеДанных() только при необходимости, избегайте избыточных вызовов.
    — Проверьте, нет ли в обработчиках закрытия формы тяжелых запросов или операций.

    3. **Изменения в обработке событий форм**
    В новых версиях платформы изменилось поведение кнопок и команд на управляемых формах: кнопки становятся недоступными, если связанная команда недоступна, что может влиять на логику закрытия формы.
    Исправление:
    — Проверьте обработчики событий формы на предмет избыточных проверок и вызовов.
    — Убедитесь, что нет циклических вызовов или долгих операций в процедурах ПриЗакрытии и ПриСоздании.

    4. **Оптимизация кода модификации форм**
    Если формы модифицируются программно (например, через общий модуль), убедитесь, что добавление элементов и изменение запросов происходит эффективно и не приводит к избыточным операциям при закрытии.
    Исправление:
    — Перенесите тяжелые операции в отдельные процедуры, вызываемые по событию, а не при закрытии.
    — Используйте кэширование данных, если возможно.

    5. **Обновление платформы и конфигурации**
    Иногда проблемы с производительностью связаны с багами в конкретных релизах платформы или конфигурации.
    Исправление:
    — Проверьте наличие обновлений платформы и конфигурации, в которых исправлены проблемы с производительностью.
    — Примените последние обновления.

    6. **Диагностика и профилирование**
    Для точного определения причины задержек используйте встроенные средства профилирования и трассировки платформы.
    — Включите журнал регистрации и проанализируйте время выполнения процедур при закрытии формы.
    — Определите узкие места и оптимизируйте соответствующий код.

    Резюме:
    Долгое закрытие форм после обновления связано с изменениями в платформе 1С и конфигурации «Документооборот» 2.1, влияющими на режим проведения документов, обновление данных форм и обработку событий. Для исправления необходимо проверить и адаптировать режим проведения, оптимизировать код обновления форм, обновить платформу и конфигурацию, а также провести диагностику производительности.
    https://infostart.ru/1c/articles/1152528/
    https://helpf.pro/faq/view/1658.html

    База знаний 1С