Имя: Пароль:
1C
1С v8
НУжно загрузить таблицу значений из XML в 1с
0 Ivan_495
 
16.11.13
14:21
НУжно загрузить таблицу значений из XML в 1с
<params>
    <order>
        <number>00031</webshop>
        <client>Восток</client>
        
<order>
<ТЧТовара>
        <СтрокаТЧ>
                <name>Ручка</name>
                <count>4</count>
                <client_price>5</client_price>
        </СтрокаТЧ>
        <СтрокаТЧ>
                    <name>Карандаш</name>
                    <count>3</count>
                    <client_price>1</client_price>
        </СтрокаТЧ>    
        <СтрокаТЧ>
                        <name>Лампа</name>
                        <count>2</count>
                          <client_price>67</client_price>
        </СтрокаТЧ>
</ТЧТовара>
</params>
1 Dmitry1c
 
16.11.13
14:37
(0) разрешаю
2 Ivan_495
 
16.11.13
14:51
подскажите
3 Сияющий Асинхраль
 
16.11.13
14:53
Кому нужно, тот и грузит :-), ну или платит :-(
4 Armando
 
16.11.13
14:54
Проблема-то в чем? В 1С есть объект для работы с XML. Примеров полно.
5 acsent
 
16.11.13
14:59
Лучше через xdto - 1 строчка кода
6 Сияющий Асинхраль
 
16.11.13
15:00
А серьезно, там всего несколько команд, которые тебе и нужны: ПрочитатьXML, XMLСтрока, XMLЗначение, XMLТип, XMLТипЗнч и ПолучитьXMLТип...
7 Infsams654
 
16.11.13
15:05
(0) так не сказано, какая конфигурация, куда это грузить. Какие-то товары? Они чего, должны добавляться к существующим остаткам на складах или чего?
8 scanduta
 
16.11.13
15:06
Пока ЧтениеXML.Прочитать() Цикл
                
                Если ЧтениеXML.ТипУзла =    ТипУзлаXML.НачалоЭлемента Тогда
                    
                    Если Найти(ЧтениеXML.Имя,"Строка")<>0 Тогда

НоваяСтрока=ПрочиеОперации.Добавить();
                         ИмяКолонки="Строка";

              
                    КонецЕсли;
                    
                        
                    Сообщить("Начало элемента: "+ЧтениеXML.Имя);
                    
                ИначеЕсли ЧтениеXML.ТипУзла = ТипУзлаXML.Текст Тогда
                    
                    Если ИмяКолонки="Строка" Тогда
                    
                         Значение=ЧтениеXML.Значение;    
                    КонецЕсли;
    
                    
                                            
                    Сообщить("Текст элемента: "+ЧтениеXML.Значение);

                ИначеЕсли ЧтениеXML.ТипУзла = ТипУзлаXML.КонецЭлемента Тогда
                    
                     Сообщить("Конец элемента: "+ЧтениеXML.Имя);
                    
                     Если Найти(ЧтениеXML.Имя,"Строка")<>0 Тогда

                      НоваяСтрока.Значение=Значение;

                        
                     КонецЕсли;
                    
                КонецЕсли;
                
            КонецЦикла;
9 scanduta
 
16.11.13
15:06
Примерно так
Проблемы невозможно решaть нa том же уровне компетентности, нa котором они возникaют. Альберт Эйнштейн