|
|
Как загрузить XML в таблицу значений? |
☑ |
|
0
Gluk
19.11.12
✎
09:01
|
Как загрузить любой XML файл в таблицу значений?
Пробую через ПостроительDOM - в файле несколько вложенных узлов - нужно несколько вложенных циклов чтения дочерних узлов или рекурсия. Тоже самое через Фабрику XDTO, но там списки XDTO.
|
|
|
1
Fragster
гуру
19.11.12
✎
09:02
|
и что, СП смистили?
|
|
|
2
Fragster
гуру
19.11.12
✎
09:03
|
пугают циклы?
|
|
|
3
mikecool
19.11.12
✎
09:04
|
(0) ЧтениеХмл и да - циклы, циклы...
|
|
|
4
Gluk
19.11.12
✎
09:10
|
(1) там нет сабжа
(2) нет, думал есть способ проще
(3) т.е. предлагаете просто через ЧтениеXML и циклы, циклы...?
|
|
|
5
Maxus43
19.11.12
✎
09:21
|
(4) циклы, циклы... где преступление то?
|
|
|
6
Рэйв
19.11.12
✎
09:25
|
(0)Читай стандартно и делай дерево значений. В ТЗ запаришься складывать вложенные ноды
|
|
|
7
Рэйв
19.11.12
✎
09:26
|
(4)Почему циклы во множественном числе?:-) Один цикл идет последовательно по узлам с заходом до дна в каждый
|
|
|
8
Gluk
19.11.12
✎
10:22
|
(7) Можете привести пример такого цикла? Это рекурсия?
|
|
|
9
Fragster
гуру
19.11.12
✎
10:25
|
(4) в СП не рассказано, как работать с СписокXDTO?
|
|
|
10
quest
19.11.12
✎
10:26
|
прочти в XDTO и получи дерево на выходе. а дальше - как душа пожелает так и ковыряй это дерево
|
|
|
11
Рэйв
19.11.12
✎
10:40
|
(8)
Как можно загрузить XML документ произвольной структуры?
Чтение = Новый ЧтениеXML;
Чтение.ОткрытьФайл(ПутьКФайлу);
Пока Чтение.Прочитать() Цикл
// Прочитать "структурные части" элементов.
// Проверить, какая часть элемента - текущая.
Если Чтение.ТипУзла = ТипУзлаXML.НачалоЭлемента Тогда
ИмяУзла = Чтение.Имя; Сообщить("--" + ИмяУзла);
// Атрибуты элементов можно читать только если текущая часть -
// начало элемента
Пока Чтение.ПрочитатьАтрибут() Цикл
// Прочитать данные узла атрибута.
ТипУзла = Чтение.ТипУзла;
Имя = Чтение.Имя;
Значение = Чтение.Значение;
// Обработать полученные значения.
КонецЦикла;
ИначеЕсли Чтение.ТипУзла = ТипУзлаXML.Текст Тогда
// В примере просто выводим текст в окно сообщений.
Сообщить("Текст:" + Чтение.Значение);
ИначеЕсли Чтение.ТипУзла = ТипУзлаXML.КонецЭлемента Тогда
// В примере просто выводим признак конца элемента
// в окно сообщений Сообщить("--Конец:" + Чтение.Имя);
КонецЕсли;
КонецЦикла;
(C)Габец
|
|
|
12
sapphire
19.11.12
✎
11:12
|
xsl преобразование к ТЗ.
|
|
|
13
DrunkAnimal
19.11.12
✎
11:15
|
(12) а смысл?
|
|
|
14
vmv
19.11.12
✎
11:35
|
(0) УПП или БП не пробовал гуглить на XML, по крайней мере в укр. все регламентные отчеты уже по электронке гоняют и в конфах куча методов поддержки работы с XML
|
|
Требовать и эффективности, и гибкости от одной и той же программы — все равно, что искать очаровательную и скромную жену... по-видимому, нам следует остановиться на чем-то одном из двух. Фредерик Брукс-младший