Обмен через Конвертацию данных 2.1 во внешней обработке + Запуск внешней обработки по расписанию (БСП)

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

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

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

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

 

 

Создаем внешнюю обработку. В макет добавляем Правила обмена данными (Конвертация данных 2.1)

 

 

В модуле обработки описываем сведения о обработке. Тут важно указать НоваяКоманда.Использование = "ВызовСерверногоМетода";

 

 

Функция СведенияОВнешнейОбработке() Экспорт
		
	ТЗКоманды = Новый ТаблицаЗначений;
	ТЗКоманды.Колонки.Добавить("Представление");
	ТЗКоманды.Колонки.Добавить("Идентификатор");
	ТЗКоманды.Колонки.Добавить("Использование");
	ТЗКоманды.Колонки.Добавить("ПоказыватьОповещение"); 
	ТЗКоманды.Колонки.Добавить("Модификатор");
	
	НоваяКоманда = ТЗКоманды.Добавить();
	НоваяКоманда.Представление = "Выгрузка данных в базу Бухгалтерии";
	НоваяКоманда.Идентификатор = "ВыгрузкаДанныхВБазуБух";
	НоваяКоманда.Использование = "ВызовСерверногоМетода"; 
	НоваяКоманда.ПоказыватьОповещение = Истина;
	НоваяКоманда.Модификатор = "";
	
	ПараметрыРегистрации = Новый Структура;
	ПараметрыРегистрации.Вставить("Наименование", "Выгрузка данных в базу Бухгалтерии"); 
	ПараметрыРегистрации.Вставить("Информация", ""); 
	ПараметрыРегистрации.Вставить("Вид", "ДополнительнаяОбработка");  
	ПараметрыРегистрации.Вставить("Версия", "1.0");
	ПараметрыРегистрации.Вставить("БезопасныйРежим", Ложь);
	ПараметрыРегистрации.Вставить("Команды", ТЗКоманды);

	Возврат ПараметрыРегистрации;
	
КонецФункции

Добавляем процедуру ВыполнитьКоманду. Эта процедура и будет вызваться при Запуске по расписанию

 

 

Процедура ВыполнитьКоманду(ИдентификаторКоманды, ПараметрыВыполненияКоманды = Неопределено) Экспорт

КонецПроцедуры

Добавляем обработку в дополнительные обработки. Ставим галочку расписание и устанавливаем расписание.

 

 

В теле процедуры ВыполнитьКоманду:

1. - Определяем переменные, которые нам понадобятся.

- Запросом получаем "Дату запрета изменений" - эта дата будет датой начала выгрузки.

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

 

 

Запрос = Новый Запрос;
ДатаНачала = Дата(2019,1,1);
Запрос.Текст = 
	"ВЫБРАТЬ РАЗРЕШЕННЫЕ ПЕРВЫЕ 1
	|	ДОБАВИТЬКДАТЕ(ДатыЗапретаИзменения.ДатаЗапрета, ДЕНЬ, 1) КАК ДатаЗапрета
	|ИЗ
	|	РегистрСведений.ДатыЗапретаИзменения КАК ДатыЗапретаИзменения
	|ГДЕ
	|	ДатыЗапретаИзменения.Раздел = ЗНАЧЕНИЕ(ПланВидовХарактеристик.РазделыДатЗапретаИзменения.ПустаяСсылка)
	|	И ДатыЗапретаИзменения.Объект = ЗНАЧЕНИЕ(ПланВидовХарактеристик.РазделыДатЗапретаИзменения.ПустаяСсылка)
	|	И ДатыЗапретаИзменения.Пользователь = ЗНАЧЕНИЕ(перечисление.ВидыНазначенияДатЗапрета.ДляВсехПользователей)";
РезультатЗапроса = Запрос.Выполнить();
ВыборкаДетальныеЗаписи = РезультатЗапроса.Выбрать();
Пока ВыборкаДетальныеЗаписи.Следующий() Цикл
	ДатаНачала = ВыборкаДетальныеЗаписи.ДатаЗапрета;
КонецЦикла;
ДатаОкончания = ТекущаяДата();
ДатаОкончанияКонецДня = КонецДня(ДатаОкончания)+1;

