Технология перехода с 1С:Предприятия 8.0 на 1С:Предприятие 8.1

При переходе на новую версию 1С:Предприятие 8.1 мы рекомендуем соблюдать следующую последовательность действий:

  1. Ознакомьтесь с содержимым данного файла, а также с разделом "Переход с версии 8.0 на версию 8.1" файла V8Update.htm, расположенным в каталоге установки программы.
  2. Переход на новую версию 1С:Предприятие 8.1 возможен с версий 8.0.10 и выше. Рекомендуется выполнять переход с версии 8.0.17 или более старшей, поскольку в этих версиях имеется возможность проверки и исправления неуникальных записей в режиме тестирования и исправления, препятствующих переходу к версии 8.1.
  3. В случае перехода с версии 8.0.17 (или более старшей) выполните процедуру тестирования и исправления.
  4. Перед началом конвертации обязательно сделайте резервную копию информационной базы.
  5. Убедитесь, что диске достаточно свободного места. При конвертации будет выполнена реструктуризация некоторых таблиц базы данных. Желательно чтобы свободное место составляло не менее 30-40% от размера базы данных.
  6. Выполните конвертацию информационной базы. Для этого зайдите в базу в режиме конфигуратора версии 8.1, и утвердительно ответьте на предложение о конвертации. Время, требуемое на конвертацию, в зависимости от объема базы данных, может быть достаточно большим. Спланируйте переход на новую версию с учетом того, что база некоторое время будет недоступна для работы. По результатам наших исследований, время конвертации информационной базы "1C:Предприятие 8.0. Управление производственным предприятием", объемом 85 Гб составляет в среднем 3.5 часа.

    ВАЖНО!
    После конвертации полученную базу уже нельзя будет использовать совместно с версией 1С:Предприятие 8.0.

  7. Сконвертируйте внешние обработки для возможности их применения с новой версией платформы.

    ВАЖНО!
    Учтите, что сконвертированные обработки нельзя будет использовать в версии 1С:Предприятие 8.0. Сделайте резервные копии всех конвертируемых файлов.

Процедура конвертации внешних обработок проста – достаточно их открыть в 1С:Предприятие в режиме конфигуратора. Кроме того, предусмотрена возможность их групповой конвертации (подробнее см. в документации).
В типовых конфигурациях, реализована возможность сохранения внешних обработок в составе данных информационной базы (механизм внешних печатных форм и т.п., см. справочник "Внешние обработки"). Их также следует сконвертировать, для этого следует воспользоваться прилагаемой обработкой КонвертацияВнешнихОбработок.epf. Данная обработка позволяет выгрузить сохраненные в базе данных внешние обработки в произвольный каталог, запустить в необходимом для конвертации режиме конфигуратор, после чего загрузить измененные обработки обратно в справочник.

После выполнения описанных действий база полностью готова к использованию версией 1С:Предприятие 8.1.

В некоторых случаях, например, если время конвертации базы на версию 8.1 превышает период, в течение которого база может быть недоступна для пользователей, можно выполнить переход на новую версию, не ограничивая доступ пользователей к рабочей базе на версии 8.0.
Этого можно добиться с помощью механизма планов обмена.

Для этого выполните следующие действия:

  1. В конфигурации информационной базы 8.0 сделайте сравнение/объединение с конфигурацией,  входящей в комплект поставки новой версии платформы. В дереве результата сравнения снимите флажки со всех объектов метаданных, кроме нового плана обмена ПереходНа81, который следует "принять" без изменений.  Включите в состав добавленного плана обмена все объекты конфигурации. Если используется типовая конфигурация фирмы "1С", исключите из состава обмена справочник НастройкиОбменаДанными и регистр сведений ПараметрыОбменаДанными. Добавить план обмена таким образом можно в произвольную конфигурацию, но наиболее простое применение плана обмена будет в случае использования типовых конфигураций фирмы "1С".
  2. В режиме 1С:Предпрития создайте узлы для данного плана обмена. Узел, который соответствует текущей информационной базе назовите "8.0", присвойте ему код "001". Узел будущей базы 8.1 назовите "8.1", присвойте ему код "002", кроме того, для данного узла установите флажок "Только получатель". Такая настройка позволит обеспечить миграцию данных только в одну сторону - из базы 8.0 в базу 8.1. Это может быть полезно, если базу 8.1 планируется использовать для проверки работоспособности вносимых в конфигурацию изменений, которые не попадут в базу 8.0 (при этом, при принятии решения о переводе рабочей информационной базы на версию 8.1 конвертацию придется повторить).
  3. Сбросьте регистрацию всех изменений в базе 8.0 для узла 8.1. Для этого в форме узла соответствующего узла ("8.1") нажмите кнопку "Удалить регистрацию".
  4. Сделайте резервную копию информационной базы версии 8.0. Из полученной копии восстановите базу, которая будет сконвертирована в 8.1.
  5. Выполните конвертацию базы в версию 8.1.
  6. В сконвертированной базе 8.1 внесите изменения в узлы плана обмена – необходимо поменять между собой значения реквизитов узлов плана обмена. То есть для существующего узла "8.0", являющимся главным узлом для данной базы, следует установить код "002", а наименование изменить на "8.1". Аналогично следует поступить и со вторым узлом – старое наименование "8.1" изменить на "8.0", код установить в "001". Для нового узла "8.1" установите флажок "Только получатель".
  7. Если используется типовая конфигурация фирмы "1С", с помощью реализованного во всех конфигурациях механизма "Автообмена" настройте автоматический периодический обмен для данного плана обмена (подробнее см. в документации к конфигурации). В случае произвольной конфигурации, обмен придется выполнять вручную, из формы соответствующего узла плана обмена.
  8. Поддерживайте регулярный обмен данными до момента полного перехода на работу с версией 1С:Предприятие 8.1.

