Стояла задача загрузить документы и справочники из 1С:Бух в свою базу.
Методом тыка был разработан очень простой способ:
ФайлСообщения = Новый ЧтениеТекста(ИмяФайла);
ТекстСообщения = ФайлСообщения.Прочитать();
ТекстСообщения = СтрЗаменить(ТекстСообщения,"http://www.w3.org/2001/XMLSchema-instance","http://v8.1c.ru/messages");//ЭТО СУТЬ МЕТОДА — замена пространства имен во всех строках на то что указано в шапке сообщения
ОбъектXDTO = ФабрикаXDTO.ПрочитатьXML(ЧтениеXML);
Сообщения обмена открываются в виде ОбъектаXDTO — цель достигнута.
Но остался один
вопрос!
Какой XDTO-пакет нужно создать, чтобы не приходилось менять ссылки на пространство имен в строчках такого типа???:
<Контрагент xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" xsi:type="CatalogRef.Контрагенты">3722b978-d17a-11e5-89f0-001fc663b5b0</Контрагент>
На заметку:
Прочитать данные из этой строки можно так:
ОбъектXDTO.Body.DocumentObject_СписаниеСРасчетногоСчета[0].Контрагент.Последовательность().ПолучитьТекст(0);