Перенос данных с использованием XDTO

Публикация № 1051370

Разработка - Системная интеграция - Обмен через XML

XDTO обмен

Использование объекта типа "ОбъектXDTO" для переноса данных из одной конфигурации в другую

Здравствуйте! Моя статья посвящена моему вниканию в XDTO, первые шаги. Статьи по XDTO есть, но там слишком много теории.

Предисловие

Мне захотелось попробовать использовать XDTO для написания своего переноса данных из одной конфигурации в другую. У меня была конкретная цель: создать управляемый перенос данных из одной конфигурации в другую. Из дописанной УТ10 в БУХ30. Естественно, в УТ10 нет БСП. У нас использовалась конвертация данных 2, я умею ей пользоваться, в некотором смысле, и даже вижу косяки в ее справке. Но гибкость переноса маловата. Данные перенести можно, но мне не нравилась малая скорость, сложность создания/изменения своего алгоритма загрузки. Например, некоторые документы мне нужно принимать, другие - нет, по каким-то условия, некоторые проводить, а некоторые - не трогать совсем, необходимость использования разных правил обмена для разных конфигураций, сложность просмотра данных при отладке и т.д. Но я в работе всегда стараюсь пробовать новые механизмы, чтобы осознавать, чем хорош/плох (хорошо, когда соотношение 50/50, люблю хорошую ортогональность) тот или иной подход. Скорее всего то понимание, которое я хочу показать, возможно завтра уже вызовет у меня только улыбку. Но я думаю стоит поделиться, уверен, кому-то поможет.

Итак, начинаю описывать то, что я понял...

Для начала, необходимо представить три понятия...

  1. ...Что такое пакет XDTO. Пакет XDTO - это описание того, как нужно строить XML. Какие там узлы вложены, сколько их и как интерпретировать содержимое узлов. Интерпретация узлов зависит от...
  2. ...Пространства имен. Это некое абстрактное название совокупности описаний этих интерпретаций. Видя в узле атрибут xmlns:v8="http://v8.1c.ru/8.1/data/enterprise/current-config" мы понимаем, что в подчиненных узлах этого узла данные типа <ДокументОснование xsi:type="v8:DocumentRef.Возврат">fdfddc9e-6357-11e9-9869-c86000e2d5b1</ДокументОснование> означают, что тип "DocumentRef.Возврат" относится к v8, а v8 - это префикс пространства имен, которое мы объявили для этого узла (или вышестоящего). В этом примере получается так: содержимое "fdfddc9e-6357-11e9-9869-c86000e2d5b1" узла <ДокументОснование> следует интерпретировать согласно типу "DocumentRef.Возврат", описанному в пакете с пространством имен "http://v8.1c.ru/8.1/data/enterprise/current-config". Создание объекту описанных типов согласно пространству имен занимается...
  3. ...ФабрикаXDTO. ФабрикаXDTO знает типы объектов по своим пакетам и умеет создавать ОбъектXDTO по типам, описанным в них. Есть глобальная фабрика. Она знает обо всех типах данной конфигурации. Но можно создавать свою фабрику по своим схемам.

Моя задача по-большей части заключалась в том, чтобы логичным образом перенести ссылки на документы. Ссылка в одной конфигурации должна соответствовать ссылке в другой и чтобы это сразу было видно в отладчике, в свойстве ОбъектXDTO. Но вот незадача: в одной конфигурации документ называется, например, "ВозвратОтПокупателя", а в другой - "Возврат". А ссылки должны совпадать. Незадача это потому что пространство имен конфигурации в обоих базах называется одинаково: "http://v8.1c.ru/8.1/data/enterprise/current-config". Вот только в каждой из них свои объекты. Или, например, названия перечислений или значения перечислений разные.

Можно, конечно, всё создавать вручную через ЗаписьXML, все атрибуты и узлы, согласно конфигурации базы-приемника... Но! Мне далеко не всегда нравится состав реквизитов этих объектов. Например, для чего мне в формируемом XML по документу платежки данные счетов учета? Или мне не хотелось создавать в передаваемом XML данные для РасшифровкаПлатежа. Мне хотелось сделать свой ОбъектXDTO, со своими свойствами, которые сочту необходимыми для переноса. 

Решение

Создаем ПакетXDTO в базе-приемнике (это у меня БУХ30, я добавил расширение, но возможно это можно создавать и в блокноте или еще каком-то инструменте) и экспортируем его в файл .xsd. Затем экспортируем всю конфигурацию базы приемника в другой файл. 

В базе-источнике для создания своей фабрики из двух файлов .xsd пишем вот что:

Функция ПолучитьСхемуXML(ИмяФайла)
	Файл = Новый Файл(ИмяФайла);
	ЧтениеXML = Новый ЧтениеXML;
	// Открыть файл XML
	ЧтениеXML.ОткрытьФайл(Файл.ПолноеИмя);
	// Создать построитель документа DOM по умолчанию
	ПостроительDOM = Новый ПостроительDOM;
	// Прочитать файл XML в документ DOM
	ДокументDOM = ПостроительDOM.Прочитать(ЧтениеXML);
	// Создать построитель схемы XML по умолчанию
	ПостроительСхемыXML = Новый ПостроительСхемXML;
	// Получить схему XML из документа DOM
	СхемаXML = ПостроительСхемыXML.СоздатьСхемуXML(ДокументDOM);
	Возврат СхемаXML;	
КонецФункции
  


НаборСхемXML = Новый НаборСхемXML;
Файл = Новый Файл("D:\XDTO\export-2.xsd");
НаборСхемXML.Добавить(ПолучитьСхемуXML(Файл.ПолноеИмя));
Файл = Новый Файл("D:\XDTO\export.xsd");
НаборСхемXML.Добавить(ПолучитьСхемуXML(Файл.ПолноеИмя));
МояФабрика = Новый ФабрикаXDTO(НаборСхемXML);

Таким образом у нас получается Фабрика, которая может создавать объекты с необходимыми типами.

Пакет в базе-приемнике выглядит так: 

 

