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

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

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

XML ЗаписьXML ЧтениеXML COMСоединение ОбменXML

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

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

1 пример - запись\чтение XML, выгрузим документ в xml файл и загрузим его обратно

2 пример, выгрузка номенклатуры в идентичную конфигурацию по COM Соединению.

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

&НаКлиенте
Функция ПолучитьПутьКФайлу(Режим)
	ЗаписьXML = Новый ЗаписьXML;
	///1 ВАРИАНТ, Прописываем путь к фалу, при записи - файл будет перезаписываться 
	ПутьКФайлу = "d:\Temp\Test.XML";
		
	///2 ВАРИАНТ, Указываем путь при сохранении/открытии 
	Диалог = Новый ДиалогВыбораФайла(Режим);
	Диалог.Заголовок = "Выбрать"; 
	Диалог.Фильтр = "XML (*.xml)|*.xml"; 
    Диалог.МножественныйВыбор = Ложь;
	Диалог.Каталог = "F:\";  	//При желании, (Открывается этот диск по умолчанию)
	Если Диалог.Выбрать() Тогда
		ПутьКФайлу = Диалог.ПолноеИмяФайла;
	Иначе 
		возврат Неопределено;
	КонецЕсли;
	
	Возврат ПутьКФайлу ;
КонецФункции

&НаКлиенте
Процедура ЗаписьВРучную_XML()
	
	ПутьКФайлу =  ПолучитьПутьКФайлу(РежимДиалогаВыбораФайла.Сохранение);
	Если ПутьКФайлу = Неопределено Тогда ///Если не выбран путь к фалу прерываем операцию
		возврат;
	КонецЕсли;
	
	Документ = СсылкаНаДокумент;  /// СсылкаНаДокумент - реквизит со ссылкой на документ "ПоступлениеТоваров"
	
	ЗаписьXML.ОткрытьФайл(ПутьКФайлу, "UTF-8"); //Открываем файл для записи, указываем кодировку
	
	ЗаписьXML.ЗаписатьОбъявлениеXML();  // Записываем объявление XML
	ЗаписьXML.ЗаписатьНачалоЭлемента("ПоступлениеТоваров"); // Начало элемента Документа "ПоступлениеТоваров"
	
	ЗаписьXML.ЗаписатьАтрибут("Код",Строка(Документ.Код));   
	ЗаписьXML.ЗаписатьАтрибут("Дата",Строка(Документ.Дата)); 
	ЗаписьXML.ЗаписатьАтрибут("Номер",Строка(Документ.Номер));
	ЗаписьXML.ЗаписатьАтрибут("Ответственный",Строка(Документ.Ответственный));
	ЗаписьXML.ЗаписатьАтрибут("Комментарии",Строка(Документ.Комментарии));
	ЗаписьXML.ЗаписатьАтрибут("Склад",Строка(Документ.Склад));
	
	///Запись табличной части "Товары"
	Для Каждого выборка из Документ.Товары Цикл  // Начинаем выгружать табличную часть "Товары"
		ЗаписьXML.ЗаписатьНачалоЭлемента("ТаблицаТовары"); // Начало элемента "ТаблицаТовары"
		
		ЗаписьXML.ЗаписатьАтрибут("Номенклатура",Строка(Выборка.Номенклатура));
		//ЗаписьXML.ЗаписатьАтрибут("КодНоменклатуры",Строка(Выборка.Номенклатура.Код)); ///ЕСЛИ СОВПАДАЮТ КОДЫ В БАЗАХ, МОЖНО ПРОИЗВОДИТЬ ПОИСК ПО КОДУ ПРИ ЧТЕНИИ
		ЗаписьXML.ЗаписатьАтрибут("Количество",Строка(Выборка.Количество));
		ЗаписьXML.ЗаписатьАтрибут("Цена",Строка(Выборка.Цена));
		ЗаписьXML.ЗаписатьАтрибут("Сумма",Строка(Выборка.Сумма));
		ЗаписьXML.ЗаписатьАтрибут("ЕД",Строка(Выборка.Номенклатура.ЕдиницаИзмерения));
		
		ЗаписьXML.ЗаписатьКонецЭлемента(); // Конец элемента "ТаблицаТовары"
	КонецЦикла;
	ЗаписьXML.ЗаписатьКонецЭлемента(); // Конец элемента "ПоступлениеТоваров"
	Сообщить("Файл успешно записан!");

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

