Здравствуйте уважаемые программисты)
Стараюсь парсить XML файл Мне нужно получить только раздел USD.
На данный момент запрос выглядит вот так. Данные получает правильно. Но как получить эти данные отдельно, чтобы допустим name получить отдельно. И чтобы выводились только те, у кого в CODE прописан USD
Стараюсь парсить XML файл Мне нужно получить только раздел USD.
На данный момент запрос выглядит вот так. Данные получает правильно. Но как получить эти данные отдельно, чтобы допустим name получить отдельно. И чтобы выводились только те, у кого в CODE прописан USD
ЧтениеХМЛ = Новый ЧтениеXML;
ЧтениеХМЛ.ОткрытьФайл("https://www.cbar.az/currencies/30.12.2019.xml");
Пока ЧтениеХМЛ.Прочитать() Цикл
Если ЧтениеХМЛ.ТипУзла = ТипУзлаXML.НачалоЭлемента И ЧтениеХМЛ.Имя = "ValType" Тогда
продолжить;
КонецЕсли;
Если ЧтениеХМЛ.ТипУзла = ТипУзлаXML.НачалоЭлемента И ЧтениеХМЛ.Имя = "Valute" Тогда
ЧтениеХМЛ.ПрочитатьАтрибут();
СтрокаОценка = "Valute: " + ЧтениеХМЛ.ЗначениеАтрибута("Code");
КонецЕсли;
Если ЧтениеХМЛ.ТипУзла = ТипУзлаXML.НачалоЭлемента И ЧтениеХМЛ.Имя = "Name" Тогда
Сообщить(СтрокаОценка);
КонецЕсли;
//Если ЧтениеХМЛ.ЗначениеАтрибута("Code") = "USD" Тогда
Если ЧтениеХМЛ.ТипУзла = ТипУзлаXML.НачалоЭлемента Тогда
ИмяЭлемента = ЧтениеХМЛ.Имя;
ИначеЕсли ЧтениеХМЛ.ТипУзла = ТипУзлаXML.Текст Тогда
Сообщить(ИмяЭлемента + ": " + ЧтениеХМЛ.Значение);
КонецЕсли;
Если ЧтениеХМЛ.ТипУзла = ТипУзлаXML.КонецЭлемента И ЧтениеХМЛ.Имя = "АдресСайта" Тогда
Сообщить("--------------------------------");
КонецЕсли;
//КонецЕсли;
КонецЦикла;
ЧтениеХМЛ.Закрыть();
ПоказатьПо теме из базы знаний
- Печать трудового договора, дополнительного соглашения к трудовому договору из шаблона Word, 1С: ЗУП 3
- "МС:Мониторинг цен" - парсинг сайтов, мониторинг цен конкурентов "одной кнопкой"
- Самый простой парсинг и обработка веб-страниц в 1С
- Внешняя компонента на C# для парсинга страниц через Phantom JS на сервере 1С х32,х64
- Взаимодействие 1С со сторонними продуктами посредством REST и Golang (middleware). Часть 3 - ElasticSearch
Найденные решения
Остальные ответы
Подписаться на ответы
Инфостарт бот
Сортировка:
Древо развёрнутое
Свернуть все
(4) для каждого не надо ))
это ж проверка/чтение, следовательно сюда и надо вставить
Если ЧтениеХМЛ.ТипУзла = ТипУзлаXML.НачалоЭлемента И ЧтениеХМЛ.Имя = "Valute" Тогда
ЧтениеХМЛ.ПрочитатьАтрибут();
СтрокаОценка = "Valute: " + ЧтениеХМЛ.ЗначениеАтрибута("Code");
КонецЕсли;
это ж проверка/чтение, следовательно сюда и надо вставить
(15)
Вот вам еще примерчик:
Вот вам еще примерчик:
ДанныеXML = Новый ЧтениеXML;
ДанныеXML.ОткрытьФайл("G:\Rabinovich\ДокXML.xml");
ПостроительДом = Новый ПостроительDOM();
ДанныеDOM = ПостроительДом.Прочитать(ДанныеXML);
ДокРеалDOM = ДанныеDOM.ПолучитьЭлементыПоИмени("ДокРеал");
Для Каждого ЭлементDOMДокРеал ИЗ ДокРеалDOM Цикл
ОбработкаПрерыванияПользователя();
Сообщить(ЭлементDOMДокРеал.ПолучитьАтрибут("Контрагент"));
Сообщить(ЭлементDOMДокРеал.ПолучитьАтрибут("СуммаДокумента"));
ТоварыDOM = ДанныеDOM.ПолучитьЭлементыПоИмени("Товары");
Для каждого СтрТовары Из ТоварыDOM Цикл
Сообщить(" "+СтрТовары.ПолучитьАтрибут("Номенклатура"));
КонецЦикла;
КонецЦикла;
Показать
Вот богоугодная фигня
ДанныеXML = Новый ЧтениеXML;
ДанныеXML.ОткрытьФайл(ПараметрыСеанса.ПутьКФайлуОбмена);
ПостроительДом = Новый ПостроительDOM();
ДанныеDOM = ПостроительДом.Прочитать(ДанныеXML);
НоменклатураDOM = ДанныеDOM.ПолучитьЭлементыПоИмени("Номенклатура");//Тут ваше USD
Для Каждого ЭлементDOMНоменклатура ИЗ НоменклатураDOM Цикл
СуществующийОбъектСправочника = ПроверитьЭлементСправочников(ЭлементDOMНоменклатура.ПолучитьАтрибут("Ссылка"),"Номенклатура");//Номенклатура - Название справочника
Если СуществующийОбъектСправочника=Ложь Тогда
//Тогда чета там
ИначеЕсли СуществующийОбъектСправочника.Наименование <> ЭлементDOMНоменклатура.ПолучитьАтрибут("Наименование") Тогда
//Тогда чёта там
КонецЕсли;
КонецЦикла;
Показать
Для получения уведомлений об ответах подключите телеграм бот:
Инфостарт бот