Это то, как я хочу переносить данные. Этот мой пакет имеет пространство имен с именем (http://www.sample-package.org). Мне в документе ОплатаПлатКартой не нужны счета и все реквизиты контрагента. Мне у контрагента нужно наименование и возможно ссылка. Тип у свойства Ref типа объекта Контрагента - строка. Потому что я не собираюсь сопоставлять контрагентов по ссылке. А вот тип свойства Ref у типа объекта ОплатаПлатКартой - DocumentRef.ОплатаПлатежнойКартой из пространства имен конфигурации http://v8.1c.ru/8.1/data/enterprise/current-config. Именно поэтому нам нужна директива импорта и это то, ради чего я это делал: просмотр в отладчике этого свойства у ОбъектXDTO выдаст реальную ссылку в базе-приемнике.

ВидОперации тоже имеет тип из типов конфигурации.

А вот ДокументОснование не имеет типа, он имеет открытый тип. В базе приемнике у соответствующего документа составной тип, поэтому при формировании XML необходимо передавать тип.

Вот как выглядит функция формирования XML:

	ЗаписьXML = Новый ЗаписьXML;
	ЗаписьXML.УстановитьСтроку();
	ЗаписьXML.ЗаписатьОбъявлениеXML();
	ЗаписьXML.ЗаписатьНачалоЭлемента("root");
	ЗаписьXML.ЗаписатьСоответствиеПространстваИмен("", "http://www.sample-package.org");	
	ЗаписьXML.ЗаписатьСоответствиеПространстваИмен("v8", "http://v8.1c.ru/8.1/data/enterprise/current-config");	
	
	МассивДокументов = ПолучитьСписокДокументов();
	
	Для Каждого ТекЭлемент Из МассивДокументов Цикл
		Объект = ТекЭлемент.ПолучитьОбъект();
		ТипРеализация = МояФабрика.Тип("http://v8.1c.ru/8.1/data/enterprise/current-config", "DocumentRef.Реализация");
		ТипДокумента = МояФабрика.Тип("http://www.sample-package.org", "ОплатаПлатКартой");
		ТипКонтрагента = МояФабрика.Тип("http://www.sample-package.org", "Контрагент");
		ТипВозврата = МояФабрика.Тип("http://v8.1c.ru/8.1/data/enterprise/current-config", "DocumentRef.Возврат");
		ТипОплата = МояФабрика.Тип("http://v8.1c.ru/8.1/data/enterprise/current-config", "EnumRef.ВидыОперацийПлатКарта");
		
		КонтрагентXDTO = МояФабрика.Создать(ТипКонтрагента);
		КонтрагентXDTO.Ref = XMLСтрока(Объект.Контрагент);
		КонтрагентXDTO.Description = "" + Объект.Контрагент;
		
		ОбъектXDTO = МояФабрика.Создать(ТипДокумента); 
		ОбъектXDTO.Ref = XMLСтрока(Объект.Ссылка);
		ОбъектXDTO.Description = "" + Объект;
		ОбъектXDTO.СуммаДокумента = Объект.СуммаДокумента;
		ОбъектXDTO.ВидОперации = МояФабрика.Создать(ТипОплата, "ОплатаПокупателя");
		ОбъектXDTO.Контрагент = КонтрагентXDTO;
		ОбъектXDTO.ДокументОснование = МояФабрика.Создать(ТипВозврата, Объект.ДокументОснование.УникальныйИдентификатор());
		
		МояФабрика.ЗаписатьXML(ЗаписьXML, ОбъектXDTO);
	КонецЦикла;
	
	ЗаписьXML.ЗаписатьКонецЭлемента();
	
	Результат = ЗаписьXML.Закрыть();

Функции списка документов не привожу - это просто ссылки на документы оплаты.

Объекты XDTO создаются фабрикой по типу полученному из фабрики: сначала получаем тип, потом создаем ОбъектXDTO (или ЗначениеXDTO, как в случае, например, с перечислением).

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

Обратите внимание на заполнение свойства ДокументОснование. Мы создаем фабрикой значение из ТипВозврата, передавая ей уникальный идентификатор ссылки основания. У документа основания в базе-источнике составной тип: РеализацияТоваровУслуг и ВозвратОтПокупателя. А вот в базе-приемнике они называются иначе: Реализация и Возврат. 

Наименования значений перечислений в базе источнике и в базе приемнике тоже разные: Оплата, Возврат и ОплатаПокупателя, ВозвратПокупателю. В приведенном примере заполняется однозначно, но, думаю, понятно, что в реальном обмене необходимо добавлять условия, как именно заполнять создаваемый ОбъектXDTO.

Итого получается XML:

<?xml version="1.0"?>
<root xmlns="http://www.sample-package.org" xmlns:v8="http://v8.1c.ru/8.1/data/enterprise/current-config">
	<ОплатаПлатКартой xmlns:xs="http://www.w3.org/2001/XMLSchema" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance">
		<Ref>fdfddc9f-6357-11e9-9869-c86000e2d5b1</Ref>
		<Description>Оплата платежной картой 000000001 от 20.04.2019 15:35:46</Description>
		<ВидОперации>ОплатаПокупателя</ВидОперации>
		<Контрагент>
			<Ref>fdfddc9b-6357-11e9-9869-c86000e2d5b1</Ref>
			<Description>Виктор</Description>
		</Контрагент>
		<СуммаДокумента>1000</СуммаДокумента>
		<ДокументОснование xsi:type="v8:DocumentRef.Возврат">fdfddc9c-6357-11e9-9869-c86000e2d5b1</ДокументОснование>
	</ОплатаПлатКартой>
	<ОплатаПлатКартой xmlns:xs="http://www.w3.org/2001/XMLSchema" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance">
		<Ref>fdfddca0-6357-11e9-9869-c86000e2d5b1</Ref>
		<Description>Оплата платежной картой 000000002 от 20.04.2019 15:35:57</Description>
		<ВидОперации>ОплатаПокупателя</ВидОперации>
		<Контрагент>
			<Ref>fdfddc9b-6357-11e9-9869-c86000e2d5b1</Ref>
			<Description>Виктор</Description>
		</Контрагент>
		<СуммаДокумента>300</СуммаДокумента>
		<ДокументОснование xsi:type="v8:DocumentRef.Возврат">fdfddc9e-6357-11e9-9869-c86000e2d5b1</ДокументОснование>
	</ОплатаПлатКартой>
</root>

Для чтения такого XML в базе приемнике пишем короткую функцию:

	ЧтениеXML = Новый ЧтениеXML;
	ЧтениеXML.УстановитьСтроку(ДанныеXML);
	ЧтениеXML.Прочитать();
	ЧтениеXML.Прочитать();
	ТипXML = ПолучитьXMLТип(ЧтениеXML);
	ТипXDTO = ФабрикаXDTO.Тип(ТипXML);
	ОбъектXDTO = ФабрикаXDTO.ПрочитатьXML(ЧтениеXML, ТипXDTO);

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

После этого кода в ОбъектXDTO будет следующее:

Сравните с тем, что было в исходной базе:

Необходимые мне ссылки преобразовались, как мне было нужно.

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

Буду рад критике и предложениям!

Скачать файлы

Наименование Файл Версия Размер
Перенос данных с использованием XDTO

.zip 212,13Kb
20.04.19
10
.zip 212,13Kb 10 Скачать

Специальные предложения

Комментарии
Избранное Подписка Сортировка: Древо развёрнутое
Свернуть все
1. HAMMER_59 206 23.04.19 07:23 Сейчас в теме
Все подумываю написать статью "XDTO для чайников", а тут смотрю может уже и не нужно.
Сейчас также пишу синхронизацию между доработанной УТ 10.1 и БП 3, рекомендую посмотреть стандартные правила обмена УТ 10.3 -> БП 3.
По статье отметил бы:
- Непонятно зачем программно делать экспорт схемы, когда можно через графический интерфейс.
- У меня самый большой затык был с коллекциями, например, строки табличной части документа, на самом деле все просто, но без примера сложно разобраться.
2. PLAstic 253 23.04.19 09:10 Сейчас в теме
(1) На этом форуме их полно уже. Напишите лучше про какие-нибудь интересные нюансы вроде:
1) Как с помощью XDTO сформировать массив из нуля элементов и выгрузить его в JSON.
2) Как недопустить платформенного эксепшна при парсинге JSON по XDTO при наличии в нём пустого массива.

