Имя: Пароль:
1C
 
Чтение XML
0 YuriEV
 
06.02.19
12:57
Всем, добрый день!
Подскажите пожалуйста, не очень шарю в чтении XML форматов, но необходимо написать обработину.

Конфа у меня УНФ 1.6.16. Имеется вот такой текст:

<КонтактнаяИнформация xmlns="http://www.v8.1c.ru/ssl/contactinfo"; xmlns:xs="http://www.w3.org/2001/XMLSchema"; xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance"; Представление="242700, Брянская обл, Жуковский р-н, Жуковка г, Планерный пер, дом № 13"><Состав xsi:type="Адрес" Страна="РОССИЯ"><Состав xsi:type="АдресРФ"><СубъектРФ>Брянская обл</СубъектРФ><СвРайМО><Район>Жуковский р-н</Район></СвРайМО><Город>Жуковка г</Город><Улица>Планерный пер</Улица><ДопАдрЭл ТипАдрЭл="10100000" Значение="242700"/><ДопАдрЭл><Номер Тип="1010" Значение="13"/></ДопАдрЭл></Состав></Состав></КонтактнаяИнформация>

Это адрес доставки в заказе, тип "строка", мне необходимо заполнить ТЗ по следующим реквизитам "Страна", "Город", "Улица".  Все что мне пришло в голову, почитав помощник, написать:
         ИначеЕсли ЗначениеЗаполнено(Выборка.АдресДоставкиЗначенияПолей) Тогда
             ЧтениеXML = Новый ЧтениеXML;
             ЧтениеXML.УстановитьСтроку(Выборка.АдресДоставкиЗначенияПолей);
                         
             ЧтениеXML.ПрочитатьАтрибут();
             Пока ЧтениеXML.Прочитать() Цикл                  
                 ЧтениеXML.ПрочитатьАтрибут();
                 Значение = ЧтениеXML.Значение
             КонецЦикла;
         КонецЕсли;
Но в значение попадает какая то беледерда, не все данные, напирмер не попадает значение страны "Россия" и я так понимаю потому что атрибут записан в таком формате <Состав xsi:type="Адрес" Страна="РОССИЯ">. Он читает только адрес

Подскажите пожалуйста как правильно и грамотно расшифровать данную строку. Может вообще ЧтениеXML не подходит......
1 RomaH
 
naïve
06.02.19
13:08
там же БСП
посмотри функции работы с адресом
куча вариантов готовых функция, и так и эдак могут возвратить

а так - смотри в сторону XDTO
2 YuriEV
 
06.02.19
13:19
(1) ОООО спасибо огромное, получилось. Чет сижу туплю пол дня))) а там одна процедура =)))
3 Жан Пердежон
 
06.02.19
13:34
к тому же в (0) сама xml не валидная ";" явно лишние
4 DmitrO
 
06.02.19
13:39
(3)без паники, ";" добавляет искусственный интеллект этого форума :)