ДатаВыгрузки  = Формат(ДатаОкончания, "ДФ=yyyy.MM.dd_hh.mm.ss");
ПутьНаДиске   = "\\server1c\obmen\";
ФайлПравил    = ПутьНаДиске  + "ПравилаВыгрузкиBuh.xml";
ФайлДанных    = ПутьНаДиске  + ДатаВыгрузки + "_DataBuh.xml";

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

 

2. - Формирую запрос к изменениям в узле "Изменения". (намерено не пользуюсь функцией ВыбратьИзменения, чтобы избежать "Конфликта блокировок")

- Удаляю регистрацию с узла "Изменения" и регистрирую в узел "Выгрузка"

 

 

Запрос = Новый Запрос;
текстОбъединить = "";
Для Каждого текО Из МассивВыгружаемыхОбъектов Цикл
	текстИзменения = " 
	|ВЫБРАТЬ
	|	тИзменения.Ссылка КАК Ссылка,
	|	тИзменения.Узел КАК УзелИзменений
	|ИЗ
	|	%Объект%.Изменения КАК тИзменения
	|ГДЕ
	|	тИзменения.Узел = &УзелИзменения
	|";
	текстИзменения = СтрЗаменить(текстИзменения, "%Объект%", текО);
	Запрос.Текст = Запрос.Текст + текстОбъединить + текстИзменения;
	текстОбъединить = "
	|
	|ОБЪЕДИНИТЬ ВСЕ
	|
	|";
КонецЦикла;
Запрос.УстановитьПараметр("УзелИзменения",УзелИзменения);
РезультатЗапроса = Запрос.Выполнить();
ВыборкаДетальныеЗаписи = РезультатЗапроса.Выбрать();
Пока ВыборкаДетальныеЗаписи.Следующий() Цикл
	Если НЕ ПланыОбмена.ИзменениеЗарегистрировано(УзелВыгрузки, ВыборкаДетальныеЗаписи.Ссылка) Тогда
		ПланыОбмена.ЗарегистрироватьИзменения(УзелВыгрузки, ВыборкаДетальныеЗаписи.Ссылка);
	КонецЕсли;
	ПланыОбмена.УдалитьРегистрациюИзменений(УзелИзменения, ВыборкаДетальныеЗаписи.Ссылка);
КонецЦикла;

 

3. -Сохраняю файл с Правилами обмена данными на диск

- Создаю Обработку УниверсальныйОбменДаннымиXML, заполняю необходимые для обмена параметры

- после выгрузки Удаляю файл с Правилами обмена с диска 

 

 

ДвоичныеДанные = ПолучитьМакет("Правила");
Попытка
    ДвоичныеДанные.Записать(ФайлПравил);
Исключение
	ЗаписьЖурналаРегистрации("Выгрузка в бухгалтерию",
		УровеньЖурналаРегистрации.Ошибка,
		Метаданные.Обработки.УниверсальныйОбменДаннымиXML,
    	Неопределено,
    	ОписаниеОшибки());
	Возврат;
КонецПопытки;

Обработка = Обработки.УниверсальныйОбменДаннымиXML.Создать();
Обработка.РежимОбмена = "Выгрузка";
Обработка.ВыводВОкноСообщенийИнформационныхСообщений = Ложь;
Обработка.ДатаНачала     = ДатаНачала;
Обработка.ДатаОкончания  = ДатаОкончанияКонецДня;
Обработка.ИмяФайлаПравилОбмена = ФайлПравил;
Обработка.ИмяФайлаОбмена = ФайлДанных; 
Обработка.ЗагрузитьПравилаОбмена();
Обработка.ВыполнитьВыгрузку();

Попытка
	УдалитьФайлы(ФайлПравил);  
Исключение
	Сообщить(ОписаниеОшибки());
КонецПопытки;

 

4. В Конвертации данных 2.1: 

 

 Перед выгрузкой данных определяем параметр узел "Выгрузка"

В правилах выгрузки данных каждого объекта (Перед обработкой):

В правилах конвертации объекто: в событии "При выгрузке" при удачной выгрузке удаляю регистрацию из узла "Выгрузка"

В итоге получаю файл с данными.

 

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

-Для загрузки "Правила обмена данными" не нужны. Создаем Обработку УниверсальныйОбменДаннымиXML и загружаем файл.

-После удачной загрузки сам файл перемещаем в папку "Downloaded"

 

 