Я откровенно задолбался общаться с 1Сниками, не хотят они регистрировать эти ошибки. Уже всё им прислал, даже ссыль на RFC с переводом.
4. plevakin 23.04.19 09:27 Сейчас в теме
(2) ПрочитатьJSON(ЧтениеJSON,истина) не предлагать?
5. PLAstic 253 23.04.19 09:55 Сейчас в теме
(4) Конечно, нет. Мне же надо преобразовать к типу объекта со всеми вытекающими проверками структуры пакета и значений.
7. axae 89 23.04.19 11:21 Сейчас в теме
(1)
о статье отметил бы:
- Непонятно зачем программно делать экспорт сх
А если поменяется конфа бухгалтерии? Допускаю, что это редко, но всё же... Тут просто интересно было, на самом деле конечно можно и так взять откуда-нибудь. Конкретно в моей ситуации схему бухгалтерии отдает httpСервис.
8. axae 89 23.04.19 11:26 Сейчас в теме
(1)
XDTO для чайников
- Я как раз тот чайник! Но спросить, к сожалению, не у кого все эти нюансы, да и элементарные вещи.
3. plevakin 23.04.19 09:25 Сейчас в теме
А если есть схема не в XSD а в таком виде

<?xml version="1.0" encoding="utf-8" ?>
- <edmx:Edmx Version="4.0" xmlns:edmx="http://docs.oasis-open.org/odata/ns/edmx">
- <edmx:DataServices>
- <Schema Namespace="Request.WebAPI.Models.V1" xmlns="http://docs.oasis-open.org/odata/ns/edm">
- <EntityType Name="Request">
- <Key>
<PropertyRef Name="Id" />
</Key>


Ее можно как-то прочитать средствами 1C?
6. PLAstic 253 23.04.19 10:02 Сейчас в теме
9. user1302499 26.11.19 12:50 Сейчас в теме
И как понять где какой код должен быть?
10. axae 89 02.12.19 08:34 Сейчас в теме
(9) В базе-источнике получаем фабрику XDTO на основании схем базы источника. Создаем объекты с использованием типов, предоставляемых этой фабриком и записываем их в файл (ну или еще куда-нибудь). В базе-приемнике просто читаем объекты из файла. Это вкратце так.
Оставьте свое сообщение

См. также

Редактор объектов информационной базы 8.3 Промо

Универсальные обработки Обмен через XML v8 v8::УФ 1cv8.cf Россия Абонемент ($m)

Универсальная внешняя обработка для редактирования реквизитов и табличных частей объектов информационной базы, редактирование движений документов. Доступ ко всем реквизитам объектов, есть возможность выгрузки и загрузки данных (объекты и движения документов) через XML. Платформа 8.3, управляемые формы. Версия 1.1.0.47 от 08.06.2020

2 стартмани

23.01.2019    24448    257    ROL32    33    

Улучшенная обработка универсального обмена данными в формате XML (УФ)

Универсальные обработки Внешние источники данных Обмен через XML v8 v8::УФ 1cv8.cf Абонемент ($m)

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

1 стартмани

23.06.2020    1782    20    Lem0n    0    

Загрузка из XML файла ЭДО в документ поступления для конфигураций 1С: Розница 2.2/2.3, Управление торговлей 10.3/11.4

Розничная торговля Обработка документов Документооборот и делопроизводство Обмен через XML v8 УТ10 Розница Розничная и сетевая торговля (FMCG) Россия УУ Абонемент ($m)

Внешние обработки загрузки данных из XML файлов формата ON_NSCHFDOPPRMARK ЭДО в документы поступления 1С Розница версия 2.2.10.19 и выше, Управление торговлей 10.3.52.2 и выше, Управление торговлей 11.4.5.63 и выше

1 стартмани

04.06.2020    3534    67    independ    67    

Выгрузка и загрузка XML для управляемых форм 8.3 (с отбором)

Обмен через XML v8 v8::УФ 1cv8.cf Абонемент ($m)

В работе постоянно приходится разделять в различные базы или объединять несколько организаций в одну базу, долгое время пользовался стандартной обработкой выгрузка-загрузка из UNIREPS 8.2, в режиме обычного приложения, но, к сожалению, для управляемого приложения стандартная обработка из UNIREPS 8.3 (Диск ИТС) не позволяет нормально сделать выгрузку с отбором, поэтому ей никогда не воспользовался. Решил что напишу обработку, которая позволит делать отборы в различных вариациях, кроме того, в обработках из UNIREPS (8.2 и 8.3) существенно отличается процесс загрузки предопределенных, что не всегда удобно при больших объемах данных. Обработка написана на базе UNIREPS 8.3, но есть существенные изменения. Но интерфейс доработан так, чтобы обработка была похожа на старую добрую обработку из UNIREPS 8.2, к которой все так привыкли.