Чтение файла:

&НаКлиенте
Процедура ЧтениеВРучную_XML()
	ПутьКФайлу =  ПолучитьПутьКФайлу(РежимДиалогаВыбораФайла.Открытие);
	Если ПутьКФайлу = Неопределено Тогда ///Если не выбран путь к фалу прерываем операцию
		возврат;
	КонецЕсли;
			
	ЧтениеXML = Новый ЧтениеXML;	
	ЧтениеXML.ОткрытьФайл(ПутьКФайлу);  //Открываем файл
	
	///Запись документа должна быть на сервере
	ЧтениеXMLНаСервере(ЧтениеXML);
	ПоказатьОповещениеПользователя("Уведомление",,"Документ записан!",БиблиотекаКартинок.Успешно32);
КонецПроцедуры

&НаСервере
Процедура ЧтениеXMLНаСервере(ЧтениеXML)
	
	Документ = Документы.ПоступлениеТоваров.СоздатьДокумент();  ///НОВЫЙ ДОКУМЕНТ
	Товары =  Документ.Товары; 									///ТАБЛИЧНАЯ ЧАСТЬ "Товары"
	
	Пока ЧтениеXML.Прочитать() Цикл  //Цикл по структуре
		Если ЧтениеXML.ТипУзла = ТипУзлаXML.НачалоЭлемента Тогда  //Определяем начало элемента
			Если ЧтениеXML.Имя = "ПоступлениеТоваров" Тогда
				Документ.Код 			= ЧтениеXML.ЗначениеАтрибута("Код");
				Документ.Дата 			= Дата(ЧтениеXML.ЗначениеАтрибута("Дата")); ///Преобразовываем обратно в дату
				Документ.Номер 			= ЧтениеXML.ЗначениеАтрибута("Номер");
				Документ.Ответственный 	= Справочники.Пользователи.НайтиПоНаименованию(ЧтениеXML.ЗначениеАтрибута("Ответственный"));
				Документ.Комментарии 	= ЧтениеXML.ЗначениеАтрибута("Комментарии");
				Документ.Склад 			= Справочники.Склады.НайтиПоНаименованию(ЧтениеXML.ЗначениеАтрибута("Склад"));
			КонецЕсли;
			Если ЧтениеXML.Имя = "ТаблицаТовары" Тогда   ///Чтение элемента  "ТаблицаТовары"
				НоваяСтрока = Товары.Добавить();
				НоваяСтрока.Номенклатура       = Справочники.Пользователи.НайтиПоНаименованию(ЧтениеXML.ЗначениеАтрибута("Номенклатура"));
				//НоваяСтрока.КодНоменклатуры  = Справочники.Пользователи.НайтиПоКоду(ЧтениеXML.ЗначениеАтрибута("КодНоменклатуры"));
				НоваяСтрока.Количество         = Число(ЧтениеXML.ЗначениеАтрибута("Количество"));
				НоваяСтрока.Цена               = Число(ЧтениеXML.ЗначениеАтрибута("Цена"));
				НоваяСтрока.Сумма              = Число(ЧтениеXML.ЗначениеАтрибута("Сумма"));
				НоваяСтрока.ЕД                 = НоваяСтрока.Номенклатура.ЕденицаИзмерения;
			КонецЕсли;
		КонецЕсли ;
	КонецЦикла;
	
	Документ.Записать(РежимЗаписиДокумента.Проведение);	

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

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

Пример Выгрузки и загрузки данных между одинаковыми базами средствами XDTO.

