Переход с платформы 1С версии 7.7 на современную платформу 8.3 — это всегда сложный архитектурный проект. Ситуация значительно усложняется, если исходная конфигурация «Торговля и склад 7.7» (ТиС) за многие годы эксплуатации была «сильно перепахана» программистами, документооборот превышает 1000 документов в день, а в процессе перехода планируется объединить базы нескольких филиалов в одну информационную базу «Управление торговлей 11» (УТ 11).
В этой статье мы подробно проанализируем, почему стандартные подходы к переносу данных «в лоб» часто терпят неудачу, разберем ключевые архитектурные различия между конфигурациями и выработаем оптимальную пошаговую стратегию миграции.
---
У многих компаний возникает соблазн перенести в новую базу УТ 11 не только остатки, но и документы за текущий или прошлый год (например, за весь 2018 год при переходе с 2019-го). С первого взгляда это кажется логичным: пользователи хотят видеть всю историю продаж и взаиморасчетов в одной программе. Однако давайте проанализируем технические последствия такого решения.
Попытка перенести документы помесячно или поквартально из сильно измененной ТиС 7.7 в УТ 11 сопряжена со следующими критическими проблемами:
Рекомендуемый подход:
Наиболее жизнеспособной является стратегия ввода начальных остатков на фиксированную дату (например, на начало нового отчетного периода или года). При этом старая база ТиС 7.7 переводится в режим «только для чтения» и сохраняется как архив для получения исторических данных и построения старых отчетов. Если руководству компании критически важно видеть обороты прошлых периодов для построения сравнительных отчетов (например, динамики продаж год к году), эти данные лучше перенести не первичными документами, а свернутыми сводными записями напрямую в регистры накопления УТ 11 через документ КорректировкаРегистров.
---
Перед проектированием переноса необходимо четко понимать, какие концептуальные различия в архитектуре справочников нам придется преодолеть.
1. Разделение сущностей «Партнеры» и «Контрагенты» в УТ 11
В ТиС 7.7 существовал только один справочник — «Контрагенты», в котором хранилась и юридическая, и управленческая информация. В УТ 11 эти сущности строго разделены:
Справочник.Партнеры — это управленческие сущности (холдинги, розничные сети, фактические клиенты).Справочник.Контрагенты — это юридические лица (ООО, ИП), с которыми заключаются договоры и выставляются регламентированные документы.При переносе данных по умолчанию программа попытается создать связь «один к одному». Но на практике это приведет к хаосу, если один и тот же ваш клиент покупает товары на разные юридические лица. Необходимо заранее спроектировать сопоставление так, чтобы несколько контрагентов из 7.7 объединялись под одним управленческим партнером в УТ 11.
2. Иерархия справочников
В ТиС 7.7 дерево групп номенклатуры и контрагентов было привычным инструментом навигации. В УТ 11 подход изменился. Контрагенты не имеют классической древовидной структуры папок. Вместо этого для группировки клиентов используются бизнес-регионы, сегменты и связи с головными партнерами. Справочник номенклатуры в УТ 11 ориентирован на использование видов номенклатуры с общими наборами реквизитов и характеристик. Примитивный перенос папок из 7.7 «как есть» может нарушить логику работы новой системы.
---
Запуск переноса данных из неподготовленной базы гарантированно приведет к ошибкам загрузки. Проведем обязательные подготовительные мероприятия в исходной базе 7.7:
---
Поскольку исходная база ТиС сильно доработана, стандартный XML-перенос с помощью типовых правил, поставляемых фирмой 1С, скорее всего, завершится ошибкой. Рассмотрим альтернативные варианты решения задачи.
Это классический и самый надежный способ. Мы берем за основу типовые правила обмена от 1С и дорабатываем их под свои нужды. В КД 2 мы можем гибко сопоставить измененные реквизиты документов и справочников 7.7 с новыми реквизитами в УТ 11, прописать обработчики событий на встроенном языке и настроить алгоритмы фильтрации данных при выгрузке.
Если программисту требуется полный и оперативный контроль над процессом переноса, можно написать обработку на стороне 1С 8.3, которая будет подключаться к базе 7.7 через COM-соединение (V77.Application) и последовательно читать данные напрямую.
Рассмотрим пример программного кода для подключения к базе 7.7 и чтения справочника контрагентов:
// Пример подключения к базе Торговля и Склад 7.7 через COM-соединение
ПутьКБазе = "C:\1C_Bases\Trade77\";
Пользователь = "Администратор";
Пароль = "SuperPassword";
// Создаем COM-объект для связи с платформой 1С 7.7
Попытка
V7 = Новый COMОбъект("V77.Application");
Исключение
Сообщить("Не удалось запустить COM-соединение. Возможно, не зарегистрирована библиотека v7plus.dll.");
Возврат;
КонецПопытки;
// Инициализируем подключение к информационной базе
Открыта = V7.Initialize(V7.RMTrade, "/d""" + ПутьКБазе + """ /n" + Пользователь + " /p" + Пароль, "NO_SPLASH_SHOW");
Если Не Открыта Тогда
Предупреждение("Ошибка авторизации в базе 1С:Предприятие 7.7!");
Возврат;
КонецЕсли;
Сообщить("Соединение успешно установлено. Начинаем чтение данных...");
// Пример выборки контрагентов из базы 7.7
СпрКонтрагенты77 = V7.CreateObject("Справочник.Контрагенты");
Если СпрКонтрагенты77.ВыбратьЭлементы() = 1 Тогда
Пока СпрКонтрагенты77.ПолучитьЭлемент() = 1 Цикл
// Проверяем, что это не группа
Если СпрКонтрагенты77.ЭтоГруппа() = 0 Тогда
ИмяКлиента = СпрКонтрагенты77.Наименование;
ИННКлиента = СпрКонтрагенты77.ИНН;
// Здесь пишем код поиска или создания соответствующего партнера/контрагента в УТ 11
// Например, поиск по ИНН в нашей новой базе 8.3
Сообщить("Прочитан контрагент из 7.7: " + ИмяКлиента + " (ИНН: " + ИННКлиента + ")");
КонецЕсли;
КонецЦикла;
КонецЕсли;
Этот метод хорош тем, что прямо «на лету» в коде 1С 8.3 мы можем реализовывать сложнейшие алгоритмы трансформации данных: сопоставлять единицы измерения, заменять пустые значения дефолтными, разделять одного контрагента на партнера и контрагента, а также настраивать связи документов ввода остатков.
---
Если перед нами стоит задача слияния нескольких баз филиалов (которые велись обособленно в 7.7) в единую базу УТ 11, ключевым камнем преткновения станет нормативно-справочная информация (НСИ). Один и тот же товар или один и тот же поставщик в базах разных филиалов почти наверняка заведены под разными кодами и с разным написанием наименований.
Разберем правила успешной синхронизации при слиянии:
Если запустить слияние без предварительной синхронизации, база УТ 11 мгновенно наполнится дублями, что полностью парализует складской учет, расчет себестоимости и сделает невозможным сквозной анализ продаж.
---
Проанализировав все риски и технические особенности, мы можем составить идеальный пошаговый план перехода:
Такой взвешенный и структурный подход позволит минимизировать риски, сберечь ресурсы команды внедрения и гарантировать успешный запуск современной системы учета без потери ключевых бизнес-показателей предприятия.