Как перенести описания товаров между двумя одинаковыми базами данных 1С?

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

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

Подготовка к переносу данных

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

Способ 1: Использование стандартной обработки XML

Поскольку конфигурации баз одинаковы, самым эффективным и безопасным способом является использование универсальной обработки Выгрузка и загрузка данных XML. Это штатный инструмент, который позволяет переносить объекты справочников целиком, сохраняя все их свойства, включая поле «Описание».

  1. Найдите файл ВыгрузкаЗагрузкаДанныхXML.epf (обычно он доступен на портале ИТС или в каталоге шаблонов конфигураций).
  2. Откройте обработку в базе-источнике, выберите справочник Номенклатура и настройте отбор, чтобы выгрузить только нужные товары.
  3. Выгрузите данные в XML-файл.
  4. Откройте эту же обработку во второй базе и выберите режим «Загрузка», указав созданный файл.

Этот способ предпочтителен, так как он минимизирует вероятность ошибок при сопоставлении данных, поскольку структура объектов в базе-приемнике полностью соответствует структуре источника.

Способ 2: Программная выгрузка через объект «Текст»

Если вы хотите перенести данные «напрямую» и имеете базовые навыки программирования, можно воспользоваться встроенным объектом Текст. Этот метод позволяет создать файл-посредник, содержащий только код товара и его описание.

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


ТекстовыйДокумент = Новый ТекстовыйДокумент;
Выборка = Справочники.Номенклатура.Выбрать();
Пока Выборка.Следующий() Цикл
    Если ЗначениеЗаполнено(Выборка.Описание) Тогда
        СтрокаДанных = Выборка.Код + "|" + Выборка.Описание;
        ТекстовыйДокумент.ДобавитьСтроку(СтрокаДанных);
    КонецЕсли;
КонецЦикла;
ТекстовыйДокумент.Записать("C:\Description.txt");

После этого, во второй базе, мы считываем данный файл, находим товар по коду и обновляем его описание. Использование объекта Текст — это отличная практика для понимания того, как 1С работает с внешними файлами.

Способ 3: Работа через табличные документы (Excel/CSV)

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

  1. Создайте отчет в базе-источнике, который выведет в табличный документ колонки: Код и Описание.
  2. Сохраните полученный отчет в формате Excel.
  3. В базе-приемнике используйте стандартную обработку Загрузка данных из табличного документа.
  4. Настройте правила загрузки: поиск номенклатуры осуществлять по полю Код, а реквизит Описание заполнять из соответствующей колонки файла.

Независимо от выбранного способа, мы рекомендуем сначала протестировать процесс на 2-3 позициях номенклатуры. Это позволит убедиться, что описания переносятся корректно, форматирование сохраняется, и поиск по коду работает без ошибок. После успешного теста можно запускать массовую обработку всех товаров.

Заключение

Для «зеленого» специалиста в 1С наиболее предпочтительным будет использование стандартных обработок XML или загрузка из Excel. Эти методы не требуют написания сложного кода и позволяют наглядно отслеживать результат работы. Главное — всегда помните про резервное копирование данных, так как оно является залогом спокойной работы любого разработчика или администратора 1С.

← На главную