Процедура ВыполнитьКоманду(ИдентификаторКоманды, ПараметрыВыполненияКоманды = Неопределено) Экспорт
	
	ПутьНаДиске   = "\\server1c\obmen\";
	табФ = Новый ТаблицаЗначений;
	табФ.Колонки.Добавить("Путь");
	табФ.Колонки.Добавить("Имя");
	табФ.Колонки.Добавить("Диск");
	МассивФайлов = НайтиФайлы(ПутьНаДиске, "*.xml", Ложь);
	Если Не МассивФайлов.Количество() Тогда
		Возврат;
	КонецЕсли;
	Для Каждого текФ Из МассивФайлов Цикл
		НоваяСтр = табФ.Добавить();
		НоваяСтр.Путь = текФ.Путь;
		НоваяСтр.Имя  = текФ.Имя;
		НоваяСтр.Диск = текФ.ПолноеИмя;
	КонецЦикла;
	
	Обработка = Обработки.УниверсальныйОбменДаннымиXML.Создать();
	Для Каждого текСтр Из табФ Цикл
		Обработка.РежимОбмена = "Загрузка";
		Обработка.ИмяФайлаОбмена = текСтр.Диск;
		Обработка.ЗагружатьДанныеВРежимеОбмена = Истина;
		Обработка.ЗаписыватьВИнформационнуюБазуТолькоИзмененныеОбъекты = Истина;
		Обработка.ОбъектыПоСсылкеЗагружатьБезПометкиУдаления = Истина;
		Обработка.ОптимизированнаяЗаписьОбъектов = Истина;
		Обработка.ЗаписыватьРегистрыНаборамиЗаписей = Истина;
		Обработка.ОбрезатьСтрокиСправа = Истина;
		Обработка.ВыполнитьЗагрузку();
		ПереместитьФайл(текСтр.Диск, текСтр.Путь + "Downloaded\" + текСтр.Имя);
	КонецЦикла;
	
КонецПроцедуры

 

 
 Полный текст процедуры ВыполнитьКоманду (Выгрузка)

Тестировал на платформе 1С:Предприятие 8.3 (8.3.15.1747)

1С:Комплексная автоматизация 2 (2.4.9.98)

Бухгалтерия предприятия КОРП, редакция 3.0 (3.0.74.63).

 

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

Комментарии
Избранное Подписка Сортировка: Древо развёрнутое
Свернуть все
1. PLAstic 253 22.01.20 14:22 Сейчас в теме
А какова прикладная задача была?
2. John_d 2454 22.01.20 14:51 Сейчас в теме
(1) Настроить односторонний обмен (через конвертацию) между двумя базами
12. PLAstic 253 23.01.20 09:21 Сейчас в теме
(2) А почему нельзя было просто встроить свой план обмена в существующий механизм?
3. Kaval88 69 22.01.20 15:26 Сейчас в теме
на БСП проще сделать, только правила загрузить и все.
ivanov660; +1 Ответить
15. Pipapalamm 23.01.20 11:45 Сейчас в теме
(3) Подскажите пожалуйста, как можно правила конвертации 2.1 "загрузить" в БСП? Реально появилась такая возможность? Где почитать? А то на Инфостарте полно вот такого рода публикаций:
https://infostart.ru/public/461158/
"а мужики то не знают..."
16. John_d 2454 23.01.20 11:49 Сейчас в теме
(15) Нельзя. Нужно дорабатывать конфигурацию.
Pipapalamm; +1 Ответить
21. glime 98 23.01.20 14:34 Сейчас в теме
(16)в легкую можно.
во внешнею обработку, в макет.
18. wtlz 150 23.01.20 12:12 Сейчас в теме
(15)можно использовать правила из файла:
Прикрепленные файлы:
19. Pipapalamm 23.01.20 12:32 Сейчас в теме
(18) Это правила КД 3. Мы говорим про обмен по правилам КД 2.
20. wtlz 150 23.01.20 12:36 Сейчас в теме
(19) КД 2 работает через это отлично, проверял лично, БСП 3.0.1.53
Pipapalamm; +1 Ответить
22. Pipapalamm 23.01.20 16:07 Сейчас в теме
(20) Ничоси! Проверю обязательно и выкину наконец свои велосипеды. Спасибо огромное!
4. dsdred 1427 22.01.20 16:29 Сейчас в теме
1 Нет проверки на удаленные объекты(битые ссылки). При попадании такого объекта обмен встанет.

2 Почему не использовать"ПланыОбмена.ВыбратьИзменения"?
ПланыОбмена.ВыбратьИзменения позволяет более гибко делать, меньше кода и проще проверять битые ссылки.

3 Почему XML, а не JSON?
XML очень жирный...

4 Два узла на один обмен...

КД 2.1, файлы, xml, два узла... по мне больше на костыль похоже чем на нормальное решение.
Светлый ум; Xershi; acanta; +3 Ответить
5. John_d 2454 22.01.20 16:38 Сейчас в теме
(4) по 2 пункту много где писали.
ВыбратьИзменения() – это метод, с которым нужно быть очень осторожным, потому что обычно, когда возникают проблемы с производительностью обменов, именно из-за этого вызова возникают блокировки.
https://infostart.ru/public/899200/
байт; +1 Ответить
7. John_d 2454 22.01.20 16:50 Сейчас в теме
(4)
1. согласен, надо сделать.
3. Конвертация Данных 3 тоже через XML.
4. выше писал для чего это делаю.
8. dsdred 1427 22.01.20 17:05 Сейчас в теме
(7)Я понимаю для чего. Я не понимаю почему именно КД.
Наверное фирма с небольшим документооборотом?

П.С. Не обращайте внимание на мои придирки. Просто дописываю мобильное приложение и не типовой обмен на http-сервисах и Вы прям на больную мозоль написали ;))
9. John_d 2454 22.01.20 17:22 Сейчас в теме
(8) КД 2 наименее трудозатратно. Кода минимум, одна процедура на выгрузку и одна на загрузку. Остальное отрабатывает КД 2.
11. байт 45 23.01.20 08:36 Сейчас в теме
(4) по 2-му пункту ВыбратьИзменения опасен тем что он не только читает изменения, но и записывает номера сообщений в записи регистрации изменений у которых номер сообщения null, все это в одной транзакции в следствии чего возникают избыточные блокировки. Ед. в выборке можно было в цикле открывать маленькие транзакции т.е разбить большую на маленькие. Это все выжимка из курса "1С:Эксперт" Виктора Богачева.
13. dsdred 1427 23.01.20 11:12 Сейчас в теме
(11)Это все понятно и в жизни я как раз разбиваю на небольшие порции.
Просто по публикации автора я понял, что обмен идет в одну сторону в одну базу и с довольно таки малым документооборотом.
Поэтому и предполагаю, что проблемы с организацией обмена через ПланыОбмена.ВыбратьИзменения быть не должно.
14. John_d 2454 23.01.20 11:16 Сейчас в теме
(13) Документооборот нормальный и как правило со временем он растет. С ВыбратьИзменения проблемы будут.
17. dsdred 1427 23.01.20 11:55 Сейчас в теме
(14)Тогда к сожалению я тем более не могу понять почему выбран такой подход к решению задачи.
6. acanta 22.01.20 16:46 Сейчас в теме
И при последних релизах БСП идентификации по гуид все равно отсутствуют.
10. metmetmet 78 23.01.20 06:54 Сейчас в теме
Для работы достаточно одной обработки Универсальный Обмен Данными XML в базе источнике и в базе приемнике? Или есть зависимые общие модули?
23. nt_ 31.01.20 12:29 Сейчас в теме
Не понял только где назначается узел обмена "Выгрузка" при обращении к обработке УниверсальныйОбменДаннымиXML?
24. John_d 2454 31.01.20 16:07 Сейчас в теме
(23) В КД 2. Перед выгрузкой данных:
 
