1. Наш канал codeby в telegram. Пишем об информационной безопасности, методах защиты информации, о программировании. Не пропускай новости с кодебай, будь в тренде ! Подробнее ...

    Скрыть объявление

Чтение Xml - Файла

Тема в разделе "Базы данных и администрирование", создана пользователем Дайнеко, 10 янв 2013.

  1. Дайнеко

    Дайнеко Well-Known Member

    Репутация:
    0
    Регистрация:
    19 ноя 2009
    Сообщения:
    951
    Симпатии:
    0
    Читаю ХML:
    Код:
    	Пока Чтение.Прочитать() Цикл
    Сообщить(Чтение.Имя);
    Если НЕ Входит(Чтение.Имя, "Стр") Тогда
    Продолжить;
    КонецЕсли;
    .....
    Значение = Чтение.ПолучитьАтрибут(Имя);
    .....
    КонецЦикла;
    Сам исходный XML:
    <?xml version="1.0"?>
    <СчетаРеализации>
    <Стр1 СчетРез="90.09" СчетВыр="90.01" СчетНдс="90.02" СчетСто="90.04"/>
    <Стр2 СчетРез="91.09" СчетВыр="91.01" СчетНдс="91.02" СчетСто="91.04"/>
    </СчетаРеализации>


    Проблема в том, вопреки моим ожиданиям цикл проходит в 2 раза больше чем нужно.
    Поставил команду Сообщить. Она выдает:
    СчетаРеализации
    Стр1
    Стр1
    Стр2
    Стр2
    СчетаРеализации
     
  2. SeverBap

    SeverBap Well-Known Member

    Репутация:
    0
    Регистрация:
    18 сен 2007
    Сообщения:
    451
    Симпатии:
    0
    Я обычно такое грохал так:
    Код:
    ЧтениеХМЛ = Новый ЧтениеXML;
    ПараметрыЧтенияХМЛ = Новый ПараметрыЧтенияXML(,,,,,,,,Истина);
    ЧтениеХМЛ.ОткрытьФайл(ФайлХМЛ,ПараметрыЧтенияХМЛ);
    ДОМ = Новый ПостроительDOM();
    ДокументDOM = ДОМ.Прочитать(ЧтениеХМЛ);
    СписокСчетаРеализации=ДокументDOM.ПолучитьЭлементыПоИмени("СчетаРеализации");
    Для Каждого СчетаРеализации Из СписокСчетаРеализации Цикл
    Для Каждого ПараметрУзел Из СчетаРеализации.ДочерниеУзлы Цикл
    
    Если НЕ Входит(ПараметрУзел.ИмяУзла, "Стр") Тогда
    Продолжить;
    КонецЕсли;
    
    КонецЦикла;
    КонецЦикла;
     
Загрузка...

Поделиться этой страницей