Чтение XML через DOM
функция читаемХМЛ2014(путь,атр) экспорт
х = новый массив;
y = новый массив;
мДОМ = новый ПостроительDOM;
заявка = новый таблицаЗначений;
заявка.Колонки.Добавить("номерДок");
заявка.Колонки.Добавить("клиент");
заявка.Колонки.Добавить("адрес");
заявка.Колонки.Добавить("товар");
заявка.Колонки.Добавить("кодТовара");
заявка.Колонки.Добавить("количество");
заявка.Колонки.Добавить("цена");
заявка.Колонки.Добавить("сумма");
чтение = Новый ЧтениеXML ;
чтение.ОткрытьФайл(сокрЛП(путь));
мДокументДОМ = мДОМ.Прочитать(чтение);
чтение.Закрыть();
номерДок = "";
клиент = "";
адрес = "";
_documents = мДокументДОМ.ПолучитьЭлементыПоИмени("documents");
для каждого а1 из _documents цикл
_preorder = а1.ПолучитьЭлементыПоИмени("preorder");
для каждого а2 из _preorder цикл
_ттн = а2.дочерниеУзлы;
для каждого а21 из _ттн цикл
если (а21.имяУзла = "innercode") тогда
номерДок =а21.ТекстовоеСодержимое;
конецЕсли;
если (а21.имяУзла = "buypointjuridicalname") тогда
клиент = а21.ТекстовоеСодержимое;
конецЕсли;
если (а21.имяУзла = "buypointaddress") тогда
адрес = а21.ТекстовоеСодержимое;
конецЕсли;
конецЦикла;
_item = а2.ПолучитьЭлементыПоИмени("item");
для каждого а3 из _item цикл
_товар = а3.ДочерниеУзлы;
хх = заявка.Добавить();
хх.номерДок = номерДок;
хх.клиент = клиент;
хх.адрес = адрес;
для каждого а4 из _товар цикл
если (а4.имяУзла = "SKUname") тогда
хх.товар = а4.ТекстовоеСодержимое;
конецЕсли;
если (а4.имяУзла = "SKUcode")тогда
хх.кодТовара = а4.ТекстовоеСодержимое;
конецЕсли;
если (а4.имяУзла = "quantity")тогда
хх.количество = а4.ТекстовоеСодержимое;
конецЕсли;
если (а4.имяУзла = "priceDiscount") тогда
хх.цена = а4.ТекстовоеСодержимое;
конецЕсли;
если (а4.имяУзла = "amount") тогда
хх.сумма = а4.ТекстовоеСодержимое;
конецЕсли;
конецЦикла;
конецЦикла;
конецЦикла;
конецЦикла;
//мРазыменовательПИ = мДокументДОМ.СоздатьРазыменовательПИ(мДокументДОМ);
//мЗапрос = "/documents/preorders/preorder/body/item/*";
//мХПуть = мДокументДОМ.СоздатьВыражениеXPath(мЗапрос,мРазыменовательПИ);
//мРезультат = мХПуть.Вычислить(мДокументДОМ);
//мРодитель = мРезультат.ПолучитьСледующий();
//пока мРодитель <> неопределено цикл
// //если мРодитель.ИмяЭлемента = "body" тогда
// //
// //
// // сообщить("");
// // мРодитель=мРезультат.ПолучитьСледующий();
// // продолжить;
// //конецЕсли;
// х.Добавить( мРодитель.ИмяЭлемента+" "+мРодитель.ТекстовоеСодержимое);
// сообщить(мРодитель.ИмяЭлемента+" "+мРодитель.ТекстовоеСодержимое);
// мРодитель=мРезультат.ПолучитьСледующий();
//конецЦикла;
возврат заявка;
конецФункции //функция читаемХМЛ2014(путь)
{2} Переменной х присвоено значение, но оно нигде не используется {3} Переменной y присвоено значение, но оно нигде не используется Орфографическая ошибка в innercode: innercode Орфографическая ошибка в buypointjuridicalname: buypointjuridicalname Орфографическая ошибка в buypointaddress: buypointaddress Орфографическая ошибка в мРазыменовательПИ (найдено 2): Разыменователь Орфографическая ошибка в СоздатьРазыменовательПИ: Разыменователь Описание дублирует название. Удалите описание, если информации в заголовке достаточно.
Чтение Excel через Табличный документ
ЕстьПравоЧтенияИнформацииОВерсияхОбъектов (БСП)