Помощь - Поиск - Пользователи - Календарь
Полная версия этой страницы: Як прочитати значення параметра в XML файлі?
Украинский 1С форум: всё про 1С 8.3, 1С 8.2, 1С 8.1, 1С 8.0, 1С 7.7 > Программисту > Программирование в 1С Предприятие 8.3
burza
як витягнути дані с такого xml підкажіть, нічого не виходить.



сам параметр показивает а вот как витянуть само значение!???

 ЧтениеXML = Новый ЧтениеXML; 
    ЧтениеXML.ОткрытьФайл(Объект.ПутьКФайлу);
    
    Итем = ФабрикаXDTO.ПрочитатьXML(ЧтениеXML);
    
    Для Каждого Итем из Итем.item Цикл
        
          НоваяСтрока = Объект.Данные.Добавить();
          
           НоваяСтрока.id = Итем.id;
           НоваяСтрока.categoryId = Итем.categoryId;
           НоваяСтрока.vendorCode = Итем.vendorCode;
           НоваяСтрока.vendor = Итем.vendor;
           НоваяСтрока.name = Итем.name;
           НоваяСтрока.name_ru = Итем.name_ru;
           НоваяСтрока.description = Итем.description;
           НоваяСтрока.description_ru = Итем.description_ru;
           НоваяСтрока.UCGFA = Итем.UCGFA;
           НоваяСтрока.price_main_val = Итем.price_main_val;
           НоваяСтрока.price_main = Итем.price_main;
           НоваяСтрока.price_rrc = Итем.price_rrc;
           НоваяСтрока.price = Итем.price;
           НоваяСтрока.price_val = Итем.price_val;
           НоваяСтрока.currency = Итем.currency;
           НоваяСтрока.rate = Итем.rate;
           НоваяСтрока.stock = Итем.stock;
           //НоваяСтрока.BarCode = Итем.BarCode;
          

             
          //////Список по параметрам///////////////
               Если ТипЗнч(Итем.param) = Тип("СписокXDTO") тогда //Если Итем.param = "СписокXDTO"  тогда
                  
                   Для Каждого Стр из Итем.param цикл
                      
                       Если Стр.name = "Розмір" тогда                  
                       НоваяСтрока.param = Стр.name;
                                          НоваяСтрока.param_1= Стр;
                       ИначеЕсли Стр.name = "Маса, кг" тогда              
                       НоваяСтрока.param2 = Стр.name;              
                       ИначеЕсли Стр.name = "Ручка" тогда              
                       НоваяСтрока.param3 = Стр.name;
                       ИначеЕсли Стр.name = "Колір" тогда                  
                       НоваяСтрока.param4 = Стр.name;
                       ИначеЕсли Стр.name = "Тип товарів" тогда                  
                       НоваяСтрока.param5 = Стр.name;
      
                           КонецЕсли;
                    Конеццикла;
                КонецЕсли;
sava1
типо так

 Последовательность = ОбъектXDTO.Последовательность();
    Для Ид=0 По Последовательность.Количество()-1 Цикл
        
        offer = Последовательность.ПолучитьЗначение(Ид);
        
        НовСтр = ТзНом.Добавить();
        НовСтр.name = offer.name;
        НовСтр.id = offer.id;
        
    КонецЦикла;

burza
sava1 @ Сегодня, 11:40 необходимо зарегистрироваться для просмотра ссылки ,
тоже самое что у меня. данные не вытянуло. разницы никакой


я не могу найти где само значение типо размер 24"/600мм имя параметра есть а его значение нет!
sava1
так теперь еще по param пройтись

Последовательность = ОбъектXDTO.param.Последовательность();

и для имидж тоже
burza
sava1 @ Вчера, 13:07 необходимо зарегистрироваться для просмотра ссылки ,
может я шот не так делаю но не работает
burza
burza @ Сегодня, 7:03 необходимо зарегистрироваться для просмотра ссылки ,

Имя параметра Последовательность не обнаружено.
делаю в цикле общем

        Последовательность = Итем.param.Последовательность();
        Для Ид=0 По Последовательность.Количество()-1 Цикл
        
        offer = Последовательность.ПолучитьЗначение(Ид);
        
        //НовСтр = ТзНом.Добавить();
        НоваяСтрока.param = offer.name;
              
    КонецЦикла;


burza @ Сегодня, 8:24 необходимо зарегистрироваться для просмотра ссылки ,
Метод объекта не обнаружен (Последовательность)
{Обработка.ЗагрузкаДаных.Форма.Форма.Форма(184)}:Последовательность = Итем.param.Последовательность();


burza @ Сегодня, 9:02 необходимо зарегистрироваться для просмотра ссылки ,
что не кто не читал такой xml ?
andr_andrey
Цитата(burza @ 05.07.23, 9:27) необходимо зарегистрироваться для просмотра ссылки
Метод объекта не обнаружен (Последовательность)

По вашим скринам, offer.param имеет тип СписокXDTO. Значит можно в справке прочитать, какие методы есть у объекта данного типа:

необходимо зарегистрироваться для просмотра ссылки
Элементы коллекции:

ОбъектXDTO; ЗначениеXDTO
Для объекта доступен обход коллекции посредством оператора Для каждого … Из … Цикл. При обходе выбираются значение элемента списка.
Возможно обращение к элементу списка посредством оператора [...]. В качестве аргумента передается индекс элемента.

Свойства:

Владелец (Owner)
ВладеющееСвойство (OwningProperty)

Методы:

Вставить (Insert)
Добавить (Add)
Количество (Count)
Очистить (Clear)
Получить (Get)
ПолучитьXDTO (GetXDTO)
Удалить (Delete)
Установить (Set)

Описание:

Список элементов данных XDTO.

Доступность:

Тонкий клиент, сервер, толстый клиент, внешнее соединение, мобильное приложение(клиент), мобильное приложение(сервер).
См. также:

ОбъектXDTO, метод ПолучитьСписок


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