→ Типовые правила переноса данных 1с. Пример правила конвертации объектов. Загрузка справочника из XML

Типовые правила переноса данных 1с. Пример правила конвертации объектов. Загрузка справочника из XML

Теперь пользователям "1С:Бухгалтерии 7.7" не обязательно дожидаться конца года, чтобы перейти на "1С:Бухгалтерию 8". Переход можно осуществить в конце любого месяца налогового периода. Технология переноса остатков уже опробована на действующих предприятиях, об одном из которых рассказывают специалисты ООО "Автоматизированные бухгалтерские системы". Статья содержит описание методики переноса и общие рекомендации по входному и выходному контролю переносимых данных.

До перехода в ООО "Лайма" (г. Миасс, Челябинская обл.) использовалась программа "1С:Бухгалтерия 7.7. Стандартная версия". Программа установлена на ноутбуке. Работа ведется в домашнем офисе.

Выпуск фирмой "1С" новой методики переноса данных и небольшой объем информационной базы позволили осуществить перенос данных за 2006 год непосредственно в момент установки "1С:Бухгалтерии 8".

Методика переноса данных

Включенная в состав релиза 1.5.8.5 новая методика перехода с "1С:Бухгалтерии 7.7" на "1С:Бухгалтерию 8" предусматривает перенос данных из информационной базы "1С:Бухгалтерии 7.7", которые обеспечивали бы корректное выполнение в "1С:Бухгалтерии 8" следующих действий:

  • проведение документов, выписанных после перехода на "1С:Бухгалтерию 8";
  • формирование регистров бухгалтерского учета за текущий отчетный период (оборотно-сальдовой ведомости, главной книги и т. п.);
  • формирование регистров налогового учета за текущий отчетный период, содержащих показатели, определяемые нарастающим итогом с начала года;
  • формирование регламентированной отчетности за текущий отчетный период.

Переход с "1С:Бухгалтерии 7.7" на "1С:Бухгалтерию 8" по этой методике рекомендуется выполнять в начале нового налогового периода (года) или, если новый период уже открыт, то по завершении очередного месяца текущего отчетного периода. В процессе переноса данных в "1С:Бухгалтерию 8" загружаются следующие сведения:

  • остатки по счетам бухгалтерского и налогового учета на начало текущего отчетного периода (на 1 января текущего года);
  • обороты по счетам бухгалтерского и налогового учета за текущий отчетный период сводными проводками помесячно;
  • временные разницы, отраженные на соответствующих счетах налогового учета (для организаций, применяющих ПБУ 18/02);
  • документы ввода начальных остатков по основным средствам и нематериальным активам;
  • налоговые базы по НДФЛ и налогам с ФОТ за текущий отчетный период;
  • задолженность по оплате полученных и выданных счетов-фактур на конец последнего закрытого месяца текущего отчетного периода;
  • сведения об объектах аналитического учета.

Подготовительные операции в "1С:Бухгалтерии 7.7"

Перенос данных из "1С:Бухгалтерии 7.7" возможен, начиная с релиза 7.70.477. Поэтому перед переносом было необходимо обновить конфигурацию до этого релиза.

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

Все файлы, необходимые для переноса данных, содержатся в папке Convert в каталоге шаблона релиза 1.5.8.5 "1С:Бухгалтерии 8". Содержимое этой папки лучше скопировать в каталог ExtForms информационной базы "1С:Бухгалтерии 7.7".

Методикой переноса предусмотрена единственная подготовительная операция - проверка кодов справочников, которые могут стать неуникальными при переносе данных в "1С:Бухгалтерию 8". Для проверки используется внешняя обработка ChkCode.ert.

Однако, для того, чтобы удостовериться в корректности ведения бухгалтерского и налогового учета в базе "1С:Бухгалтерии 7.7" и не переносить в "восьмерку" заведомо ошибочные проводки, полезно выполнить технологический анализ бухгалтерского учета (Меню "Отчеты -> Технологический анализ бухгалтерского учета"), а также анализ состояния налогового учета ("Налоговый учет -> Анализ состояния налогового учета").

Как правило, проблемы вызывают "ручные" проводки, которые делаются без контроля входящего сальдо, количественного учета и т.п. Новая методика даже такие проводки переносятся корректно, однако входной контроль позволяет сразу определить проблемы и выдать рекомендации по их исправлению.