Запрос = Новый Запрос;
Запрос.Текст = 
"ВЫБРАТЬ ПЕРВЫЕ 1
|	АТИ_ВыгрузкаВБазуБП.Ссылка КАК Узел
|ИЗ
|	ПланОбмена.ВыгрузкаВБазуБП КАК АТИ_ВыгрузкаВБазуБП
|ГДЕ
|	АТИ_ВыгрузкаВБазуБП.Наименование = ""Выгрузка""";
РезультатЗапроса = Запрос.Выполнить();
ВыборкаДетальныеЗаписи = РезультатЗапроса.Выбрать();
Пока ВыборкаДетальныеЗаписи.Следующий() Цикл
	Параметры.УзелРегистрацииВыгруженных = ВыборкаДетальныеЗаписи.Узел;
КонецЦикла;
 
Показать
25. nt_ 01.02.20 03:48 Сейчас в теме
(24) Это для удаления регистрации источника. А как натравить обработку на обход элементов узла "выгрузка"? у меня все объекты выгружает по правилу, а не только зарегистрированные.
26. John_d 2454 03.02.20 09:58 Сейчас в теме
(25) При выгрузке данных.. Упустил этот момент. Дописал статью.
27. ezhikofff 25.06.20 12:29 Сейчас в теме
День добрый. А можно картинку обновить, что в ПКО перед обработкой для каждого объекта?
Прикрепленные файлы:
28. ezhikofff 25.06.20 16:39 Сейчас в теме
(27) В общем у меня в ПВД получилась следующая обработка

Запрос = Новый Запрос;
Запрос.Текст = " 
|ВЫБРАТЬ
|	тИзменения.Узел КАК Узел,
|	тИзменения.Ссылка КАК Ссылка
|ИЗ
|	Документ.ЗаказНаПеремещение.Изменения КАК тИзменения
|ГДЕ
|	тИзменения.Узел = &УзелВыгрузки";
Запрос.УстановитьПараметр("УзелВыгрузки", Параметры.УзелВыгрузки);

ВыборкаДетальныеЗаписи = Запрос.Выполнить().Выбрать();
Пока ВыборкаДетальныеЗаписи.Следующий() Цикл
	ВыгрузитьПоПравилу(ВыборкаДетальныеЗаписи.Ссылка,,,, "ЗаказНаПеремещение");
КонецЦикла;
Показать
Прикрепленные файлы:
29. John_d 2454 25.06.20 18:15 Сейчас в теме
(28) Думаю у меня примерно также было. Позже найду и выложу новый скриншот.
30. John_d 2454 26.06.20 10:38 Сейчас в теме
(28) Да, так и было. Поставил ваш скриншот.
Оставьте свое сообщение

См. также

Регулярные выражения без внешних компонент? Легко! Промо

Практика программирования Обмен через XML v8 Бесплатно (free)

Сложный способ организовать проверку строки с помощью регулярного выражения в 1С. При этом ни одна внешняя компонента не пострадала. Ну и от платформы (Linux, MustDie) - не зависит.

04.03.2016    60275    0    starik-2005    99    

Конвертация данных 2. Использование подключаемых обработок в правилах обмена. Конвертация дерева значений

Обмен данными 1С Обмен через XML Перенос данных из 1C8 в 1C8 v8 КД Бесплатно (free)

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

15.06.2020    2190    0    Drivingblind    6    

[БСП] Обмен через Конвертацию данных 2.1

Обмен через XML v8 1cv8.cf Бесплатно (free)

Добавим новый план обмена и настроим в БСП типовой обмен через правила конвертации данных (КД 2.1)

03.02.2020    6587    0    John_d    16    

Как сделать обмен данными через универсальный формат быстрее? Реализация многопоточного обмена данными

Обмен данными 1С Обмен через XML v8 1cv8.cf Бесплатно (free)

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

31.12.2019    7390    0    ids79    17    

Загрузка из EXCEL в 1С. Чтение файла XLSX средствами 1С. ПостроительDOM Промо

Универсальные обработки Загрузка и выгрузка в Excel Обмен через XML v8 1cv8.cf Бесплатно (free)

ПРАКТИЧЕСКОЕ ПОСОБИЕ РАЗРАБОТЧИКА: Метод "NativeXLSX" (ПостроительDOM). Обрабатываются данные EXCEL типов: "Строка", "Число", "Дата" ("Время"), "Булево", "Процент", а также изображения.

11.09.2014    71315    0    StepByStep    26    

Использование XML-схемы из макета внешней обработки

Обмен через XML Универсальные функции v8 1cv8.cf Бесплатно (free)

Простой способ использования XML-схем из макета внешней обработки.

28.10.2019    10001    0    Olesia_Matusevich    10    

Преобразование XML в таблицу значений или иной объект 1С методом XSL преобразования

Универсальные функции Обмен через XML v8 1cv8.cf Бесплатно (free)

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

24.10.2019    10006    0    kraspila    28    

Доработка конвертации данных КД2 (версии 2.1). Расширенная диагностическая информация при выгрузке по правилам из 1С 7.7 и при загрузке в 1С 7.7

Обмен данными 1С Перенос данных из 1С7.7 в 1C8.X Обмен через XML v7.7 v8 КД Бесплатно (free)

Есть очень неприятная особенность при настройке обмена по правилам КД2 в момент отладки на стороне 1С 7.7, как при выгрузке из 1С 7.7, так и при загрузке в 1С 7.7. Непонятно, в каком конкретно месте формирования или разбора данных XML файла в какой именно момент споткнулась программа (произошел сбой). Я нашел способ вывода дополнительной диагностики, теперь точно известно, на каком элементе данных XML споткнулся модуль выгрузки V77Exp.ert (модуль загрузки V77Imp.ert). Теперь отладка правил обмена на стороне 1С 7.7 стала простой, выполняется на порядок проще.

18.10.2019    5257    0    ksnik    0    

Отладка правил обмена 7.7, 8 Промо

Перенос данных из 1С7.7 в 1C8.X Обмен через XML Перенос данных из 1C8 в 1C8 v8 КД Бесплатно (free)

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

29.10.2013    50951    0    pyrkin_vanya    70    

Практика XDTO. Нюансы

Практика программирования Обмен через XML v8 Бесплатно (free)

Некоторые практические моменты работы с XDTO. Дополнения к очевидному.

23.09.2019    11946    0    Yashazz    27    

Запись/Чтение XML, пример обмена по COM соединению

Обмен через XML v8 1cv8.cf Россия Бесплатно (free)

Пример работы с XML, запись и чтение, обмен по COM между одинаковыми конфигурациями.

08.09.2019    10507    0    user5300    7    

Конвертация данных 2.0. Перенос справочника с иерархией групп и элементов

Обмен через XML v8 1cv8.cf Россия Бесплатно (free)

Детективная история о том, как при переносе элементы справочника становились не "видимыми".

09.08.2019    4867    0    chagbig    5    

Обмен по расписанию типовыми средствами. Промо

Распределенная БД (УРИБ, УРБД) Обмен через XML Перенос данных из 1C8 в 1C8 v8 1cv8.cf Россия Бесплатно (free)

Часто перед интеграторами стоит задача организовать автообмен (по расписанию или при наступлении какого-либо события) данными между различными конфигурациями. В этой статье я попробую изложить простую инструкцию, как это можно сделать средствами, заложенными в типовые конфигурации 1С (ЗУП, БП, УПП и т.д.). Для обмена используется подсистема "Обмен данными" из БСП

20.06.2012    101622    0    kser87    52    

Загрузка данных в БП 3.0 (Универсальный обмен данными XML)

Обмен через XML v8::БУ БП3.0 БУ Бесплатно (free)

Решение задачи по загрузке данных из имеющегося файла в формате xml в БП 3.0 (в том числе на 1cfresh.com) без доработок

26.05.2019    4573    0    rutadmeen    0    

Программное создание xml (а можно и HTML) на основе xml схемы (XSD), через фабрику XDTO

Обмен через XML v8 1cv8.cf Бесплатно (free)

Объект XDTO, Фабрика XDTO, ПакетXDTO - как же это все сложно, или нет?

20.05.2019    9357    0    Eret1k    12    

Конвертация 3.0. Пример доработки: два справочника в один

Обмен через XML v8 КД ERP2 БП3.0 Россия Бесплатно (free)

Доработка правил конвертации путем расширения конфигурации: номенклатура и характеристика (ERP) в номенклатуру (БП).

15.05.2019    7288    0    forusing    4    

"Однопальцевое" чтение XML для 8.2 Промо

Обмен через XML v8 1cv8.cf Россия Бесплатно (free)

Простенькое чтение XML файлов или строки произвольной структуры и неограниченной вложенности. Простая и управляемая формы.

18.04.2011    45215    0    anig99    67    

Обмен данными между УПП 1.3.64.х и БП 3.0 по расписанию через Универсальный обмен данными + План обмена

Обмен через XML Перенос данных из 1C8 в 1C8 v8 УПП1 Россия Бесплатно (free)

Описание доработки конфигурации УПП 1.3.64.х для выполнения обмена данными по расписанию в БП 3.0. через обработку Универсальный Обмен Данными XML и План Обмена.

09.04.2019    6717    0    mrcamomile    15    

RabbitMQ + Конвертация Данных 3.0

Внешние источники данных Обмен через XML Интеграция Перенос данных из 1C8 в 1C8 v8 КД Бесплатно (free)

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

21.03.2019    24426    0    barelpro    82    

EnterpriseData – часть 2. Процесс выгрузки данных

Практика программирования Обмен через XML v8 v8::УФ Россия Бесплатно (free)

Основные этапы выгрузки данных через ED, обработчики событий выгрузки, правила обработки данных, правила конвертации объектов, конвертация свойств первого и второго этапов, процедуры БСП, используемые при выгрузке данных, структура «КомпонентыОбмена».

26.12.2018    24701    0    ids79    31    

Альтернативные способы работы с XML. Часть 2: Введение в xPath или запросы к XML Промо

Обмен через XML Математика и алгоритмы v8 1cv8.cf Бесплатно (free)

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

09.08.2012    41664    0    1cspecialist    13    

Неполадки в работе функционала конфигурации "Бухгалтерия предприятия 3.0" после переноса данных из одной конфигурации в другую через XML

Обмен через XML v8 БП3.0 Россия Бесплатно (free)

«Подводные камни» в работе конфигурации «Бухгалтерия предприятия 3.0» после переноса данных из одной конфигурации в другую средствами XML.

18.12.2018    4890    0    faust0923    1    

Новый подход к обмену данными EnterpriseData

Практика программирования Обмен через XML v8 v8::УФ Россия Бесплатно (free)

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

14.12.2018    37750    0    ids79    72    

MDM система для централизованного управления справочниками предприятия типовыми средствами

Обмен через XML Обработка справочников v8 1cv8.cf Бесплатно (free)

Поставили мне пару недель назад задачу настроить единые справочники номенклатуры во всех базах холдинга. Учитывая количество 1С бухгалтерий, которых в процессе выполнения задачи оказалось 32, и учитывая, что они все разных версий (2.0, 3.0, отраслевые), задача казалась из ряда чистой воды подстава. Но решение с технической точки зрения оказалось простейшим.

27.11.2018    6085    0    lopatin    6    

EnterpriseData - пример доработки правил конвертации без использования КД 3.0 в расширении конфигурации

Практика программирования Обмен через XML v8 v8::УФ БП3.0 УТ11 Россия Бесплатно (free)

В статье подробно описан реальный пример доработки обмена данными через EnterpriseData (универсальный формат обмена) между конфигурациями УТ 11.4 и Бухгалтерия 3.0

16.11.2018    34133    0    ids79    40    

Свертка номенклатуры при выгрузке из Управления Торговлей 11 в Бухгалтерию 3.0

Обмен через XML v8 БП3.0 УТ11 БУ УУ Бесплатно (free)

Свертка номенклатуры при выгрузке из УТ 11 в Бухгалтерию 3. Используется типовой обмен на базе EnterpriseData

20.07.2018    9991    0    Kutuzov    3    

Обмен через универсальный формат. Пример нестандартной конвертации данных

Обмен через XML Перенос данных из 1C8 в 1C8 v8 УТ11 Россия Бесплатно (free)

В статье описан небольшой пример обмена данными через EnterpriseData без снятия конфигурации с поддержки. Тестовая площадка: Управление торговлей, редакция 11 (11.4.3.126), версия платформы 8.3.11

18.06.2018    33533    0    artkor    12    

Создание множественного дополнительного реквизита. Управление торговлей 11

Обмен через XML Практика программирования v8 УТ11 Россия Бесплатно (free)

Создание механизма множественного дополнительного реквизита для выгрузки в битрикс.

20.03.2018    15023    0    bad_wag    19    

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

Обмен через XML v8 КД Бесплатно (free)

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

11.12.2017    21235    0    Nicholas    10    

1С: Конвертация данных 3. Инструкции и примеры. EnterpriseData (универсальный формат обмена)

Перенос данных из 1C8 в 1C8 Практика программирования Обмен через XML v8 КД Бесплатно (free)

Что такое КД3? Как начать использовать? Полезные дополнения к документации. Что нужно исправить в типовых обработках и конфигурации. Как изменить правила обмена не снимая конфигурацию с поддержки. Как отлаживать правила обмена?

19.11.2017    182134    0    MaxS    285    

Что такое конвертация данных 1С (статья написана исключительно для новичков)

Обмен через XML Перенос данных из 1C8 в 1C8 v8 КД Бесплатно (free)

О том, что "Конвертация данных" - мощный инструмент и прочую терминологию, вы прочтёте в любом источнике. Я хочу поделиться кратким пояснением как пользоваться данной конфигурацией. Речь пойдет о версии 2.1.

07.08.2017    36500    0    perepetulichka    38    

Перенос данных из базы с поврежденными таблицами

Тестирование и исправление Обмен через XML Перенос данных из 1C8 в 1C8 v8 БП2.0 Казахстан БУ УУ Бесплатно (free)

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

06.06.2017    15894    0    ermek6    14    

Работа со схемой XML в модуле обмена от Битрикс

Обмен через XML v8 1cv8.cf Бесплатно (free)

Пошаговое руководство «Как добавить поле для выгрузки в модуль обмена для битрикс» Анамнез: УПП 1.3 (Полиграфия, но не суть важно); модуль обмена 1С-Битрикс 5.0.0.5. Допустим, нам нужно добавить в структуру XML-файла поле «Основной менеджер». Поверхностный анализ модуля обмена дает нам информацию о том, что используется пространство имен «urn:1C.ru:commerceml_2».

28.12.2016    13672    0    ogroup    6    

Выгрузка и загрузка данных XML. Ускоряем выгрузку регистров бухгалтерии

Обмен через XML v8 Бесплатно (free)

Ускоренная выгрузка проводок БУ, НУ

04.07.2016    15657    0    echo77    1    

XDTO на службе у лентяев. Самый простой способ чтения xml

Обмен через XML Практика программирования v8 Бесплатно (free)

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

03.11.2015    31586    0    Ks_83    29    

Отладка конвертации данных 2.1 в конфигурациях, построенных на БСП 2.1 (БП 3.0, УТ 11 etc.)

Практика программирования Распределенная БД (УРИБ, УРБД) Обмен через XML БСП (Библиотека стандартных подсистем) v8 1cv8.cf Бесплатно (free)

Отладка процесса выгрузки/загрузки данных при проведении синхронизации в новых конфигурациях 1С может вызвать (у меня вызвала) некоторые затруднения. О них и пойдёт речь.

29.10.2015    38794    0    NittenRenegade    23    

Оптимизация новой типовой схемы обмена через синхронизацию

Практика программирования Обмен через XML v8 1cv8.cf Бесплатно (free)

В новых типовых конфигурациях УТ11 и БП3 вместо прошлой схемы обмена данными используется синхронизация данных. Однако у неё есть свои недостатки. В статье - краткое описание некоторых нюансов новой схемы и приемы для оптимизации работы с ней.

26.09.2015    23296    0    fixin    13    

Обмен данными между информационной базой и мобильным клиентом

Обмен через XML WEB v8 1cv8.cf Бесплатно (free)

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

04.08.2014    23055    0    spezc    11    

О встроенных моделях XDTO платформы 1С

Обмен через XML v8 Бесплатно (free)

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

13.02.2014    29099    0    Yashazz    10    

Загрузка из EXCEL в 1С. Чтение файла XLSX средствами 1С. ЧтениеXML

Загрузка и выгрузка в Excel Обмен через XML Практика программирования v8 1cv8.cf Бесплатно (free)

ПРАКТИЧЕСКОЕ ПОСОБИЕ РАЗРАБОТЧИКА: Метод "NativeXLSX" (ЧтениеXML). Обрабатываются данные EXCEL типов: "Строка", "Число", "Дата" ("Время"), "Булево", "Процент".

01.11.2013    108537    0    StepByStep    75    

Универсальный обмен данными XML через web-сервисы

Обмен через XML WEB Перенос данных из 1C8 в 1C8 v8 Бесплатно (free)

Организация онлайн-обмена данными в формате "Конвертации данных" через web-сервисы

08.10.2013    106237    0    Mleg    55    

Организация обмена с прочими программами через XML. Имитация двухстороннего обмена без именения конфигурации

Внешние источники данных Обмен через XML v8 Бесплатно (free)

Настраиваем обмен типовой конфигурации со сторонними базами данных, с функционалом двустороннего обмена

24.04.2013    15044    0    Stim213    6