|
Добавить узел в xml документ | ☑ | ||
---|---|---|---|---|
0
furen23
17.01.17
✎
22:27
|
ОбъектXML = Новый ЧтениеXML;
ОбъектXML.ОткрытьФайл(ПутьКФайлу); ПостроительDOM = Новый ПостроительDOM; ДокументDOM = ПостроительDOM.Прочитать(ОбъектXML); ОбъектXML.Закрыть(); СписокЭлементов = ДокументDOM.ПолучитьЭлементыПоИмени("offer"); Для каждого Элемент Из СписокЭлементов Цикл СписокАтрибутов = Элемент.Атрибуты; Для каждого Атрибут из СписокАтрибутов Цикл Если Атрибут.ИмяУзла = "id" тогда артикул = Атрибут.Значение; КонецЕсли; КонецЦикла; СписокУзлов = Элемент.ДочерниеУзлы; ДЛя Каждого Узел из СписокУзлов цикл Если Узел.ИмяУзла = "categoryId" тогда КодКатегории =Узел.ТекстовоеСодержимое; СписокКатегорий = ДокументDOM.ПолучитьЭлементыПоИмени("category"); Для Каждого Категория из СписокКатегорий Цикл АтрибутыКатегорий = Категория.Атрибуты; ДЛя каждого Атрибута из АтрибутыКатегорий цикл Если Атрибута.ИмяУзла = "id" тогда Если Атрибута.Значение = КодКатегории тогда значение = Атрибута.ЭлементВладелец; ТипТовара = значение.ТекстовоеСодержимое; КонецЕсли; КонецЕсли КонецЦикла; КонецЦикла; конецЕсли; Если Узел.ИмяУзла = "name" тогда Имя = Узел.ТекстовоеСодержимое; НовоеИмя = Имя; Узел.ТекстовоеСодержимое = НоваяСтрока+" "+НовоеИмя+" "+Артикул; СледующийУзел = Узел.СледующийСоседний; Если СледующийУзел.ИмяУзла<> "vendor" тогда КонецЕсли; КонецЕсли; КонецЦикла; КонецЦикла; ЗаписьXML = Новый ЗаписьXML; ЗаписьXML.ОткрытьФайл(ПутьКФайлу); ЗаписьDOM = Новый ЗаписьDOM; ЗаписьDOM.Записать(ДокументDOM, ЗаписьXML); ЗаписьXML.Закрыть(); Есть xml документ с определённой структурой,если после узла "name" нет узла "vendor", то его нужно создать. Как узнать есть ли узёл я смог: Если СледующийУзел.ИмяУзла<> "vendor" тогда КонецЕсли; Но как его сюда добавить? |
|||
1
furen23
18.01.17
✎
01:54
|
???
|
|||
2
Fram
18.01.17
✎
02:05
|
ДокументDOM.СоздатьЭлемент
потом Узел.ВставитьПеред |
Форум | Правила | Описание | Объявления | Секции | Поиск | Книга знаний | Вики-миста |