В нашем случае контроль выявил расхождения в учете в части списания амортизации ОС на убытки прошлых периодов, которые решено было исправить уже в "1С:Бухгалтерии 8" после перехода.

Перенос данных

Сам перенос данных производится с помощью внешней обработки V77Exp.ert (меню "Файл -> Открыть"). В диалоге обработки указывается:

  • файл правил конвертации данных - Acc77_80.xml (поле "Имя файла правил");
  • файл, в который будут выгружены данные (поле "Имя файла данных");
  • дата начала текущего отчетного периода - 1 января 2006 года (поле "Дата начала");
  • дата конца последнего закрытого месяца в текущем периоде (поле "Дата окончания"). В нашем случае - 31 мая 2006 года.

После нажатия кнопки "Загрузить правила обмена" в диалоге обработки заполнится список правил выгрузки данных. Загруженный список представляет собой перечень счетов, итоги по которым могут быть выгружены, и справочников, которые могут быть перенесены в конфигурацию "Бухгалтерия предприятия". В таблице справа можно задать для большинства правил выгрузки данных отборы по значениям реквизитов (например, для выборочной выгрузки номенклатуры).

Поскольку мы переносим данные из "семерки", при первом запуске "1С:Бухгалтерии 8" необходимо отказаться от начального заполнения базы данных. После этого с помощью обработки загрузки данных (меню "Сервис -> Обмен данными -> Универсальный обмен данными в формате XML") загружаем файл переноса в восьмерку.

Проверка

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

В нашем случае в "1С:Бухгалтерии 7.7" данные по ОС были внесены не полностью, и в "восьмерке" документы "Ввод начальных остатков по ОС" просто не провелись, соответственно и сальдо на начало периода по счету 01 не возникло. Эти документы были исправлены вручную.

Подсистема учета НДС реализована в "1С:Бухгалтерии 8" на регистрах, для проверки правильности переноса следует использовать универсальный отчет "Остатки и обороты"(Отчеты -> Остатки и обороты) без ограничения периода по разделам учета "НДС предъявленный", "НДС с авансов" для анализа правильности переноса счетов ЗПК и ЗПР.

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

Перенос данных - это одна из самых ответственных частей работы по переходу с однй конфигурации на другую.

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

Этапы переноса

Перенос данных состоит из 5 этапов. Мы постарались описать их максимально подробно и понятно.

Почему наш перенос данных лучше?

Стоимость типового переноса данных

Обслуживание новой программы

После переноса всех данных Вам может понадобиться обслуживание Вашей программы. Мы готовы Вам его предоставить!

Переход на 1С 8.2

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

Почему мы лучше?

Заказать перенос

Наша команда

