Форум 1С
Программистам, бухгалтерам, администраторам, пользователям
Задай вопрос - получи решение проблемы
22 ноя 2024, 10:45

Внешняя обработка загрузка справочников (xml)

Автор dimid, 26 сен 2016, 09:05

0 Пользователей и 1 гость просматривают эту тему.

dimid

Нужна помощь! 1С 8.3 Турагенство. Внешняя разработка для загрузки файла "Типы питания.xml". (база тестовая. создали новые справочники и вот один из них "типыПитания". Ошибок никаких не выдает. просто никакой реакции.

&НаСервере
Процедура Команда1НаСервере();
мДОМ=новый ПостроительDOM;
чтение=Новый ЧтениеXML ;
чтение.ОткрытьФайл(Объект.ПутьКФайлу);
мДокументДОМ=мДОМ.Прочитать(чтение);
чтение.Закрыть();
мРазыменовательПИ=мДокументДОМ.СоздатьРазыменовательПИ(мДокументДОМ);
мЗапрос="/result/meals";
мХПуть=мДокументДОМ.СоздатьВыражениеXPath(мЗапрос,мРазыменовательПИ);
мРезультат=мХПуть.Вычислить(мДокументДОМ);
мРодитель=мРезультат.ПолучитьСледующий();
первый = Истина;
пока мРодитель<>неопределено цикл


мЗапрос="./*";
    мХПуть2=мДокументДОМ.СоздатьВыражениеXPath(мЗапрос,мРазыменовательПИ);
    мДанные=новый Структура;
    мРезультатЗапроса=мХПуть2.Вычислить(мРодитель);
    мОбход=мРезультатЗапроса.ПолучитьСледующий();
    пока мОбход <>неопределено цикл   

мДанные.Вставить(мОбход.ИмяЭлемента,мОбход.ТекстовоеСодержимое);
мОбход=мРезультатЗапроса.ПолучитьСледующий();
КонецЦикла;

Имя=мДанные.name;
Спр=Справочники.ТА_ТипыПитания.СоздатьЭлемент();
если первый тогда
Спр.name=Имя;
первый = ложь;
КонецЕсли;
Спр.Записать();

мРодитель=мРезультат.ПолучитьСледующий();
КонецЦикла;

        КонецПроцедуры

После точки останова вот в этом месте пишет: 
мРодитель=мРезультат.ПолучитьСледующий();
мРодитель неопределено. и конецПроцедуры.


Похожие темы (5)

Рейтинг@Mail.ru

Поиск