1 стартмани

05.11.2019    7446    135    o.kovalev    14    

Преобразование XML файла в переменную структура, Загрузка в дерево значений

Обмен через XML v8 1cv8.cf Абонемент ($m)

Обработка, демонстрирующая работу процедур и функций по преобразованию XML файла в дерево значений, а также в переменную типа структура.

1 стартмани

14.09.2019    6954    9    vik070777    18    

Документы и Справочники в JSON

Обмен через XML v8 1cv8.cf Абонемент ($m)

Пример выгрузки всех данных Документа или Справочника в JSON

1 стартмани

20.06.2019    10471    14    darkmessiahan    15    

XDTO для чайников

Обмен через XML v8 1cv8.cf Абонемент ($m)

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

1 стартмани

29.05.2019    24116    20    HAMMER_59    39    

Перенос документов из УТ 10.3 в УТ 11.4

Обмен через XML Перенос данных из 1C8 в 1C8 v8 v8::ОУ УТ10 УТ11 УУ Абонемент ($m)

Перенос основных документов из ут 10.3 в ут 11.4. Правила сделаны на основании помощника перехода, поэтому доступен перенос справочников и остатков.

3 стартмани

30.04.2019    7285    117    leobrn    9    

Универсальный обмен данными XML (с гибкими отборами и сохранением вариантов настроек)

Обмен через XML v8 v8::УФ 1cv8.cf Абонемент ($m)

Обработка предназначена для загрузки и выгрузки данных по правилам обмена в любых конфигурациях, реализованных на платформе 1С:Предприятие 8.3. Преимуществом перед типовой обработкой является добавленный функционал: #1. Установка произвольных фильтров на выгружаемые объекты при помощи механизма системы компоновки данных #2. Сохранение различных вариантов настроек (сохраняются правила обмена, фильтры выгрузки, параметры, настройки обработки) - что позволяет гибко настроить в базе-источнике фильтры для выгрузки объектов по различным правилам обмена для различных баз-приемников, сохранить выполненные настройки и в будущем уже пользоваться этими вариантами настроек. Проверялась на 1С:ERP Управление предприятием 2.4.7.141.

1 стартмани

29.04.2019    12487    231    sapervodichka    20    

Выгрузка и загрузка данных XML 8.3 на управляемых формах с отбором и конструктором запроса (в полной мере возможности реализованы для версии 1С:Предприятия 8.3 выше версии 8.3.5)

Обмен через XML Инструментарий разработчика v8 v8::УФ 1cv8.cf Россия Абонемент ($m)

В этой форме всегда не хватало конструктора запросов для удобной выгрузки уникальных элементов по ссылке. Теперь он здесь есть. Как только стало возможным создавать конструктор запроса в управляемых формах, я добавил её в стандартную обработку. Необходимо напомнить, что обработка функционирует полноценно только с версии 8.3.5 1С:Предприятия 8.3.

1 стартмани

24.04.2019    6943    34    AlexandrSmith    1    

Выгрузка - загрузка данных в XML с отбором по организации Промо

Обмен через XML Перенос данных из 1C8 в 1C8 v8 1cv8.cf Абонемент ($m)

Выгрузка - загрузка данных в XML с отбором по организации (УФ)

1 стартмани

25.05.2014    45028    299    buganov    42    

1C + Python + Django Rest Framework + Vue.js. Опыт несложной full-stack разработки

Практика программирования Внешние источники данных Обмен через XML WEB Разработка v8 1cv8.cf Абонемент ($m)

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

1 стартмани

22.04.2019    29618    32    riposte    63    

Выгрузка и загрузка данных XML с гибкими отборами

Обмен через XML Перенос данных из 1C8 в 1C8 v8 1cv8.cf Абонемент ($m)

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

1 стартмани

07.04.2019    15109    376    sapervodichka    7    

Перенос данных КА 1.1 -> КА 2

Перенос данных из 1C8 в 1C8 Обмен через XML v8 КА1 КА2 Россия Абонемент ($m)

Перенос данных КА 1.1 => КА 2 с помощью правил обмена данными в формате XML КД 2 (переносятся остатки, документы, справочная информация).

5 стартмани

20.03.2019    14148    244    gudogu    141    

Правила конвертации документов ЗУП 2.5 - ЗУП 3.1 Промо

Обмен через XML Зарплата Перенос данных из 1C8 в 1C8 Зарплата v8 v8::СПР ЗУП2.5 ЗУП3.x Россия БУ Абонемент ($m)

Правила конвертации документов ЗУП 2.5 - ЗУП 3.1. Позволяют вести параллельную работу в базах ЗУП редакций 2,5 и 3.1.