Почему наш перенос 1С лучше?

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

  • Индивидуальный подход
  • Прежде чем приступить непосредственно к переносу 1С 7.7 в 1С 8.2, наши специалисты проведут углубленный анализ Вашей базы. Велика вероятность, что в новой версии 1С уже есть все те доработки, которые Вам были нужны. В любом случае, мы порекомендуем, что еще Вам может понадобиться для комфортной работы.

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

  • Работа на результат
  • Работа считается выполненной только после того, как Вы убедитесь, что перенос справочников 1С 8 и других данных произведен правильно, и Вы довольны результатом. Мы не бросаем своих клиентов!

    Этап 1. Общий анализ исходной базы

    Какая работа производится:

  • получение типовой конфигурации версии аналогичной базе-источнику;
  • общий анализ изменений в структуре данных (сопоставление с типовой конфигурацией);
  • общий анализ изменений в формах и модулях конфигурации (сопоставление с типовой конфигурацией);
  • контроль наличия нетиповых счетов учета для бухгалтерских конфигураций;
  • общий контроль корректности ведения учета в базе-источнике (наличие «красных» сальдо, незакрытых периодов, невосстановленных последовательностей и т.д.);
  • обновление базы-источника до версии, требуемой типовыми правилами переноса;
  • пробный перенос данных;
  • подготовка возможных рекомендаций по подготовке базы-источника к переносу справочников 1С 8 и других данных.
  • Зачем:

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

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

    Цена: 2 000 руб

    Этап 2. Подготовка технической документации для нетипового переноса

    Какая работа производится:

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

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

    Цена: Уточняется по итогам общего анализа базы-источника.

    Этап 3. Доработка конфигурации-приемника

    Какая работа производится:

  • производится доработка типовой конфигурации базы-приемника на основании технического задания, либо в соответствии с указаниями Заказчика (при почасовой работе);
  • осуществляется предварительное тестирование доработок;
  • документируются доработки в виде отчета об изменениях типовой конфигурации (для возможности дальнейшего обновления сервис-инженером);
  • проводится демонстрация доработок пользователю (сдача-приемка работ);
  • разрабатывается инструкция пользователя по доработкам (при необходимости).
  • Зачем:

  • Вы получаете последнюю версию конфигурации с требуемыми Вам изменениями;
  • Вы получаете документацию по доработкам, необходимую для дальнейшего
    обновления сервис-инженером.
  • Этап 4. Доработка правил переноса

    Какая работа производится:

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

    Обеспечивается корректный перенос данных, которые не переносятся типовыми правилами обмена;

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

    Цена: формируется на основе комплекта технической документации.

    Этап 5. Перенос данных

    Какая работа производится:

  • перенос справочной информации (всей, либо по ссылкам), перенос остатков на заданную дату;
  • контроль корректности переноса - сопоставление данных базы-источника и базы-приемника;
  • подготовка возможных рекомендаций по корректировке остатков в базе-приемнике с учетом особенностей ведения учета в разных конфигурациях (при необходимости).
  • Зачем:

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

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

    Задача этого правила обмена перенести остатки по взаиморасчетам из БП 2 в УТ11.

    Поэтапное создание правила обмена с помощью конфигурации "Конвертация данных"(метаданные должны быть загружены):

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

    2) Переходим к написанию самого кода т.к. в УТ нет хозрасчетного регистра то мы должны его преобразовать. Сначала нам нужен запрос который по нашим параметрам будет возвращать остатки по взаиморасчетам. В обработчике события "Перед обработкой" пишем следующий запрос:

    ТекстЗапроса = " ВЫБРАТЬ
    | ХозрасчетныйОстатки.Счет,
    | ХозрасчетныйОстатки.Субконто1 КАК Субконто1,
    | ЕСТЬNULL(СУММА(ХозрасчетныйОстатки.СуммаОстатокДт),0) КАК СуммаОстатокДт,
    | ЕСТЬNULL(СУММА(ХозрасчетныйОстатки.СуммаОстатокКт),0) КАК СуммаОстатокКт,
    | МАКСИМУМ(ХозрасчетныйОстатки.Субконто2.Дата) КАК ДатаРасчетногоДокумента,
    | МАКСИМУМ(ХозрасчетныйОстатки.Субконто2.Номер) КАК НомерРасчетногоДокумента
    |ИЗ
    | РегистрБухгалтерии.Хозрасчетный.Остатки(&НаДату, Счет = &счет,) КАК ХозрасчетныйОстатки
    |ГДЕ
    <> &группа и
    | ХозрасчетныйОстатки.Субконто1.Родитель <> &группа1
    |СГРУППИРОВАТЬ ПО
    | ХозрасчетныйОстатки.Счет,
    | ХозрасчетныйОстатки.Субконто1,
    | ХозрасчетныйОстатки.Субконто2
    |УПОРЯДОЧИТЬ ПО
    | Субконто1
    |АВТОУПОРЯДОЧИВАНИЕ";

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

    Определяем значения переменных которые будут использоваться в дальнейшем.

    НаДату = дата("20130101");
    ТД = ТекущаяДата();
    группа = Справочники.Контрагенты.НайтиПоНаименованию("Покупатели");
    группа1 = Справочники.Контрагенты.НайтиПоНаименованию("Возвраты от ФИЗЛИЦ");

    Создаем таблицу которую в последствии будем передавать в правило конвертации значений.

    ТЗ = Новый ТаблицаЗначений();
    ТЗ.Колонки.Добавить("Контрагент");
    ТЗ.Колонки.Добавить("Сумма");
    ТЗ.Колонки.Добавить("СуммаРЕГЛ");
    ТЗ.Колонки.Добавить("РасчетныйДокумент");
    ТЗ.Колонки.Добавить("ДатаРасчетногоДокумента");
    ТЗ.Колонки.Добавить("НомерРасчетногоДокумента");
    ТЗ.Колонки.Добавить("Партнер");
    ТЗ.Колонки.Добавить("ВалютаВзаиморасчетов");
    ТЗ.Колонки.Добавить("ДатаПлатежа");

    Устанавливаем параметры, вызываем запрос, заполняем таблицу вызываем правило конвертации.

    запрос = новый запрос(ТекстЗапроса);
    запрос.УстановитьПараметр("группа",группа);запрос.УстановитьПараметр("группа1",группа1);
    запрос.УстановитьПараметр("НаДату",НаДату);
    запрос.УстановитьПараметр("Счет",ПланыСчетов.Хозрасчетный.РасчетыСПрочимиПоставщикамиИПодрядчиками);//76.05
    Выборка = запрос.Выполнить().Выбрать();
    ТЗ.очистить();
    Пока Выборка.Следующий() Цикл
    если Выборка.СуммаОстатокКТ = 0 или Выборка.СуммаОстатокКТ = "" тогда
    продолжить;
    конецесли;
    если Выборка.СуммаОстатокКТ < 0тогда
    сообщить(""+Выборка.Субконто1+" отрицательное значение "+Выборка.СуммаОстатокКТ);
    конецесли;
    СтрокаТЗ = ТЗ.Добавить();
    СтрокаТЗ.Контрагент = Выборка.Субконто1;
    СтрокаТЗ.сумма = Выборка.СуммаОстатокКТ;//Выборка.СуммаОстатокКт;
    СтрокаТЗ.суммаРегл = Выборка.СуммаОстатокКТ;//Выборка.СуммаОстатокКт;
    СтрокаТЗ.ДатаРасчетногоДокумента =Выборка.ДатаРасчетногоДокумента;
    СтрокаТЗ.НомерРасчетногоДокумента = Выборка.НомерРасчетногоДокумента;
    СтрокаТЗ.ДатаПлатежа = ТД;
    КонецЦикла;
    ИсходящиеДанные = Новый Структура;
    ИсходящиеДанные.Вставить("Дата", ТекущаяДата());
    ИсходящиеДанные.Вставить("РасчетыСПартнерами", ТЗ);
    ИсходящиеДанные.Вставить("ТипОперации", "ОстаткиЗадолженностиПередПоставщиками");
    ИсходящиеДанные.Вставить("Комментарий", "Сформировано по кредиту счета 76.05");
    сообщить("76.05 КРЕДИТ начало");
    ВыгрузитьПоПравилу(, ИсходящиеДанные, "ВводОстатковПоВзаиморасчетам_7605Кредит");

    Аналогично проделываем ту же операцию и для остальных необходимых счетов(их описание как и готовое правило имеется во вложении).

    3) Переходим к созданию правил конвертации объектов, для этого открываем закладку "Правила конвертации объектов". Добавим туда новое правило с именем "ВводОстатковПоВзаиморасчетам_7605Кредит" , объект источник оставим пустым, объект приемник установим документ "Ввод остатков", на вкладке настройки уберем флаг "Искать объект приемника по внутреннему идентификатору объекта источника".

    В обработчике события "Перед загрузкой" напишем следующий код:

    ГенерироватьНовыйНомерИлиКодЕслиНеУказан = истина;

    В обработчике события "После загрузки" напишем:

    выполнить(алгоритмы.ПослеЗагрузкиВводаОстатков);

    он выполнит алгоритм со следующим содержанием:

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

    объект2.Партнер = парт;
    объект2.Записать();
    иначе
    выполнить(алгоритмы.ДобавитьПартнера);
    конецесли;

    конецесли;

    конеццикла;

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

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

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

    Для того чтобы выполнить алгоритм на стороне приемника, надо в правом верхнем углу окна алгоритма(при его редактировании) проставить флаг "Используется при загрузке".

    Ниже приведен код алгоритма "Добавить партнера":

    нПартнер = Справочники.Партнеры.СоздатьЭлемент();
    нПартнер.Наименование =стр.контрагент.наименование;
    нПартнер.Комментарий = "Создан при загрузке из БП";
    нПартнер.НаименованиеПолное =стр.контрагент.НаименованиеПолное;
    нПартнер.Поставщик = ?(найти(стр.контрагент.ДополнительнаяИнформация,"Поставщик")>0,истина,ложь);
    нПартнер.Клиент = ?(найти(стр.контрагент.ДополнительнаяИнформация,"Клиент")>0,истина,ложь);
    ПрочиеОтношения = ?(найти(стр.контрагент.ДополнительнаяИнформация,"Прочее")>0,истина,ложь);
    нпартнер.Записать();
    стр.партнер = нпартнер.ссылка;
    контрагент = Справочники.Контрагенты.НайтиПоНаименованию(стр.контрагент.Наименование);
    объект2 = контрагент.ПолучитьОбъект();
    объект2.Партнер = нпартнер.ссылка;
    объект2.Записать();

    Возвращаемся обратно к правилу конвертации объекта. Теперь нам надо установить соответствия полей источника и приемника, это можно было сделать непосредственно перед написанием кода. Для того чтобы сопоставить поля в нижней табличной части имеется кнопка вызова мастера "Синхронизация свойств". В этом мастере мы можем либо сопоставить поля, либо оставить как без источника, так и без приемника. В нашем случае все поля и ТЧ мы оставляем без источника.

    После того как необходимы поля были выбраны в нижней ТЧ для каждого поля выставляем флаг в колонке "Получить из входящих данных". Этот флаг говорит о том, что система будет искать это поле во входящих данных. Важно чтобы имя поля совпадало с именем во входящих данных, иначе будет выведено сообщение о том, что поле не найдено.

    Текстом описаны не все нюансы процесса.

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

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

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

    Скачать данную обработку можно на диске ИТС, либо по ссылкам:

    Она является универсальной и подойдёт для любой конфигурации.

    Рассмотрим пример выгрузки справочника «Номенклатура» из одной информационной базы 1С 8.3 Бухгалтерия 3.0 в другую. Обязательным условием будет отбор по родителю (группе) «Деревообработка».

    Выгрузка данных из 1С в XML

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

    Откройте обработку выгрузки и загрузки данных XML (Ctrl+O).

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

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

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

    Колонка «Выгружать при необходимости» означает, необходимо ли перегружать данный объект, если на него ссылается реквизит перегружаемого нами справочника. Например, позиция перегружаемой вами номенклатуры имеет такую единицу измерения, которой нет в базе – приемнике. Если напротив справочника с единицами измерения будет установлен флаг в колонке «Выгружать при необходимости», создастся новая позиция. В противном случае в качестве значения реквизита будет надпись «<Объект не найден>» и его уникальный идентификатор.

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

    В данном примере нужно отобрать только ту номенклатуру, которая находится в папке «Деревообработка».

    Аналогичная обработка для 8.2 позволяет в удобной форме устанавливать отборы для каждого объекта конфигурации. В 8.3, к сожалению, такого функционала нет. Одним из вариантов выхода в данной ситуации будет отбор необходимых позиций на вкладке «Дополнительные объекты для выгрузки».

    Добавить объекты здесь можно как вручную (кнопка «Добавить»), так и запросом («Добавить запросом…»). При большом их количестве предпочтительнее второй вариант.

    В данном случае запрос будет следующим. Заполните параметры, выполните запрос, проверив данные, и нажмите на кнопку «Выбрать результат».

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

    В данном примере необходимо было выгрузить только 3 позиции, но выгрузилось пять. Всё потому, что напротив справочника «Номенклатура» в колонке «Выгружать при необходимости» был установлен флаг. Вместе с нужными позициями перегрузились их родители.

    Загрузка справочника из XML

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

    Откройте обработку в базе – приемнике. Данная обработка используется как для выгрузки, так и для загрузки данных. Перейдите на вкладку «Загрузить» и укажите путь к XML файлу, в который ранее были выгружены данные. После этого нажмите на кнопку «Загрузить данные».

    Результат загрузки отобразится в сообщениях. В нашем случае всё прошло успешно.

    Справочник «Номенклатура» в базе – приемнике не был заполнен. Теперь в нем пять элементов: три номенклатурных позиции и две группы.

     

     

    Это интересно: