Как правильно перейти с измененной конфигурации 1С:Бухгалтерия предприятия 2.0 на 1С:Бухгалтерия предприятия 3.0 с сохранением истории учета

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

Переход с редакции 2.0 на 3.0 конфигурации «1С:Бухгалтерия предприятия» (БП) — это неизбежный шаг для любой организации, стремящейся соответствовать современным требованиям законодательства. Официальная поддержка старой редакции полностью прекращена, поэтому продолжать вести в ней учет невозможно. Однако, если конфигурация на протяжении многих лет дорабатывалась штатными специалистами и сторонними франчайзи, стандартное обновление в один клик превращается в сложнейшую техническую задачу.

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

Оценка целесообразности: Обновление «накатом» или ввод остатков

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

  1. Перенос остатков в чистую базу. Это более простой для программиста путь, при котором старая история остается в архивной базе, а учет в новой БП 3.0 начинается «с чистого листа» на определенную дату (например, на начало года).
  2. Обновление существующей базы (переход «накатом»). Этот метод сложнее, но он необходим, если главный бухгалтер и руководство категорически против работы в двух базах. Он сохраняет всю предысторию операций, что крайне важно для формирования сравнительной отчетности за три года (например, баланса), проведения корректировок прошлых периодов и оперативного контроля данных менеджерами.

Если принято решение идти по пути сохранения истории, проанализируем последовательность действий для успешного обновления измененной конфигурации.

Шаг 1. Анализ и аудит существующих доработок в БП 2.0

Прежде чем приступать к техническим операциям в конфигураторе, проведем ревизию всех нетиповых объектов. Нам необходимо сравнить текущую рабочую конфигурацию с типовым шаблоном БП 2.0 аналогичного релиза. Все изменения разделим на четыре категории:

Шаг 2. Подготовка информационной базы БП 2.0 к переходу

Любые ошибки в исходных данных гарантированно приведут к сбоям при реструктуризации таблиц во время обновления. Проведем обязательную техническую и логическую подготовку базы:

  1. Выполним тестирование и исправление информационной базы (ТИС) через Конфигуратор с включенными опциями проверки логической и ссылочной целостности.
  2. Проанализируем базу на наличие «битых» ссылок (объектов с пометкой <Объект не найден>) и очистим их либо восстановим корректные связи.
  3. Убедимся, что в базе отсутствуют отрицательные остатки по ключевым счетам учета (10, 41, 60, 62). БП 3.0 гораздо строже контролирует партионный учет и проведение документов.
  4. Проверим заполнение обязательных реквизитов. Например, в БП 2.0 поле ТипСклада в справочнике Склады могло быть пустым. В БП 3.0 это недопустимо. Напишем простую обработку для заполнения пустых значений:

ВыборкаСкладов = Справочники.Склады.Выбрать();
Пока ВыборкаСкладов.Следующий() Цикл
    Если Не ЗначениеЗаполнено(ВыборкаСкладов.ТипСклада) Тогда
        ОбъектСклад = ВыборкаСкладов.ПолучитьОбъект();
        ОбъектСклад.ТипСклада = Перечисления.ТипыСкладов.ОптовыйСклад;
        ОбъектСклад.Записать();
    КонецЕсли;
КонецЦикла;

Шаг 3. Временный отказ от измененных форм

Поскольку БП 2.0 функционирует на обычных формах, а БП 3.0 построена исключительно на управляемых формах (интерфейс «Такси»), автоматического преобразования интерфейса не произойдет. Измененные обычные формы документов и справочников при обновлении могут вызывать критические ошибки реструктуризации.

Важное правило: перед обновлением верните все доработанные формы в БП 2.0 к их типовому виду. Все кастомные реквизиты, добавленные в объекты метаданных, при этом должны быть сохранены. Сами же формы интерфейса мы будем отрисовывать на управляемом приложении заново, уже непосредственно в обновленной БП 3.0.

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

Шаг 4. Назначение административных ролей

Для корректного выполнения миграционных скриптов пользователю, под которым будет выполняться первый запуск БП 3.0 в режиме «Предприятие», необходимо назначить специальную роль. В конфигурации БП 2.0 перед началом обновления обязательно добавьте пользователю-администратору роль Администратор системы (для перехода на ред. 3.0).

Шаг 5. Пошаговый технический апгрейд конфигурации

Переход осуществляется через специальный дистрибутив обновления (переходный релиз), предоставляемый фирмой 1С. Выясним правильную последовательность действий:

  1. Обновим измененную конфигурацию БП 2.0 до максимально доступного и актуального релиза в рамках ветки 2.0. При этом тщательно переносим все наши нетиповые реквизиты и объекты метаданных с помощью сравнения и объединения конфигураций.
  2. Возьмем переходный дистрибутив БП 3.0, предназначенный именно для нашей финальной версии БП 2.0.
  3. В конфигураторе выполним команду «Поддержка» — «Обновить конфигурацию», указав файл обновления (формата .cfu или .cf) переходного релиза БП 3.0.
  4. На этапе сравнения объектов снимем галочки со всех измененных нами форм интерфейса (чтобы вернуть их к типовым управляемым формам новой редакции), но сохраним галочки на уникальных реквизитах, табличных частях и объектах.
  5. Применим изменения (клавиша F7) и запустим процесс реструктуризации базы данных. Будьте готовы к тому, что на больших базах данных этот процесс на стороне СУБД может занять от нескольких часов до суток.
  6. После успешного сохранения конфигурации запустим базу в режиме «1С:Предприятие» под пользователем с административными правами. Запустится длительный процесс выполнения обработчиков обновления данных.

Шаг 6. Разработка управляемых форм и адаптация кода под БСП

После того как технический переход на БП 3.0 завершен и все исторические документы сохранены, нам необходимо вернуть пользователям их доработанный функционал. Теперь вся разработка ведется по правилам управляемого приложения:

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


&НаКлиенте
Процедура ОбработкаКомандыВыполнить(Команда)
    // Клиентская логика подготовки интерфейса
    ПараметрыВыполнения = Новый Структура;
    ПараметрыВыполнения.Вставить("ИмяОбъекта", "ДокументСсылка");
    
    ВыполнитьОперациюНаСервере(ПараметрыВыполнения);
КонецПроцедуры

&НаСервере БезКонтекста
Процедура ВыполнитьОперациюНаСервере(ПараметрыВыполнения)
    // Тяжелые серверные вычисления и транзакционные операции
    // Работа с базой данных ведется исключительно здесь
КонецПроцедуры

Шаг 7. Вынос кастомизации в Расширения конфигурации

Чтобы в дальнейшем не тратить колоссальные усилия на обновление БП 3.0, применим современную технологию платформы — Расширения конфигурации.

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

Шаг 8. Пост-миграционный контроль и исправление типовых сбоев

После завершения перехода обязательно проконтролируем правильность работы системы:

Рассмотренная нами методика требует аккуратности, хороших навыков программирования и детального тестирования на копии базы данных. Однако именно этот путь позволяет получить современную, автоматически обновляемую систему БП 3.0 с полным сохранением всей многолетней истории учета и специфических бизнес-алгоритмов вашей компании.

← На главную