&НаКлиенте
Процедура ЗаписьСредствамиXDTO_XML()
	
	ПутьКФайлу =  ПолучитьПутьКФайлу(РежимДиалогаВыбораФайла.Сохранение);
	Если ПутьКФайлу = Неопределено Тогда ///Если не выбран путь к фалу прерываем операцию
		возврат;
	КонецЕсли;
	
	Документ = СсылкаНаДокумент;  /// СсылкаНаДокумент - реквизит со ссылкой на документ "ПоступлениеТоваров"
	
    /////////////////////////////////////////////////////////////////////////
    //Выгрузка
    
    Запись = Новый ЗаписьXML;
    ЗаписьXML.ОткрытьФайл(ПутьКФайлу, "UTF-8"); //Открываем файл для записи, указываем кодировку
    
    //записываем объявление xml файла: <?xml version="1.0"?>
    Запись.ЗаписатьОбъявлениеXML();
    
    //записываем корневой элемент, по спецификации xml он может быть только один, назовем его "Данные"
    Запись.ЗаписатьНачалоЭлемента("ПоступлениеТоваров");
    
    //для того чтобы пространства имен не объявлялись сериализатором в кажом элементе, пишем их в корневой элемент
    //они будут работать на все вложеные элементы
    //пространство имен по-умолчанию
    Запись.ЗаписатьСоответствиеПространстваИмен("", "http://v8.1c.ru/8.1/data/enterprise/current-config");
    
    //пространства имен остальные префиксы
    Запись.ЗаписатьСоответствиеПространстваИмен("xsd", "http://www.w3.org/2001/XMLSchema");
    Запись.ЗаписатьСоответствиеПространстваИмен("xsi", "http://www.w3.org/2001/XMLSchema-instance");
    
       
     //вместо этого кода в боевой реализации выгрузки будет создание ОбъектаXDTO и его сериализация
     //через ФабрикуXDTO и загруженные в нее схемы конфигурации приемника
     СериализаторXDTO.ЗаписатьXML(Запись, Документ.ПолучитьОбъект());
	
	/////ПРИМЕР ЗАПИСИ НЕСКОЛЬКИХ ДОКУМЕНТОВ 
	//Выборка = Справочники.ПоступлениеТоваров.Выбрать();
	//Пока Выборка.Следующий() Цикл        
	//    СериализаторXDTO.ЗаписатьXML(Запись, Выборка.ПолучитьОбъект());
	//КонецЦикла;

    
    //записываем конец корневого элемента
    Запись.ЗаписатьКонецЭлемента();
    Сообщить("Файл успешно записан!");

	//// посмотреть содержимое xml
	//Текст = Запись.Закрыть();
	//Сообщить("Содержимое файла:");
	//Сообщить(Текст);
    
КонецПроцедуры


/////////////////////////////////ЗАГРУЗИМ ОБРАТНО 
////////////////////////////////////////////////////

&НаКлиенте
Процедура  ЧтениеСредствамиXDTO_XML()
	
	ПутьКФайлу =  ПолучитьПутьКФайлу(РежимДиалогаВыбораФайла.Открытие);
	Если ПутьКФайлу = Неопределено Тогда ///Если не выбран путь к фалу прерываем операцию
		возврат;
	КонецЕсли;

	/////////////////////////////////////////////////////////////////////////
    //Загрузка
    
    Чтение = Новый ЧтениеXML;	
	Чтение.ОткрытьФайл(ПутьКФайлу);  //Открываем файл
	
	///Запись документа должна быть на сервере
	ЧтениеXMLНаСервереЧасть2(Чтение);
	
КонецПроцедуры

&НаСервере
Процедура ЧтениеXMLНаСервереЧасть2(Чтение)
	
	//прочитаем начало xml файла
    Чтение.ПерейтиКСодержимому();
    
    //прочитаем начало корневого элемента
    Чтение.Прочитать();
    
    //читаем содержимое пока текущим не станет конец корневого элемента, т.к. мы писали туда только целые элементы справочника,
    //а сериализатор читает каждый из их полностью, то мы упремся именно в конец корневого
    Пока Чтение.ТипУзла<>ТипУзлаXML.КонецЭлемента Цикл
        
        //читаем очередной элемент справочника
        Объект = СериализаторXDTO.ПрочитатьXML(Чтение);
        //покажем что прочитали, осталось только записать объект
        Сообщить(""+ТипЗнч(Объект)+" - "+Объект);
		Объект.Записать(РежимЗаписиДокумента.Проведение);
    КонецЦикла;
    
    Чтение.Закрыть();

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

 

