Как правильно перевести 1С:УПП 1.3 на платформу 8.3 и избежать критических ошибок

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

Перевод производственной базы 1С:Управление производственным предприятием (УПП 1.3) на платформу 1С:Предприятие 8.3 — частая задача при развитии корпоративной инфраструктуры. Необходимость перехода обычно продиктована внедрением смежных конфигураций (например, 1С:Документооборот или 1С:Бухгалтерия предприятия 3.0), потребностью в поддержке защищенных соединений SSL или интеграцией с веб-сервисами. Рассмотрим подробно все технические аспекты, подводные камни и порядок действий при миграции базы данных на платформу 8.3.

Анализ стратегий перехода: запуск в режиме совместимости или полное снятие ограничений

Разберем две основные стратегии эксплуатации конфигурации УПП 1.3 на платформе 8.3:

  1. Работа с сохранением режима совместимости «Версия 8.2.13» (рекомендуемый вариант): типовая конфигурация УПП изначально рассчитана на работу в режиме совместимости с платформой 8.2.13. При установке сервера 1С 8.3 и подключении существующей базы без изменения свойств конфигурации система запускается стабильно. Этот вариант позволяет безболезненно устанавливать последующие типовые обновления от вендора (файлы .cfu и .cf) без конфликтов метаданных в корне конфигурации.
  2. Повышение или полное отключение режима совместимости: необходимо, если в доработках требуется использовать функционал платформы 8.3 (например, прямая запись во внешние источники данных, работа с новыми механизмами HTTP-сервисов или управляемыми блокировками). При таком сценарии отключается автоматическое типовое обновление, а разработчику требуется вручную адаптировать код под новые требования платформы.

Обязательные требования к СУБД и серверной инфраструктуре

Проанализируем технические нюансы взаимодействия платформы 8.3 с Microsoft SQL Server при переводе баз с 8.2:

  1. Параметры сортировки (Collation): платформа 8.3 критически относится к параметрам сортировки базы данных. В СУБД должен быть корректно задан русский Collation (Cyrillic_General_CI_AS). Несоответствие параметров сортировки может вызывать сбои при формировании временных таблиц в запросах.
  2. Оценка кардинальности (Cardinality Estimator): при работе на современных версиях MS SQL Server (2014 и новее) классические запросы обычных форм УПП могут замедляться из-за нового оптимизатора. Рекомендуется включить устаревший оценщик кардинальности на уровне базы данных SQL с помощью параметра LEGACY_CARDINALITY_ESTIMATION = ON.
  3. Настройка рабочих процессов кластера (rphost): в кластере 8.3 необходимо настроить параметры перезапуска рабочих процессов: задать «Допустимый объем памяти» и «Интервал превышения допустимого объема памяти». Это предотвратит падение службы кластера при формировании тяжелых отчетов толстого клиента.

Почему после реструктуризации база данных увеличивается в 2 раза

Выясним причину резкого роста размера файлов базы данных при смене платформы или изменении структуры метаданных:

  1. Особенности создания временных таблиц СУБД: во время реструктуризации платформа 1С создает новые копии таблиц, переносит в них информацию, строит индексы и только затем удаляет старые объекты. При этом файл данных .mdf расширяется на диске под двойной объем данных, но обратно свободное место операционной системе автоматически не возвращает.
  2. Рост журнала транзакций (.ldf): если в базе данных используется полная модель восстановления (Full Recovery Model), массовые операции записи строк раздувают журнал транзакций. Перед выполнением тяжелых процедур реструктуризации переведем модель восстановления базы в Simple либо выполним резервное копирование журнала транзакций с последующим сжатием (Shrink).

Решение ошибки отсутствия регистра (_InfReg...) при реструктуризации

Посмотрим на распространенную проблему: при попытке изменить режим совместимости платформа выдает ошибку об отсутствии физической таблицы вида _InfRegxxxx. Это следствие рассинхронизации таблиц метаданных (Config, ConfigSave, DBSchema), возникшей из-за некорректного применения динамических обновлений в прошлом.

Разберем по шагам алгоритм устранения этой ошибки:

  1. Выполним полное резервное копирование информационной базы.
  2. Запустим процедуру «Тестирование и исправление» в конфигураторе со всеми активными проверками (включая реструктуризацию таблиц и проверку логической и ссылочной целостности).
  3. Выгрузим базу данных в файл выгрузки .dt.
  4. Создадим на сервере СУБД новую пустую базу данных с корректными параметрами сортировки и загрузим в нее полученный файл .dt. Данная операция полностью пересоздает структуру таблиц без накопленного мусора схемы.
  5. Очистим серверный кэш конфигурации и локальный кэш пользователя.

Особенности адаптации конфигурации при снятии режима совместимости

Если для решения производственных задач принято решение полностью отключить режим совместимости на платформе 8.3, проанализируем обязательные доработки конфигурации:

  1. Настройка модальности и синхронных вызовов: в свойствах корня конфигурации необходимо установить:

    — «Режим использования модальности» — перевести в значение Использовать;

    — «Режим использования синхронных вызовов расширений платформы и внешних компонент» — перевести в значение Использовать.

    Это предотвратит аварийное завершение работы при выполнении классических методов Предупреждение, Вопрос и ОткрытьФормуМодально.
  2. Адаптация 32-битных библиотек: если сервер и клиенты 8.3 развернуты в 64-битной разрядности, стандартные 32-битные внешние компоненты торгового оборудования (сканеры, фискальные регистраторы, драйверы весов) не смогут загрузиться. Для таких рабочих мест используем 32-битный клиент платформы 1С.
  3. Корректировка отчетов на СКД: в некоторых релизах платформы 8.3 группировка по полям с типом Дата в обычном интерфейсе может требовать явного указания формата в схеме компоновки данных.

Соблюдение данных рекомендаций гарантирует стабильную и производительную работу конфигурации УПП 1.3 на современной платформе 8.3 без потери данных и остановки бизнес-процессов.

← На главную