gifts2017

Загрузка курсов валют с сайта ЦБ РФ с использованием Xpath

Опубликовал Константин Чемисов (kc-ropa) в раздел Обработки - Обработка справочников

Процедура получения курса валюты с сайта ЦБ РФ для дальнейшего использования. Для наглядности в обертке.

Сравнение курса евро с сайта ЦБ РФ с курсом в базе.

Обработка сделана для теста процедуры загрузки курсов с сайта cbr.ru в XML формате.

Для примера была взята http://infostart.ru/public/151769/, но разбор через простое Xpath-выражение:

"/ValCurs/*/NumCode[text()='978']/../Value/text()"

Никаких циклов.

Код открыт, процедура готова для дальнейшего применения.

Скачать файлы

Наименование Файл Версия Размер
курс ЦБ РФ 3
.epf 7,37Kb
29.01.16
3
.epf 1 7,37Kb Скачать

См. также

Contragent+ 5.0 от 2 500
Подписаться Добавить вознаграждение

Комментарии

1. Андрей Суровов (Andris_infostart) 29.01.16 17:39
А не лучше ли для такой задачи (Загрузка курсов валют с сайта ЦБ РФ) использовать их же веб-сервис?
http://habrahabr.ru/post/148658/
2. Dmitry Vidmanov (etmarket) 01.02.16 12:23
(1) Andris_infostart, зато это универсальный инструмент, который можно применить на любой версии 1С и не только 1С!
Автор молодец!
3. Dmitry Vidmanov (etmarket) 01.02.16 12:46
В какой конфигурации запускать?

{Форма.Форма.Форма(14,21)}: Переменная не определена (ИнтернетПоддержкаПользователейКлиент)
URLРазделенный = <<?>>ИнтернетПоддержкаПользователейКлиент.РазделитьURL(АдресЦБРФ);
4. Константин Чемисов (kc-ropa) 01.02.16 13:34
(3) etmarket, Конфигурация Комплексная 1.1 . А на какой не работает?
5. Константин Чемисов (kc-ropa) 01.02.16 13:53
Добавь строки:

ИмяСервера="cbr.ru";
ПутьКФайлуНаСервере="scripts/XML_daily.asp?date_req="+Формат(ДатаКурса,"ДФ=dd.MM.yyyy");

Удали строку:
URLРазделенный = ИнтернетПоддержкаПользователейКлиент.РазделитьURL(АдресЦБРФ);

Замени строку
ОбработкаПолученияФайлов.ЗапроситьФайлыССервера(URLРазделенный.ИмяСервера, URLРазделенный.ПустьКФайлуНаСервере, ИмяВременногоФайла, HTTP);

на
ОбработкаПолученияФайлов.ЗапроситьФайлыССервера(ИмяСервера, ПутьКФайлуНаСервере, ИмяВременногоФайла, HTTP);

6. Dmitry Vidmanov (etmarket) 01.02.16 15:24
(4) kc-ropa, Управление торговлей.
7. Dmitry Vidmanov (etmarket) 01.02.16 15:25
(5) kc-ropa, всё поправил, но из базы курс так и не считал (переменная КурИзРегистра)

А с сайта считал норм. Все-равно спасибо!
Для написания сообщения необходимо авторизоваться
Прикрепить файл
Дополнительные параметры ответа