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

И показываем, как с ее помощью СИЛЬНО упростить решение своих задач

Сегодня мы разберем, как буквально за 10-15 минут настроить и сделать простой перенос справочников и начальных остатков.

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

Поэтому позовите коллег, им это будет тоже очень полезно.

Особенно, если они уже видели КД 3 и успели испугаться:)

Да, когда ее видишь в первый раз – там вообще ни фига не понятно.

Но на самом деле – все ОЧЕНЬ просто. Настолько просто, что вам потом даже скучно будет:)

Что конкретно в сегодняшних видео

Это 4 видео по обмену данными через универсальный формат обмена EnterpriseData .

Кроме того, мы покажем пример доработки типовых правил обмена в 1С:Конвертации данных 3.0

Общая длительность – 34 минуты . Содержание:

  • Настройка обмена на примере 1С:Бухгалтерии 8 и 1C:ERP
  • Как сделать загрузку типовых правил и универсального формата обмена в Конвертации Данных 3.0
  • Перенос структуры метаданных в КД 3.0
  • Как выполнить первый обмен данными
  • Доработка правил конвертации
  • Как загрузить новые правила без изменения конфигурации (без снятия с поддержки )

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

Если бы подобная задача решалась в Конвертации данных 2.0, то изменения пришлось бы вносить в правилах и источника, и приемника.

Данные видеоуроки актуальны для БСП редакции 2.3.2 (для любой сборки старше 2.3.2.43).

Если Вы используете более старшую версию БСП,0 сделайте «поправку» на изменившийся интерфейс и расширенную функциональность. Для этого самостоятельно повторите пример из видео.

