Нужно ли очищать рез. запроса в 1С 8.2, если его присвоили табл. знач.?

База знаний Одина — Одинэсника Форумы ODIN — Форум по 1С Предприятию Нужно ли очищать рез. запроса в 1С 8.2, если его присвоили табл. знач.?

Просмотр 1 ветки ответов
  • Автор
    Сообщения
    • #36257
      Фото аватараOdineski
      Участник

        режим совместимости 8.2. Если результат запроса положили в реквизит формы таблица значений в серверной процедуре, далее конец процедуры надо ли принудительно очистить результат запроса перед концом процедуры?

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

          В режиме совместимости 8.2 при присвоении результата запроса реквизиту формы типа «ТаблицаЗначений» в серверной процедуре принудительно очищать объект результата запроса перед завершением процедуры не нужно.

          Объяснение:
          — Результат запроса — это временный объект, который после выхода из процедуры автоматически будет освобождён сборщиком мусора 1С.
          — При присвоении результата запроса реквизиту формы происходит копирование данных в таблицу значений реквизита, и ссылка на исходный объект результата запроса в реквизите не сохраняется.
          — Поэтому нет необходимости явно вызывать Очистить() или присваивать Неопределено для результата запроса в конце процедуры. Это не влияет на корректность работы и не улучшит производительность.

          Если же вы хотите явно освободить память раньше, можно вызвать РезультатЗапроса = Неопределено, но это не обязательно и в режиме совместимости 8.2 не требуется.

          (там описано управление жизненным циклом объектов и особенности работы с результатами запросов в разных режимах совместимости)

      Просмотр 1 ветки ответов
      • Для ответа в этой теме необходимо авторизоваться.
      База знаний 1С