Пример выгрузки номенклатуры в одинаковую базу, без сохранения файла XML на диске: 

&НаСервере
Функция ПодключениеПоCOM()
	//КаталогБазыДанных="C:\ЗУП3";     ///ФАЙЛОВАЯ БАЗА
	
	БазаДанных		="ZUP3";          ///СЕРВЕР
	Сервер			="Server1";
	Пользователь	="Admin";
	Пароль			="Admin";

	V8 = Новый COMОбъект("V83.ComConnector"); 
	//Открытие = "file='" + КаталогБазыДанных + "'; usr='" + Пользователь + "'; pwd='" + Пароль + "';";        			/// ФАЙЛОВОЕ
	Открытие= "srvr='" + Сервер + "'; ref='" + БазаДанных + "'; usr='" + Пользователь + "'; pwd='" + Пароль + "';";     /// СЕРВЕРНОЕ
		
	Соединение = V8.Connect(Открытие);
	Возврат Соединение;	
КонецФункции

&НаСервере
Процедура ПодключитьсяИЗаписать()

	Соединение = ПодключениеПоCOM();
    /////////////////////////////////////////////////////////////////////////
    //Выгрузка
    
    Запись = Новый ЗаписьXML;
    Запись.УстановитьСтроку();
    
    //записываем объявление xml файла: <?xml version="1.0"?>
    Запись.ЗаписатьОбъявлениеXML();
    
    //записываем корневой элемент, по спецификации xml он может быть только один, назовем его "Данные"
    Запись.ЗаписатьНачалоЭлемента("Данные");
    
    //для того чтобы пространства имен не объявлялись сериализатором в кажом элементе, пишем их в корневой элемент
    //они будут работать на все вложеные элементы
    //пространство имен по-умолчанию
    Запись.ЗаписатьСоответствиеПространстваИмен("", "http://v8.1c.ru/8.1/data/enterprise/current-config");
    
    //пространства имен остальные префиксы
    Запись.ЗаписатьСоответствиеПространстваИмен("xsd", "http://www.w3.org/2001/XMLSchema");
    Запись.ЗаписатьСоответствиеПространстваИмен("xsi", "http://www.w3.org/2001/XMLSchema-instance");
    
    //ограничение количества выгружаемых элементов для примера
    Кол = 4;
    Выборка = Справочники.Номенклатура.Выбрать();
    Пока Выборка.Следующий() Цикл
        
        //вместо этого кода в боевой реализации выгрузки будет создание ОбъектаXDTO и его сериализация
        //через ФабрикуXDTO и загруженные в нее схемы конфигурации приемника
        СериализаторXDTO.ЗаписатьXML(Запись, Выборка.ПолучитьОбъект());
        //
        
        Кол = Кол - 1;
        Если Кол=0 Тогда
            Прервать;
        КонецЕсли;
    КонецЦикла;
    
    //записываем конец корневого элемента
    Запись.ЗаписатьКонецЭлемента();
    Текст = Запись.Закрыть();
    
    //а теперь загрузим это  в новую базу 
    
    /////////////////////////////////////////////////////////////////////////
    //Загрузка
    
    Чтение = Соединение.NewObject("ЧтениеXML");
    Чтение.УстановитьСтроку(Текст);
    
    //прочитаем начало xml файла
    Чтение.ПерейтиКСодержимому();
    
    //прочитаем начало корневого элемента
    Чтение.Прочитать();
    
    //читаем содержимое пока текущим не станет конец корневого элемента, т.к. мы писали туда только целые элементы справочника,
    //а сериализатор читает каждый из их полностью, то мы упремся именно в конец корневого
    Пока Чтение.ТипУзла<>ТипУзлаXML.КонецЭлемента Цикл
        
        //читаем очередной элемент справочника
        Объект = Соединение.СериализаторXDTO.ПрочитатьXML(Чтение);
        
        //покажем что прочитали, осталось только записать объект
       // Сообщить(""+ТипЗнч(Объект)+" - "+Объект);
	   
	   //Запишем..
		Объект.Записать();
    КонецЦикла;
    
    Чтение.Закрыть();
	Сообщить("Операция завершена!");
	