Видео 1:
Загрузка правил обмена между типовыми конфигурациями в Конвертацию данных 3.0

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

  • Загрузка в КД структуры формата обмена (
  • Создание конвертации
  • Выгрузка файлов правил из типовой конфигурации
  • Выгрузка модуля менеджера обмена

Видео 2:
Доработка правил обмена в КД 3.0

В этом уроке мы покажем, как дозаполнить реквизиты объектов при загрузке данных.

Будет решена задача – при загрузке объектов из конфигурации-источника устанавливать комментарий “Загружено из БП 3.0”.

Для решения задачи потребуется внести изменения в правилах конвертации объектов , в событии “Перед записью полученных данных”.

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

Видео 3:
Настройка универсального обмена между типовыми конфигурациями

В этом уроке мы покажем, как настраивать новый обмен между типовыми.

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

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

Видео 4:
Перенос начальных остатков с помощью правил обмена

В уроке покажем типовой функционал переноса начальных остатков.

P.S.

Да, обмены через txt / dbf / ole и т.д. имеют право на существование. В каких-то специальных случаях, типа стыковки с веб-сервером или переноса из готового формата внешнего приложения.

Однако для стандартных обменов – стандартные методы и быстрее, и сильно проще.

А если кто-то изобретает велосипед, когда есть готовое универсальное решение – это как написать себе на лбу “инструментом не владею, изучать не хочу, буду строить костыли за ваши деньги” .

P.P.S.

Мы хотим показать, что Конвертация Данных 3.0 – это не сложно.

Непривычно – да. Не все сразу понятно – да. Есть очень неоднозначные моменты – да.

Но с помощью готовых инструкций и видео ее можно освоить буквально за 1-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 файлу, в который ранее были выгружены данные. После этого нажмите на кнопку «Загрузить данные».

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

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

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

Самый популярный и при этом достаточно простой способ переноса справочника в 1С 8.3 -выполнить обработку информационных данных в XML виде.

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

Выгрузка данных

Для этого первоначально потребуется зайти в интерфейс программы и выполнить ряд действий:

1. Заполнить поле «Имя файла». При помощи данного пути будет впоследствии создан файл информационных данных для загрузки в базу.

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

3. После этого, когда необходимые объекты выделены, произвести наложение отбора в правой части таблиц.

4. После завершения установки всех требуемых настроек выполнить экспорт справочника.

Загрузка данных в справочник

Чтобы в 1С перенести справочники, потребуется выполнить ряд действий:

1. Запустите обработку в базе, куда требуется загрузить информационные данные, и воспользуйтесь вкладкой «Загрузка».

2. Затем выберите ранее выгруженный файл и используйте команду «Загрузить данные».

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

Данная обработка позволяет производить обмен данными между одинаковыми (идентичными) конфигурациями на платформе 1С 8.3 - Бух 3.0, ЗУП 3.0, УТ 11, УПП 2.0 и другие, главное чтобы конфигурации были одинаковыми!

Скриншоты

{foto}
{foto}

Режимы работы

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

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

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

Кнопки "Отключить итоги" и "Включить итоги" доступны при установленном флаге "Включить возможность редактирования использования итогов во время загрузки данных" и используются для ручного управления режимом использования итогов при загрузке данных.

Условия применимости обработки

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

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

Определение состава выгрузки

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

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

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

Возможные применения

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

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

Переносит через xml файлик или com - соединение данные из одной базы 1С в другую.

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

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

Может работать в двух режимах: через xml (запускать по очереди в базе источнике, потом в базе - приемнике), через com - соединение (запускать только в базе - источнике).

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

Даже если пользователь не делает специальных действий по сохранению настроек, обработка сама сохраняет набор данных в файле dataXML.ini. В нем хранятся: "Вид обмена", "Выгружать справочники из документов" и параметры соединения для com - соединения.

Если обмен работает в режиме XML, Выгрузка производится в тот же каталог, откуда запущена обработка. Создается файл "dataXML.xml". Из него же производится загрузка.

Использование (через xml):

  • Запустить обработку в базе - источнике данных. перейти за закладку "Выгрузка". При необходимости можно воспользоваться флагом "фильтр по заполненным объектам" - он уберет из полей списков объекты, не содержащие данных, оставив только те, где есть хоть одна запись. Выбрать флажками объекты для переноса (на любых закладках)
  • Нажать "Выгрузить"
  • Запустить эту же обработку в базе - получателе данных. Выбрать вид обмена "Через XML".
  • Нажать "Загрузить". Загруженные данные отобразятся в списке, откуда их можно открыть щелчком мышки. Кнопка "Тест загрузки" на закладке "Загрузка" делает загрузку данных без записи в базу с отображением загруженных данных (если очень страшно загружать).

Использование (через com):

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

Обновления:

2.4. Добавлен отбор по любым данным объекта при выгрузке. Отбор доступен только при выгрузке одного типа справочника или документа. Если условие выполнено, на закладке "Выгрузка" появляется закладка "Отбор".

Добавлено поле "файл", достуаное только при обмене через xml. По умолчанию заполняется "dataXML.xml". Это поле так же добавлено в поля, сохраняемые в файле "dataXML.ini".

2.4.2. Добавлен отбор по организации. Устанавливается на закладке "Дополнительно". Поле сохраняется в настройках. Если отбор заполнен, выгружаются только те документы, где есть реквизит "Организация" и Организация документа равна отбору.

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

2.5.3. Немного изменил выгрузку регистров сведений (непринципиально), детализировал сообщения при выгрузке регистров сведений (расшифровал отбор записи). Разбил проблемную строчку от пользователя its на две (для облегчения понимания ошибки).

Переименовал два других флага (укладывался в место). Сути флагов это не изменило, надеюсь названия по прежнему понятны. "Только заполненные" - фильтр на все табличные части, оставлющий для выбора только те объекты, где содержится хоть один объект данных. "Документы со справочниками" - флаг, позволяющий выгружать вместе с документами содержащиеся в нем справочники.

Непринципиально переписана часть выгрузки (немного оптимизирована).

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

2.5.5. Добавлена обработка прерывания пользователя в выгрузку и загрузку.

2.5.6. Исправлена ошибка с видами регистров сведений. Регистры, подчиненные регистратору убраны из поля "Регистры сведений". При необходимости их перенести, переносить регистраторы с движениями.

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

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

2.8.0. Выполнено пожелание уважаемого nirbolz , сделанное в 251-м комментарии, добавлен флаг "Только новые".

Немного изменена конфигурация формы, основные флаги вынесены на отдельную закладку, т.к. место на форме, где они были раньше, кончилось:)

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

Что еще почитать