![]() |
![]() |
Gamm 02.10.2004 - 00:20 |
Проблема. Анализатор = СоздатьОбъект("AddIn.XMLParser"); ФайлДанных=Анализатор.СоздатьДокумент(); ФайлДанных.Загрузить(имяфайла); ВсеУзлы=ФайлДанных.ВыбратьУзлы("catalog"); ВсеУзлы.ПолучитьУзел(0); После ПолучитьУзел(0) выдает ошибку Неизвестное имя. Подскажите в чем дело или где можно почитать по этой теме. |
Salex 1 - 02.10.2004 - 01:13 |
Почитать можно и нужно:"Описание внешней компоненты V7Plus" А у тебя надо вот так: Анализатор = СоздатьОбъект("AddIn.XMLParser"); ФайлДанных=Анализатор.СоздатьДокумент(); ФайлДанных.Загрузить(имяфайла); КорневойУзел=ФайлДанных.ЭлементДокумента; // ВОТ ЭТО ТЫ ПРОПУСТИЛ, СНАЧАЛА НАДО ПОЛУЧИТЬ КОРНЕВОЙ УЗЕЛ ДОКУМЕНТА!!! ВсеУзлы=КорневойУзел.ВыбратьУзлы("catalog"); ВсеУзлы.ПолучитьУзел(0); |
Gamm 2 - 02.10.2004 - 13:37 |
Если так пробовать то тоже ничего не выходит. Причем что интересно: Анализатор = СоздатьОбъект("AddIn.XMLParser"); ФайлДанных=Анализатор.СоздатьДокумент(); ФайлДанных.Загрузить(имяфайла); КорневойУзел=ФайлДанных.ЭлементДокумента; // ВОТ ЭТО ТЫ ПРОПУСТИЛ, СНАЧАЛА НАДО ПОЛУЧИТЬ КОРНЕВОЙ УЗЕЛ ДОКУМЕНТА!!! ВсеУзлы=КорневойУзел.ВыбратьУзлы("catalog"); ВсеУзлы1=ФайлДанных.ВыбратьУзлы("catalog"); После этого выражение ВсеУзлы.КоличествоУзлов=0 а Всеузлы1.количествоузлов=1 А описание я почитал но никак не могу понять как методами её пользоваться. |
Самый умный 3 - 02.10.2004 - 13:45 |
(3) Анализатор = СоздатьОбъект("AddIn.XMLParser"); ФайлДанных=Анализатор.СоздатьДокумент(); ФайлДанных.Загрузить(имяфайла); КорневойУзел=ФайлДанных.ЭлементДокумента; // ВОТ ЭТО ТЫ ПРОПУСТИЛ, СНАЧАЛА НАДО ПОЛУЧИТЬ КОРНЕВОЙ УЗЕЛ ДОКУМЕНТА!!! ВсеУзлы=КорневойУзел.ВыбратьУзлы("catalog"); На последней строке КорневойУзел.Количество подчиненных чему равно? |
Самый умный 4 - 02.10.2004 - 13:47 | +3 Сори, КорневойУзел.КоличествоПодчиненных() |
Самый умный 5 - 02.10.2004 - 13:54 |
У меня сделано вот так. Это рабочая обработка. XML-документ имеет корень с именем "Корень", у которого 2 ветки "Справочники" и "Документы" Перем Анализатор,Документ,Справочники; Анализатор = СоздатьОбъект("AddIn.XMLParser"); Документ=Анализатор.СоздатьДокумент(); Документ.Загрузить(КаталогИБ()+"extforms\save.xml"); КАттр=Документ.КоличествоПодчиненных(); Для Сч = 1 По Каттр Цикл вр=Документ.ПолучитьПодчиненныйПоНомеру(Сч); Если вр.Наименование="Корень" Тогда Корень=вр; КонецЕсли; КонецЦикла; КАттр=Корень.КоличествоПодчиненных(); Для Сч = 1 По Каттр Цикл вр=Корень.ПолучитьПодчиненныйПоНомеру(Сч); Если вр.Наименование="Справочники" Тогда Справочники=вр; ИначеЕсли вр.Наименование="Остатки" Тогда Остатки=вр; КонецЕсли; КонецЦикла; |
Gamm 6 - 02.10.2004 - 21:39 | (5) Спасибо. Все получилось способом как у тебя. |