Заказы на доработку 1С (сервис удаленной работы)

Хранилище

База знаний
Бесплатные отчеты, обработки, конфигурации, внешние компоненты для 1С Статьи, описание работы, методики по работе с 1С

Здравствуйте, гость ( Вход | Зарегистрироваться )



> Як прочитати значення параметра в XML файлі?          
burza Подменю пользователя
сообщение 04.07.23, 9:41
Сообщение #1

Оратор
*****
Группа: Пользователи
Сообщений: 313
Спасибо сказали: 1 раз
Рейтинг: 1

як витягнути дані с такого 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;
      
                           КонецЕсли;
                    Конеццикла;
                КонецЕсли;


Сообщение отредактировал Vofka - 04.07.23, 10:58

sava1 Подменю пользователя
сообщение 04.07.23, 10:40
Сообщение #2

Живет на форуме
Иконка группы
Группа: Местный
Сообщений: 2699
Из: Проскуров
Спасибо сказали: 684 раз
Рейтинг: 663.3

типо так

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


burza Подменю пользователя
сообщение 04.07.23, 12:03
Сообщение #3

Оратор
*****
Группа: Пользователи
Сообщений: 313
Спасибо сказали: 1 раз
Рейтинг: 1

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


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

sava1 Подменю пользователя
сообщение 04.07.23, 12:07
Сообщение #4

Живет на форуме
Иконка группы
Группа: Местный
Сообщений: 2699
Из: Проскуров
Спасибо сказали: 684 раз
Рейтинг: 663.3

так теперь еще по param пройтись

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

и для имидж тоже

Сообщение отредактировал sava1 - 04.07.23, 12:08

burza Подменю пользователя
сообщение 05.07.23, 6:03
Сообщение #5

Оратор
*****
Группа: Пользователи
Сообщений: 313
Спасибо сказали: 1 раз
Рейтинг: 1

sava1 @ Вчера, 13:07 * ,
может я шот не так делаю но не работает

burza Подменю пользователя
сообщение 05.07.23, 8:27
Сообщение #6

Оратор
*****
Группа: Пользователи
Сообщений: 313
Спасибо сказали: 1 раз
Рейтинг: 1

burza @ Сегодня, 7:03 * ,

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

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


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


burza @ Сегодня, 9:02 * ,
что не кто не читал такой xml ?

andr_andrey Подменю пользователя
сообщение 05.07.23, 15:40
Сообщение #7

Почти ветеран
Иконка группы
Группа: Местный
Сообщений: 629
Спасибо сказали: 167 раз
Рейтинг: 132.1

Цитата(burza @ 05.07.23, 9:27) *
Метод объекта не обнаружен (Последовательность)

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

Из Help-а
Элементы коллекции:

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

Свойства:

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

Методы:

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

Описание:

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

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

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

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




Signature
#define private public
enum BOOL { FALSE, TRUE, FILENOTFOUND } is made my day

Не нашли ответа на свой вопрос?
Зарегистрируйтесь и задайте новый вопрос.


Ответить Новая тема
1 чел. читают эту тему (гостей: 1, скрытых пользователей: 0)
Пользователей: 0

 

RSS Текстовая версия Сейчас: 13.07.24, 18:32
1С Предприятие 8.3, 1С Предприятие 8.2, 1С Предприятие 8.1, 1С Предприятие 8.0, 1С Предприятие 7.7, Литература 1С, Общие вопросы по администрированию 1С, Методическая поддержка 1С - всё в одном месте: на Украинском 1С форуме!