Как выгрузить данные из 1С:Управление торговлей 11 в 1С:Бухгалтерию 3.0 за определенный период?

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

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

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

---

Шаг 1. Разбираемся с префиксами информационных баз

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

Префикс информационной базы — это уникальный буквенный или цифровой код (обычно состоящий из двух символов), который автоматически добавляется к номерам всех создаваемых документов и кодам справочников. Например, если для базы УТ установлен префикс УТ, то созданный документ «Реализация товаров и услуг» получит номер вида УТ00-000001 вместо обычного 00000001.

Это критически важно для предотвращения конфликтов при обмене данными:

  1. Исключение дублирования номеров: Если в обеих базах будут созданы разные документы с одинаковым номером 000001, при синхронизации один документ сотрет или перезапишет другой.
  2. Идентификация источника данных: По префиксу всегда можно легко определить, в какой именно базе был изначально создан документ.

Давайте настроим префиксы в обеих информационных базах перед началом интеграции.

В программе «1С:Управление торговлей 11» выполним следующие действия:

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

В программе «1С:Бухгалтерия предприятия 3.0» выполним аналогичные шаги:

  1. Перейдем в раздел Администрирование -> Синхронизация данных.
  2. В поле Префикс этой информационной базы укажем значение БП.

---

Шаг 2. Выбор способа и настройка подключения

Теперь перейдем к созданию новой настройки обмена в базе «1С:Управление торговлей». В разделе НСИ и администрирование -> Синхронизация данных нажмем на ссылку Настройки синхронизации данных и выберем команду Новая синхронизация данных, указав в качестве программы-приемника Бухгалтерия предприятия, редакция 3.0.

Проанализируем доступные варианты подключения:

  1. Прямое подключение (на одном компьютере или по локальной сети): Наиболее удобный вариант, если обе базы физически доступны на вашем ПК или в общей сетевой папке. Программа напрямую обращается к файлу базы данных БП (или серверу базы данных), осуществляет сопоставление и переносит информацию без промежуточных файлов.
  2. Обмен через локальный или сетевой каталог: Этот вариант незаменим, если базы находятся на разных компьютерах, не связанных локальной сетью. В этом случае УТ выгружает данные в специальный файл (формата XML/ZIP) в указанную папку, а затем вы вручную запускаете загрузку этого файла в Бухгалтерии.

Выберите наиболее подходящий для вашей инфраструктуры способ и следуйте указаниям помощника настройки, заполнив пути к базам и параметры авторизации (имя пользователя и пароль с правами администратора).

---

Шаг 3. Как ограничить период выгрузки данных?

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

Если запустить синхронизацию сразу, система попытается перегрузить все документы с апреля 2019 года по сегодняшний день. Чтобы ограничить выгрузку строго рамками периода (с 01.04.2019 по 31.05.2019), воспользуемся механизмом управления регистрацией изменений.

Рассмотрим по шагам, как очистить лишнюю регистрацию документов:

  1. Завершим базовую настройку синхронизации в УТ 11, но не будем запускать сам процесс обмена на финальном шаге.
  2. В окне списка настроек синхронизации выделим созданную настройку и найдем кнопку Состав отправляемых данных (кнопка в виде синей круглой стрелки или через меню «Еще» -> «Состав отправляемых данных»).
  3. Перед нами откроется форма регистрации изменений. Здесь наглядно показано, какие именно справочники и документы программа подготовила к отправке.
  4. В левой части окна выберем разделы документов (например, Реализация товаров и услуг, Поступление товаров и услуг, Счет-фактура выданный).
  5. В правой части окна отразится список конкретных документов. Нам необходимо выделить все документы, дата которых позже 31.05.2019, нажать правую кнопку мыши и выбрать команду Отменить регистрацию (или удалить их из списка регистрации кнопкой со значком «Красный крест»).

После этой процедуры к отправке останутся подготовленными только те объекты, которые фактически были созданы или изменены в требуемом диапазоне (апрель – май 2019 года).

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


// Пример программной очистки регистрации документов вне периода
ОграничениеПериодаНачало = Дата("20190401000000");
ОграничениеПериодаКонец  = Дата("20190531235959");