10 стартмани

06.03.2018    36611    151    kostya_whiskas    24    

Обработка для выгрузки и загрузки данных XML 8.3. С отбором, предпросмотром данных и сохранением настроек

Обмен через XML Перенос данных из 1C8 в 1C8 v8 v8::УФ 1cv8.cf Россия Абонемент ($m)

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

1 стартмани

07.03.2019    11781    196    Gmix    7    

Правила обмена УПП 1.3 -> БП 3.0 (+ БП КОРП 3.0 + перенос остатков)

Перенос данных из 1C8 в 1C8 Обмен через XML v8 УПП1 КД БП3.0 БУ Абонемент ($m)

Актуальные правила обмена: УПП 1.3.137.1 -> БП 3.0.76.77; УПП 1.3.137.1 -> БП КОРП 3.0.76.77; УПП 1.3.128.1 -> БП 3.0.74.63; УПП 1.3.128.1 -> БП КОРП 3.0.74.63; УПП 1.3.123.3 -> БП 3.0.71.83; УПП 1.3.123.3 -> БП КОРП 3.0.71.83; УПП 1.3.118.1 -> БП 3.0.68.61; УПП 1.3.118.1 -> БП КОРП 3.0.68.61.

1 стартмани

04.03.2019    9619    235    Смешной 1С    42    

Выгрузка данных из Бухгалтерии ред. 3.0 в Управление небольшой фирмой, ред. 1.6

Обмен через XML Перенос данных из 1C8 в 1C8 v8 УНФ БП3.0 Россия УУ Абонемент ($m)

Выгрузка данных из 1С БП 3.0 в УНФ 1.6. Обработка переносит документы по банку, кассе, движения ТМЦ + справочники контрагентов, номенклатуры и другие связанные справочники. Полный список документов на скриншоте.

1 стартмани

08.02.2019    9227    175    dinarz    52    

Создание в 1С 7.7 XML в формате EnterpriseData (универсальный формат обмена), версия 1.5. Инструкции и примеры переноса данных из устаревшей конфигурации 1С 7.7 в любую современную 1С 8.3, поддерживающую EnterpriseData, через Конвертацию данных 3 Промо

Перенос данных из 1С7.7 в 1C8.X Обмен через XML v7.7 v8 1cv7.md Россия Абонемент ($m)

Воспользоваться современным средством переноса данных "Конвертация данных 3.0.5.3" можно только выгрузив из системы - источника данных XML в формате обмена данными EnterpriseData. В этой публикации можно скачать приемы выгрузки из 1С 7.7 универсального формата обмена для Конвертации данных 3. Выполняем перенос данных из «1С:Предприятие 7.7» в «1С:Предприятие 8.3». Используем Конвертацию данных КД 3.0 из 1c 7.7 --> 1С 8.3. На первой стадии еще не опубликовано иного способа подложить файл для Конвертации данных 3 кроме как сформировать его вручную, постараемся решить данную проблему.

1 стартмани

26.02.2018    36118    51    ksnik    3    

1С: Розница/УТ 10.3. ЕГАИС, загрузка акцизных марок в справочник Штрихкоды и Упаковки, регистр Акцизные марки из XML-сообщений входящих ТТН ЕГАИС + Печать акцизных марок

Розничная торговля Обработка справочников Обмен через XML Ценники Розничная торговля v8 Розница Розничная и сетевая торговля (FMCG) Россия Абонемент ($m)

Пакетная загрузка/обновление списка акцизных марок ЕГАИС из входящих ТТН ЕГАИС. Для 1С Розница 2.2.9.ХХХ/2.2.10.ХХХ//2.2.11.ХХХ/2.2.12.ХХХ/Управление торговлей 10.3.49.ХХХХ и выше с возможностью печати

1 стартмани

31.01.2019    17642    138    independ    110    

Ручная выгрузка и загрузка данных через универсальный обмен данными с настройками (расширение, платформа 8.3+)

Обработка документов Обработка справочников Обмен через XML Перенос данных из 1C8 в 1C8 v8 Розница УНФ ERP2 БП3.0 УТ11 КА2 ЗУП3.x Абонемент ($m)

Данное расширение (не требует изменения конфигураций) служит как надстройка для конфигураций, у которых обмен между базами происходит через универсальный формат (EnterpriseData), с использованием стандартных правил конвертации, которые уже есть в конфигурации. Интерфейс адаптирован для простых пользователей, сделан общий отбор по Организации для всех документов, имеется пару настроек для передачи в параметры конвертации, которые расположены в общем модуле конфигураций, а так же есть возможность выбора запуска - в фоне или в текущем сеансе. Теперь не нужно настраивать обмен между базами, для того чтоб просто перенести нужные документы. Подходит точно для УТ 11.4, БП 3.0.67, КА 2.4.5, Розница 2.2.9 (Обновление 1.2 от 02.03.2019)