КонецПроцедуры

Кстати, можно использовать данный метод между не типовыми конфигурациями,  без использования "СериализаторXDTO" как в первом примере )

Спасибо за внимания! Прошу строго не судить ) возможно данный пример поможет именно для решение вашей задачи !) Удачи (=

Буду рад услышать более эффективные решения для подобных задач ! Спасибо !)

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

Комментарии
Избранное Подписка Сортировка: Древо
1. gospodenkods 09.09.19 08:29 Сейчас в теме
Интересно. А какой смысл гонять xml через COM ? Имея COM можно и напрямую общаться не используя XML
artfa; fomix; altu71; nomad_irk; A_Max; +5 Ответить
5. cool99 09.09.19 11:50 Сейчас в теме
(1)
(4)
Можно банально гонять XML/JSON через WS предварительно зазиповав в хранилище значения
6. gospodenkods 09.09.19 13:32 Сейчас в теме
(5)
Можно конечно .

Но XML через COM уж больно броско в глаза .

По мне так COM если есть , то через него напрямую и работать .

XML / JSON особенно over HTTP тогда , когда или нет вариантов COM или клиенты разные.
2. dsdred 1324 09.09.19 09:42 Сейчас в теме
И опять COM, xml...
У Вас же была предыдущая статья с web-сервисами, зачем тут то опять "назад в прошлое"?
3. user5300 145 09.09.19 09:53 Сейчас в теме
(2) Не все хотят заморачиваться с Web - Сервисами, а здесь обзор простого примера,
и (1) Сериализатор поможет избавится от большого программного кода (=
4. dsdred 1324 09.09.19 09:59 Сейчас в теме
(3)
Не все хотят заморачиваться с Web - Сервисами

Согласен, можно менее геморойно использовать http-сервисы и OData

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

Согласен, при этом 1C работает с форматом JSON
7. ovasiliev 09.10.19 16:14 Сейчас в теме
Что вы напали на человека? Если у вас две базы на одном серваке крутятся, вы для риал-тайм обмена между ними будете веб-сервер поднимать и с веб-сервисами заморачиваться?..
А XML - стандартный формат обмена данными даже в клиент-серверном взаимодействии. Всё через сериализацию..
Drivingblind; user5300; +2 Ответить
Оставьте свое сообщение

См. также

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

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

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

03.02.2020    3994    John_d    16       

INFOSTART MEETUP Kazan. 13 марта 2020 г. Промо

Инфостарт продолжает путешествие по России. Следующая остановка - Казань. Тема мероприятия - управление и технологии автоматизации учета на платформе "1С: Предприятие". Ждем всех: докладчиков и участников! Стоимость участия - 5 500 рублей. Цена действительна до 30.01.2020

5 500

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

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

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

22.01.2020    3063    John_d    26       

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

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

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

31.12.2019    4464    ids79    17       

Онлайн-курс "Подготовка к экзамену 1С:Эксперт и 1С:Профессионал по технологическим вопросам" с 7 по 24 апреля 2020 г. Промо

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

16450 рублей

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

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

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

24.10.2019    6245    kraspila    27       

1C:Предприятие для программистов: Запросы и отчеты. Второй поток. Онлайн-интенсив с 17 марта по 16 апреля 2020 г. Промо

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

6500 рублей

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

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

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

18.10.2019    3074    ksnik    0       

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

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

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

23.09.2019    7281    Yashazz    27       

Голосование за доклады на INFOSTART MEETUP Kazan - до 25 февраля. Промо

Выбирайте и голосуйте за самые интересные доклады! Лучшие из лучших попадут в окончательную программу казанского митапа. Оставить свой голос можно до 25 февраля 2020 года.

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

Статья Программист Нет файла v8 1cv8.cf Россия Бесплатно (free) Обмен через XML

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

09.08.2019    2793    chagbig    4       

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

Статья Программист Нет файла v8::БУ БП3.0 БУ Бесплатно (free) Обмен через XML

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

26.05.2019    3015    rutadmeen    0       

1C:Предприятие для программистов: Расчетные задачи (зарплата). Онлайн-интенсив с 01 по 17 июня 2020 г. Промо

Данный онлайн-курс предусматривает изучение механизмов платформы “1С:Предприятие”, которые предназначены для автоматизации периодических расчетов, а именно - для расчета зарплаты. Курс предназначен для тех, кто уже имеет определенные навыки конфигурирования и программирования в системе “1С:Предприятие”, а также для опытных пользователей прикладного решения “1С:Зарплата и управление персоналом” и прочих прикладных решений, в которых реализован функционал расчета зарплаты.

4900 рублей

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

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

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

15.05.2019    5078    forusing    4       

Базовый курс по обмену данными в системе 1С:Предприятие. Онлайн-интенсив с 12 по 28 мая 2020 г. Промо

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

5500 рублей

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

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

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

09.04.2019    4559    mrcamomile    6       

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

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

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

21.03.2019    18425    barelpro    82       

​​​​​​​CorelDRAW Graphics Suite 2019 Промо

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

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

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

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

26.12.2018    18688    ids79    27       

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

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

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

18.12.2018    3541    faust0923    1       

Готовые переносы данных из различных конфигураций 1C Промо

Рекомендуем готовые решения для переноса данных из различных конфигураций 1C. C техподдержкой от разработчиков и гарантией от Инфостарт.

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

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

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

14.12.2018    29525    ids79    72       

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

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

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

27.11.2018    4633    lopatin    5       

Сдача регламентированной отчетности из программ 1С Промо

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

от 1500 руб.

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

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

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

16.11.2018    26251    ids79    25       

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

Статья Программист Нет файла v8 БП3.0 УТ11 БУ УУ Бесплатно (free) Обмен через XML

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

20.07.2018    8253    Kutuzov    3       

Новый раздел на Инфостарте - Electronic Software Distribution Промо

Инфостарт напоминает: на нашем сайте можно купить не только ПО, связанное с 1С. В нашем арсенале – ESD-лицензии на ПО от ведущих вендоров: Microsoft, Kaspersky, ESET, Dr.Web, Аскон и другие.

  • Низкие цены, без скрытых платежей и наценок
  • Оперативная отгрузка
  • Возможность оплаты с личного счета (кешбек, обмен стартмани на рубли и т.п.)
  • Покупки идут в накопления для получения скидочных карт лояльности Silver (5%) и Gold (10%)

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

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

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

18.06.2018    28415    artkor    12       

Подборка программ для взаимодействия с ЕГАИС Промо

ЕГАИС (Единая государственная автоматизированная информационная система) - автоматизированная система, предназначенная для государственного контроля за объёмом производства и оборота этилового спирта, алкогольной и спиртосодержащей продукции. Инфостарт рекомендует подборку проверенных решений для взаимодействия с системой.

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

Статья Программист Нет файла v8 КД Бесплатно (free) Обмен через XML

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

11.12.2017    18254    Nicholas    10       

Программы для исполнения 488-ФЗ: Маркировка товаров Промо

1 января 2019 года вступил в силу ФЗ от 25.12.2018 № 488-ФЗ о единой информационной системе маркировки товаров с использованием контрольных (идентификационных) знаков, который позволяет проследить движение товара от производителя до конечного потребителя. Инфостарт предлагает подборку программ, связанных с применением 488-ФЗ и маркировкой товаров.

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

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

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

19.11.2017    162106    MaxS    261       

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

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

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

07.08.2017    33364    perepetulichka    38