ВыборкаУзлов = ПланыОбмена.ОбменУправлениеТорговлейБухгалтерияПредприятия30.Выбрать();
Пока ВыборкаУзлов.Следующий() Цикл
    Если ВыборкаУзлов.Ссылка = ПланыОбмена.ОбменУправлениеТорговлейБухгалтерияПредприятия30.ПустаяСсылка() Тогда
        Продолжить;
    КонецЕсли;
    
    // Получаем зарегистрированные изменения по документам
    ВыборкаРегистрации = ПланыОбмена.ВыбратьИзменения(ВыборкаУзлов.Ссылка, 1);
    Пока ВыборкаРегистрации.Следующий() Цикл
        ОбъектМетаданных = ВыборкаРегистрации.Данные;
        
        // Проверяем, является ли объект документом и проверяем его дату
        Если Метаданные.Документы.Содержит(ОбъектМетаданных.Метаданные()) Тогда
            Если ОбъектМетаданных.Дата < ОграничениеПериодаНачало Или ОбъектМетаданных.Дата > ОграничениеПериодаКонец Тогда
                // Удаляем регистрацию изменения для конкретного узла плана обмена
                ПланыОбмена.УдалитьРегистрациюИзменений(ВыборкаУзлов.Ссылка, ОбъектМетаданных);
            КонецЕсли;
        КонецЕсли;
    КонецЦикла;
КонецЦикла;

---

Шаг 4. Установка даты запрета загрузки в Бухгалтерии

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

Сделаем это следующим образом:

  1. В Бухгалтерии перейдем в меню Администрирование -> Настройки пользователей и прав.
  2. Развернем подраздел Даты запрета изменения и установим соответствующий флаг.
  3. Перейдем по ссылке Настроить и добавим дату запрета загрузки данных. Для нашей задачи оптимально установить дату запрета 01.06.2019 (документы после этой даты загружаться не будут). Таким образом, даже если в файле обмена случайно окажутся документы июня или июля 2019 года, Бухгалтерия их проигнорирует и заблокирует их загрузку.

---

Шаг 5. Процесс сопоставления данных

При первом сеансе синхронизации программа в обязательном порядке предложит выполнить важную процедуру — Сопоставление данных. Это ключевой этап интеграции, пренебрежение которым приведет к дублированию информации в справочниках.

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

Рекомендуется использовать следующие правила ручной настройки сопоставления:

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

---

Альтернативный метод: Использование универсальной обработки выгрузки XML

Если настройка полноценной постоянной синхронизации кажется вам избыточной для разового переноса документов за два месяца, целесообразно воспользоваться классической встроенной обработкой «Универсальный обмен данными в формате XML».

Этот способ требует наличия файла правил конвертации (обычно файл с расширением .xml, разработанный специально для релиза ваших конфигураций УТ 11 и БП 3.0 в программе «1С:Конвертация данных», либо поставляемый в комплекте обновлений программ).

Посмотрим на алгоритм работы с обработкой:

  1. В базе-источнике (Управление торговлей) откроем обработку УниверсальныйОбменДаннымиXML (ее можно открыть через меню Функции для технического специалиста или через раздел администрирования дополнительных обработок).
  2. На вкладке Выгрузка данных укажем путь к файлу правил конвертации.
  3. Зададим имя файла данных на диске, куда будет выгружена информация.
  4. Укажем точный период выгрузки: с 01.04.2019 00:00:00 по 31.05.2019 23:59:59.
  5. В дереве объектов отметим галочками только те виды документов, которые нам необходимы (заявки, реализации, поступления, счета-фактуры).
  6. Нажмем кнопку Выгрузить данные.
  7. В базе-приемнике (Бухгалтерия) откроем аналогичную обработку, перейдем на вкладку Загрузка данных, укажем созданный файл и нажмем кнопку Загрузить данные.

Этот подход гарантирует перенос только строго заданных документов за выбранный период без необходимости глубокой настройки планов обмена и борьбы с регистрацией изменений.

← На главную