2 стартмани

19.01.2019    19493    122    hakerxp    10    

Перенос данных КА 1.1.115.1 => БП 3.0.75.104 (перенос остатков, документов, зарплатный блок и справочной информации)

Перенос данных из 1C8 в 1C8 Обмен через XML v8 КА1 БП3.0 Россия Абонемент ($m)

Переносятся: остатки по счетам 01, 02, 10, 20, 41, 60, 62, 71, 97 и их субсчетам; документы; отдельно можно перенести справочники (номенклатура, контрагенты, договоры контрагентов, организации, склады, физические лица, сотрудники).

5 стартмани

22.12.2018    12402    332    gudogu    155    

Универсальный обмен данными в формате XML (2.1.8) 8.3 УФ с отбором и без модальности

Обмен через XML v8 v8::УФ 1cv8.cf Абонемент ($m)

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

1 стартмани

07.11.2018    20373    276    nicxxx    7    

SOAP для чайников

Обмен через XML WEB v8 1cv8.cf Абонемент ($m)

Немножко про SOAP сервис. И пример работы с подключением и получением данных по SOAP за 5 минут.

1 стартмани

05.09.2018    40806    36    dusha0020    18    

Редактор движений документа. Сохранение в XML, обмен между базами, замена регистратора. Промо

Обработка документов Универсальные обработки Обмен через XML v8 Абонемент ($m)

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

1 стартмани

07.09.2016    39007    153    Aphanas    4    

003. Почему я больше не люблю "Выгрузку Загрузку XML"

Обмен через XML v8 1cv8.cf Абонемент ($m)

Ниже будет много букаф, но если коротко — можно ускорить этот инструмент в 1000 раз

1 стартмани

03.09.2018    7086    8    Nikola23    8    

Простой эмулятор вызова веб-сервиса 1С с просмотром результата

Обмен через XML WEB v8 1cv8.cf Россия Абонемент ($m)

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

1 стартмани

24.04.2018    11614    19    anvolkov1cbit    9    

Правила переноса документов из ЗУП 2.5 в ЗУП 3.1

Обмен через XML Перенос данных из 1C8 в 1C8 Зарплата Управление персоналом (HRM) Зарплата Управление персоналом (HRM) v8 v8::СПР ЗУП2.5 ЗУП3.x Россия БУ Абонемент ($m)

Перенос документов, справочников и планов видов расчета из конфигурации 1С ЗУП 2.5 в ЗУП 3.1.

3 стартмани

28.03.2018    26803    408    Cobranet123    64    

Загрузка файлов грузовых таможенных деклараций из файлов ФТС формата xml (Альта софт, Сигма софт, Декларант +) Промо

Внешнеэкономическая деятельность (ВЭД) Обмен через XML Внешнеэкономическая деятельность (ВЭД) v8 v8::БУ БП3.0 Россия БУ Абонемент ($m)

Федеральная таможенная служба России давно поддерживает унифицированный формат электронных документов для обмена с информационными системами предприятий. xmlns="urn:customs.ru:Information:ExchangeDocuments:" если что. Структура, утвержденная комиссией Таможенного союза. Осталось только сделать загрузку в 1С из этого формата. На выходе - два документа ГТД по импорту и Поступление (акты, накладные)

5 стартмани

09.08.2016    43669    176    capitan    298    

Организация обмена с базой филиала (розничного магазина) в торговой сети через XML (универсальный обмен)

Обмен через XML Перенос данных из 1C8 в 1C8 Розничная торговля Розничная торговля v8 КД УТ11 Розничная и сетевая торговля (FMCG) Абонемент ($m)

В статье по шагам рассматривается создание обмена между центральной базой и базами филиалов на базе конфигурации УТ 11. Для решения поставленной задачи было решено не использовать РИБ, т.к. требуется односторонний обмен ограниченным набором данных, к тому же по определенным условиям. Обмен реализован на основе типовой синхронизации на основе универсального обмена в формате EnterpriseData. Данная публикация может быть полезна внедренцам, которые работают с торговыми сетями, в том числе по модели франчайзинга.

1 стартмани

26.02.2018    35358    13    Kutuzov    18    

Пример заполнения/создания файла XML из XSD схемы, используя XDTO

Обмен через XML WEB v8 1cv8.cf Абонемент ($m)

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

1 стартмани

21.12.2017    42972    53    sandybaev    23    

Усовершенствованный редактор правил обмена КД2 Промо

Обмен через XML v8 КД Абонемент ($m)

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

3 стартмани

16.09.2015    34440    184    Lem0n    40    

Правила переноса документов из ЗУП 2.5 в ЗУП 3.1

