Как перейти с платформы 1С 8.3.6 на 8.3.9 без ошибок и какой релиз выбрать?

Системный администратор 1С v8.3 (Управляемые формы) IT и автоматизация бизнеса
← На главную

Переход между ветками технологической платформы 1С:Предприятие всегда сопровождается рисками изменения поведения типовых механизмов, падения производительности или появления ошибок в запросах. Переход с версии 8.3.6 на ветку 8.3.9 часто обусловлен требованиями конфигураций и внешнего программного обеспечения. Разберем, какие сборки ветки 8.3.9 показали себя наиболее надежными в промышленной эксплуатации, с какими сложностями предстоит столкнуться и как заранее предотвратить сбои.

Рекомендуемые стабильные сборки ветки 8.3.9

Проанализируем практический опыт эксплуатации релизов ветки 8.3.9 под нагрузкой в различных конфигурациях (включая крупные базы документооборота и управления автотранспортом):

  1. Релиз 8.3.9.2170 — одна из самых сбалансированных версий, показавшая длительную бесперебойную работу без утечек памяти и зависаний рабочих процессов кластера серверов.
  2. Релиз 8.3.9.2233 — финальная стабилизирующая сборка ветки, в которой закрыли многие недочеты механизмов разграничения прав и безопасного режима. Рекомендуется к установке в первую очередь, если требуется максимальная стабильность ветки 8.3.9.
  3. Релиз 8.3.9.2033 — ранняя сборка, показавшая хорошее быстродействие при обновлении типовых учетных систем, однако уступающая более поздним релизам в стабильности фоновых заданий.

Ошибка «Неверные параметры (VALUETYPE)» и методы ее устранения

Выясним причину одной из самых частых ошибок, появляющихся при смене платформы. Сбой Неверные параметры (VALUETYPE) возникает на уровне внутреннего транслятора запросов платформы (SDBL) при генерации SQL-кода к СУБД. Ошибка преимущественно падает в клиент-серверном режиме при обращении к полям составного типа (в динамических списках, регистрах или субконто), если в базе нарушена ссылочная целостность или присутствуют пустые реквизиты подчинения.

Для исправления данной проблемы применим следующие решения на уровне кода и данных:

  1. Тестирование и исправление информационной базы: запустим процедуру «Тестирование и исправление» в конфигураторе, обязательно включив пункты «Проверка логической целостности» и «Проверка ссылочной целостности». Особое внимание уделим подчиненным справочникам: наличие пустых обязательных реквизитов Владелец часто провоцирует сбой транслятора.
  2. Замена функции ТИПЗНАЧЕНИЯ на оператор ССЫЛКА: проверим проблемные запросы и заменим вычисление функции на прямое определение типа.

Посмотрим на пример оптимизации проблемного участка запроса:


// Проблемный вариант:
ВЫБОР
    КОГДА ТИПЗНАЧЕНИЯ(Таблица.Субконто1) = ТИП(Справочник.Номенклатура) ТОГДА
        Таблица.Субконто1.Артикул
ИНАЧЕ
    ""
КОНЕЦ

// Исправленный вариант с явной проверкой ссылки:
ВЫБОР
    КОГДА Таблица.Субконто1 ССЫЛКА Справочник.Номенклатура ТОГДА
        ВЫРАЗИТЬ(Таблица.Субконто1 КАК Справочник.Номенклатура).Артикул
ИНАЧЕ
    ""
КОНЕЦ

Если в коде необходимо проверить именно тип поля составного ссылочного типа, обратимся к полю через суффикс .Ссылка: конструкция ТИПЗНАЧЕНИЯ(Таблица.Субконто1.Ссылка) транслируется движком платформы корректно.

Особенности механизма «Защиты от опасных действий»

В платформе 8.3.9 разработчики 1С впервые представили механизм интерактивной защиты от опасных действий. При открытии внешних отчетов, обработок или загрузке внешних компонент система принудительно запрашивает подтверждение пользователя. Это нововведение вызывает сбои в ряде типовых сценариев:

  1. В толстом клиенте (обычное приложение) модальные окна подтверждения могут приводить к зависанию пользовательских интерфейсов.
  2. Блокируется фоновая инициализация систем лицензирования (например, СЛК) и драйверов торгового оборудования.
  3. Регламентные и фоновые задания, использующие внешние обработки в безопасном режиме, аварийно завершаются без возможности диалога.

Рассмотрим способы отключения механизма защиты:

  1. Для конкретного пользователя: откроем список пользователей в Конфигураторе, перейдем в свойства нужного пользователя и снимем флажок Защита от опасных действий.
  2. Централизованно на уровне сервера: чтобы отключить предупреждения для всех пользователей информационной базы, скорректируем файл конфигурации conf.cfg, расположенный в каталоге bin/conf платформы. Добавим строку: DisableUnsafeActionProtection=.* Это регулярное выражение полностью отключает запрос подтверждения для всех баз, работающих на данном сервере или клиенте.
  3. В программном коде регламентных заданий: если обработка вызывается программно, при вызове явно передадим параметр БезопасныйРежим = Ложь.

Важные шаги перед обновлением

Разберем по шагам регламент перехода на ветку 8.3.9:

  1. Сохранение режима совместимости: при установке исполняемых файлов 8.3.9 не меняем сразу параметр конфигурации Режим совместимости. Если оставить его в значении Версия 8.3.6, мы минимизируем риск несовместимости прикладных алгоритмов, получая преимущества обновленного серверного кластера.
  2. Проверка разрядности клиента: начиная с 8.3.9, появился полноценный 64-битный клиент для ОС Windows. Если на рабочих местах применяются 32-битные библиотеки (ActiveX, сканеры штрихкодов, фискальные регистраторы), установим именно 32-битную версию платформы (x86), иначе компоненты перестанут инициализироваться.
  3. Проверка расширений: в платформе 8.3.9 существенно переработан механизм расширения конфигураций. Перед запуском пользователей выполним синтаксический контроль конфигурации и всех подключенных расширений в режиме Конфигуратора.
← На главную