Данный план обмена также предоставляет возможность после начала работы с версией 8.1 вернуться к использованию версии 8.0.
Для того, чтобы предусмотреть такую возможность, перед началом реальной работы с базой 8.1 следует выполнить следующие действия:

  1. Выполнить перенос данных из 8.0 в 8.1. На момент начала эксплуатации базы 8.1 она должна быть идентична 8.0 по данным.
  2. Одновременно в базах 8.0 и 8.1, в узлах плана обмена, соответствующих базе 8.1, снять флажок "Только получатель", и установить его для узлов базы 8.0.
  3. Сбросить в базе 8.1 регистрацию изменений для узла "8.0" (как это сделать было описано выше).

После выполнения данных действий можно начинать реальную работу пользователей с базой 8.1. Поддерживая регулярный обмен данными между базами (уже в "другую сторону" - из 8.1 в 8.0) можно добиться состояния, при котором имеющая база 8.0 будет полностью идентична базе 8.1. Что позволит вернуться к использованию версии 8.0 без потери данных.

Рекомендации по изменениям конфигурации

В новой версии платформы реализовано множество нововведений, которые должны сделать работу пользователей еще более эффективной. Одним из таких нововведений является возможность разделения общих модулей конфигурации на глобальные/неглобальные. Его достаточно просто реализовать, поэтому рекомендуется это сделать в момент перехода на новую версию. Такое изменение позволит значительно сократить время запуска программы пользователем в режиме 1С:Предприятие, а также объем используемой при этом оперативной памяти (подробнее см. в документации). По нашим исследованиям время запуска, модифицированной таким образом, конфигурации "1C:Предприятие 8.0 Управление производственным предприятием" составляет в среднем 6-7 секунд.

Изначально, после конвертации, все общие модули конфигурации являются глобальными, следует сделать их все неглобальными. Для этого необходимо выполнить следующие действия:

  1. Убедитесь, что в конфигурации нет общих модулей, имена которых совпадали бы с именами свойств глобального контекста, или же с именами реквизитов объектов конфигурации. Найденные подобные модули следует переименовать (например, в типовых конфигурациях, следует переименовать такие модули как "Отчеты", "СерийныеНомера", "ОбменДанными", "СертификацияНоменклатуры" и т.п.). В противном случае конфигурация станет неработоспособной. Кроме того, ошибки могут также появиться в случае, если в текстах модулей конфигурации используются имена переменных, совпадающие с именами общих модулей. Имена таких переменных также должны быть изменены.
  2. Существующие внешние обработки, предназначенные для работы с данной конфигурацией, должны быть включены в ее состав (возможно временно).
  3. Выгрузите тексты всех модулей конфигурации на диск (меню "Конфигурация -> Выгрузить файлы конфигурации").
  4. С помощью прилагаемой обработки ЗаменаВызововМетодовОбщихМодулей.epf модифицируйте полученные тексты.
  5. Загрузите измененные тексты модулей обратно в конфигурацию (меню "Конфигурация-> Загрузить файлы конфигурации").
  6. Для каждого общего модуля в его свойствах снимите флажок "Глобальный".
  7. Создайте новый общий модуль, установите для него флажок "Глобальный", перенести в него процедуры из других общих модулей, которые назначаются в модуле приложения (внешнего соединения) как обработчики ожидания (с помощью процедуры ПодключитьОбработчикОжидания()).
  8. Проанализируйте действия выполняемые при запуске конфигурации. Исключите по возможности все действия, которые могут замедлить процедуру запуска. При запуске нужно выполнять только те действия, которые необходимы для текущего пользователя, и только если они нужны сразу и их нельзя выполнить позже.
  9. Исключите все операции, в которых выполняется обращение к большому количеству метаданных. Например, в типовых конфигурациях фирмы "1С" такой операцией является проверка границы рассчитанных итогов регистров, выполняемая в обработчике ПриНачалеРаботыСистемы(). Ее следует удалить из обработчика данного события и перенести, например, в соответствующее регламентное задание.

Другим нововведением является новая функция глобального контекста - ЗначениеЗаполнено() (подробнее по использованию данной функции см. в документации). В типовых конфигурациях фирмы "1С" ею можно заменить реализованную в общем модуле ОбщегоНазначения функцию ЗначениеНеЗаполнено().  Такие изменения также стоит сделать сразу, на этапе конвертации информационной базы на версию 8.1, поскольку они являются достаточно простыми в реализации, и при этом повышают быстродействие конфигурации.  На текущий момент прямая замена всех случаев вызова функции ЗначениеНеЗаполнено() на НЕ ЗначениеЗаполнено() не возможна, поскольку в некоторых случаях функция ЗначениеНеЗаполнено() ошибочно вызывалась с параметром мутабельного типа (вызов ЗначениеЗаполнено() с таким параметром вызовет исключение).
Поэтому следует изменить текст функции ЗначениеНеЗаполнено() следующим образом:

Копировать в буфер обмена
Функция ЗначениеНеЗаполнено(Значение) Экспорт
  Попытка
    Возврат НЕ ЗначениеЗаполнено(Значение);
  Исключение
    // еcли параметр Значение мутабельного типа результатом "старой" функции всегда была бы Ложь
    Возврат Ложь;
  КонецПопытки;
КонецФункции // ЗначениеНеЗаполнено()

Вспомогательная конфигурация

Вспомогательная конфигурация предназначается для использования в процессе перевода информационной базы с 1С:Предприятия 8.0 на 1С:Предприятие 8.1. Она содержит план обмена для организации двустороннего обмена с идентичными базами 8.0 и 8.1.

Файл конфигурации 1Cv8.cf находится в каталоге \1CITS\EXE\80_81

Копировать