Перенос данных из 1C8 в 1C8 Обмен через XML Зарплата Управление персоналом (HRM) Зарплата Управление персоналом (HRM) v8 v8::СПР ЗУП3.x Россия БУ Абонемент ($m)

Перенос документов из ЗУП 2.5 в ЗУП 3.1 - позволяет снизить объем работ при опытной эксплуатации ЗУП 3.1 параллельно с ЗУП 2.5.

1 стартмани

04.12.2017    31000    494    AntonH851    38    

Механизмы и транспорт обмена данными. Пример создания в КД 2.1 правил обмена данными ЗУП 2.5 -> БП 3.0. Выгрузка ведомостей и банковских счетов. Передача параметров обмена из Источника в Приемник. ВыгрузитьПоПравилу(). ПередатьОдинПараметрВПриемник().

Обмен через XML Перенос данных из 1C8 в 1C8 v8 ЗУП2.5 КД БП3.0 Абонемент ($m)

В статье рассказываю: 1) о механизмах и транспорте обмена данными, где одной из сторон обмена выступает конфигурация на базе 1С, и о том, какой транспорт и в каких случаях лучше использовать 2) о решении задачи выгрузки данных документа «Зарплата к выплате организаций» (с выгрузкой банковский счетов физ лиц документа) из ЗУП 2.5.123.1 (далее Источник) в БП КОРП 3.0.52.39 (далее Приемник) путем создания правил обмена данными с использованием конфигурации «Конвертация данных» (далее просто КД) ред. 2.1.8.2. для (далее ЗкВО) 3) о тестирование полученных правил обмена данными.

1 стартмани

03.11.2017    31098    5    RailMen    5    

XML JSON преобразователь

Обмен через XML v8 1cv8.cf Россия Абонемент ($m)

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

1 стартмани

11.10.2017    15208    47    m-rv    4    

1С:Интеграция ЕГАИС + Инвентаризация на ТСД Промо

Обработка справочников Обмен через XML Оптовая торговля Оптовая торговля v8 1cv8.cf Розничная и сетевая торговля (FMCG) Оптовая торговля, дистрибуция, логистика Абонемент ($m)

Интеграция ЕГАИС модуля для 1С: 8.3 + модуль WMS контура для инвентаризации алкогольных марок на ТСД.

1 стартмани

10.12.2015    35066    27    JetBrain    5    

Правила обмена ЗУП 3.1 - БП 2.0 и ЗУП 3.1 - УПП 1.3 (отражение, ведомости и справочники)

Перенос данных из 1C8 в 1C8 Обмен через XML Зарплата Управление персоналом (HRM) Зарплата Управление персоналом (HRM) v8 v8::БУ v8::СПР БП2.0 БП3.0 ЗУП3.x Россия БУ Абонемент ($m)

Правила обмена для выгрузки документов "Отражение зарплаты в бухучете", "Ведомость в банк", "Ведомость в кассу", справочников "Сотрудники" и "Физические лица"

1 стартмани

01.08.2017    75302    1543    forseil    208    

«Горыныч - то НЕ НАСТОЯЩИЙ!» … или О Конвертации Данных ред.3 (КД 3) и обменах в универсальном формате Enterprise Data… доступным русско-народным языком

Внешние источники данных Обмен через XML Перенос данных из 1C8 в 1C8 v8 КД Абонемент ($m)

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

1 стартмани

13.06.2017    19808    140    Davlad_A    16    

"Конвертация данных" + Git. Решение проблемы различий в файлах

Инструментарий разработчика Обмен через XML v8 КД Абонемент ($m)

Как известно, типовая конфигурация «Конвертация данных» обладает одним недостатком, мешающим работать с ней в Git-е. Если выгруженные из нее правила обмена загрузить в другую КД, а потом снова выгрузить, то полученные два файла будут очень сильно отличаться друг от друга, и при сравнении (diff) доработок будет невозможно провести код-ревью, равно как найти сами изменения, которые закоммитил разработчик.

1 стартмани

08.06.2017    23321    39    stas_ganiev    13    

Простой универсальный обмен между отличающимися конфигурациями. Код открыт! (СериализаторXDTO,ПостроительDOM) +примеры использования Промо

Обмен через XML v8 1cv8.cf Абонемент ($m)

Очень удобная обработка всего с двумя "командами": Выгрузить(Что, Куда) Загрузить(Откуда)

1 стартмани

02.09.2015    22525    100    Mi4man    15    

Пообъектный разбор разметки

Инструментарий разработчика Обмен через XML v8 Абонемент ($m)

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

1 стартмани

26.04.2017    8631    4    9-pm    8    

Навигатор по файлу обмена Промо

Универсальные обработки Обмен через XML v8 1cv8.cf Абонемент ($m)

Просмотр содержимого XML-файла выгрузки данных

5 стартмани

02.04.2014    28852    35    RocKeR_13    22