Имя: Пароль:
1C
1C 7.7
v7: Разобрать xml документ 7.7
0 myr4ik07
 
26.10.16
10:30
Скажите пожалуйста, каким образом разобрать хмл документ такой структуры
http://prntscr.com/cz26vi

пытаюсь разобрать таким способом
http://paste1c.ru/rNz

но КоличествоАтрибутов постоянно 0 и не заходит для получения значения, значение не показывает
1 VoditelKobyly
 
26.10.16
10:50
Что то типа такого:

xmlResponse = СоздатьОбъект("MSXML.DOMDocument");
xmlResponse.loadXML(пСтрокаОтвета);

Элемент=xmlResponse.getElementsByTagName("item");
2 VoditelKobyly
 
26.10.16
10:54
Вот тут посмотри: http://www.script-coding.com/XMLDOMscripts.html
3 myr4ik07
 
26.10.16
12:19
(1)     xmlResponse = СоздатьОбъект("MSXML.DOMDocument");
    xmlResponse.loadXML(ИмяВыбрФайла);                                               
    colNodes = xmlResponse.getElementsByTagName("Description");    
    nodeTitle = colNodes.nextNode;
    
    Пока ПустоеЗначение(nodeTitle) = 0 Цикл
        Сообщить(nodeTitle.text);
        nodeTitle = colNodes.nextNode;
    КонецЦикла;


ошибка
nodeTitle = colNodes.nextNode;
{.ERT(101)}: Плохой тип переменной
4 myr4ik07
 
26.10.16
12:22
(2) пример выше взял

Set xmlParser = CreateObject("Msxml2.DOMDocument")
xmlParser.async = False
xmlParser.load "C:\Sample.xml"
'Получаем все заголовки товаров (элементы "TITLE")
Set colNodes = xmlParser.getElementsByTagName("TITLE")
'Устанавливаем внутренний указатель на позицию перед первым узлом в наборе
colNodes.reset
'Получаем первый заголовок (узел "TITLE")
Set nodeTitle = colNodes.nextNode
'Перебираем все заголовки (узлы "TITLE")
While Not nodeTitle Is Nothing
    WScript.Echo nodeTitle.text
    Set nodeTitle = colNodes.nextNode
Wend
5 НеБорис Нуралиев
 
26.10.16
12:32
Так у тебя там нет атрибутов. Только значения.
6 myr4ik07
 
26.10.16
12:34
(5) и как обойти мне значения? У меня значения с именем атрибута Description несклько
7 myr4ik07
 
26.10.16
12:36
ох и задачка для 7-ки, обойти какой гавняный хмл документ и нужно пару часов что бы разобраться, если не пару дней, а в ингтернетах копируют с одного сайта на другой одну и ту же информацию и довольные атас
8 НеБорис Нуралиев
 
26.10.16
12:36
Атрибуты - это когда <item description='нал' ref = 'NoCash' />

В таком случае description и ref - это атрибуты узла item.

В твоем же случае у узла item есть подчиненные узлы description со значением "Нал" и Ref со значением "NonCash"
9 youalex
 
26.10.16
12:43
xmlResponse.selectNodes("root/data/item")
10 myr4ik07
 
26.10.16
12:55
(9) и куда его ?
11 myr4ik07
 
26.10.16
12:56
(8) и как победить?
12 myr4ik07
 
26.10.16
12:57
а есть еще какой то мозговыносящий способ драный хмл обойти?
13 NikVars
 
26.10.16
12:59
(11) Пример обработки XML имеется в типовой Бух 7.7.
См. обработку ДобавлениеТранспортныхСообщений
14 myr4ik07
 
26.10.16
13:06
(13) спасибо
15 myr4ik07
 
26.10.16
13:09
(13) поделись, будь добр обработкой, пожалей искать конфу, качать, находить обработку )
16 myr4ik07
 
26.10.16
13:09
(13) кстати, пример и у меня есть как обрабатывать хмл, но там считываются только наименование атрибутов или как их назвать, а значения нет
17 NikVars
 
26.10.16
13:11
(14) Возможно для рассмотрения картины в целом мало будет этой обработки. Суть этой обработки. Есть журнал 1С-отчетность. Ты можешь в этот журнал добавить документ ТранспортноеСообщение. Добавление выполняется обработкой на основании анализа ХМЛ читаются значения периодов, дат и определяется декларация. Пойдет конфа даже годовалой старости.
18 myr4ik07
 
26.10.16
13:31
(17) ок
19 myr4ik07
 
26.10.16
23:49
20 big
 
27.10.16
09:28
(19) Ни в коем случае не используй v7plus. Эта ВК использует msmxl ТОЛЬКО версии 3. Если будет стоять другой версии, то возможны проблемы.
21 big
 
27.10.16
09:29
(20) + именно на ВыбратьУзлы() это и проявляется