Помощь - Поиск - Пользователи - Календарь
Полная версия этой страницы: Прочитать атрибут xml
Украинский 1С форум: всё про 1С 8.3, 1С 8.2, 1С 8.1, 1С 8.0, 1С 7.7 > Программисту > Программирование в 1С Предприятие 8.2 > Программирование обычных форм 1С 8.2 и не интерфейсной логики
alexkhua
Подскажите пожалуйста в чем тут ошибка? Есть xml -файл
<?xml version="1.0" encoding="UTF-8" ?> 
- <V8Exch:_1CV8DtUD xmlns:V8Exch="http://www.1c.ru/V8/1CV8DtUD/" xmlns:v8="http://v8.1c.ru/data" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance">
- <V8Exch:Data>
- <CatalogObject.Контрагенты>
  <Ref>15d2cf6a-0a73-11e2-bd13-002454b55e98</Ref>
  <DeletionMark>false</DeletionMark>
  <Code>000000002</Code>
  <Description>Мегапромсервис ТОВ</Description>
  <НаименованиеКонтрагента />
  </CatalogObject.Контрагенты>
............


Нужно получить значение наименования контрагента :"Мегапромсервис ТОВ"

Есть код:

Процедура ПрочитатьXMLфайл(файлик)
//       
     ПутьКфайлу=файлик[0];
    
    ЧтениеXML = Новый ЧтениеXML;
    ЧтениеXML.ОткрытьФайл(ПутьКфайлу);
                        

    
CS = Новый СписокЗначений;
    Пока ЧтениеXML.Прочитать() Цикл
        Если ЧтениеXML.ТипУзла=ТипУзлаXML.НачалоЭлемента Тогда
            ЧтениеXML.ПрочитатьАтрибут();
            Атрибут = ЧтениеXML.Значение;
        КонецЕсли;
        
        Если  ЧтениеXML.ТипУзла = ТипУзлаXML.Текст Тогда
            
            Если Атрибут ="НаименованиеКонтрагента" Тогда
                CS.Добавить(ЧтениеXML.Значение);
            КонецЕсли;
        КонецЕсли;
        
        КонецЦикла

КонецПроцедуры
pablo
У Вас в файле XML НаименованиеКонтрагента не задано.
alex040269
Если память не изменяет, то НаименованиеКонтрагента - єто не атрибут, а имя узла.
Petre
<НаименованиеКонтрагента /> - означает отсутствие значения. Если бы значение было - выглядело бы так: <НаименованиеКонтрагента>Мегапромсервис ТОВ</НаименованиеКонтрагента>
kivals
Судя по предоставленным Вами значению и примеру, а также принимая правильные ответы других участников переформулирую вопрос:
Цитата
Вам нужно получить значение вложенного узла Description для узла CatalogObject.Контрагенты

Возможно это прояснит ситуацию?

Для просмотра полной версии этой страницы, пожалуйста, пройдите по ссылке.