Загрузка курсов валют за период для Украины (bank.gov.ua, finance.ua)

Публикация № 1056439

Обработки - Обработка справочников

Загрузка курсы валют НБУ bank.gov.ua Украина

1
Загрузка курсов валют за период с сайта НБУ (bank.gov.ua).

Доработал обработку от Finance.ua для получения курсов валют с сайта bank.gov.ua при помощи API. Есть возможность загрузить курсы валют за период.

С помощью кнопки "Подбор" можно подобрать те валюты из справочника "Валюты", по которым необходимо загружать курсы.

С помощью кнопки "Заполнить" можно заполнить список валют всеми валютами, которые зарегистрированы в справочнике "Валюты".

Загрузка курсов производится при нажатии на кнопку "Загрузить". После успешной загрузки информация о курсах валют автоматически записывается в регистр сведения для каждой валюты.

Кнопка "Очистить" очищает список валют и их курсов. 

Проверено на конфигурации "Управление производственным предприятием для Украины", редакция 1.3.
Технически должна работать на любой конфигурации где есть справочник "Валюты" и регистр сведений "Курсы валют"

 

Принцип получения данных.

К примеру, необходимо получить курс EUR на 02.05.2019. Будем получать его с сайта bank.gov.ua при помощи API в формате JSON.

Упрощенный код:

//имя временного файла, после загрузки курсов файл желательно удалить.

ИмяВходящегоФайла= КаталогВременныхФайлов()+"kurs.json";

//создаем безопасное соединение

HTTPСоединение = Новый HTTPСоединение("bank.gov.ua", , , , , , Новый ЗащищенноеСоединениеOpenSSL);

//подготавливаем строку с параметрами

СтрокаПараметров ="/NBUStatService/v1/statdirectory/exchange?valcode=EUR&date=20190502&json";

//получаем данные с сервера НБУ в формате JSON

HTTPСоединение.Получить(СтрокаПараметров, ИмяВходящегоФайла);

//здесь необходимы проверки ответа сервера

//здесь проверки существования файла ответа (и его актуальность)

//Читаем JSON

ЧтениеJSON = Новый ЧтениеJSON;
ЧтениеJSON.ОткрытьФайл(ИмяВходящегоФайла);
МассивОтветов = ПрочитатьJSON(ЧтениеJSON);
ЧтениеJSON.Закрыть();

//На выходе получили массив "МассивОтветов" со структурой 
//Обходим массив и заполняем регистр курсов валют

 

1

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

Наименование Файл Версия Размер
Загрузка курсов валют за период для Украины (bank.gov.ua, finance.ua):
.epf 221,00Kb
14.05.19
1
.epf 1 221,00Kb 1 Скачать

См. также

Специальные предложения

Комментарии
Избранное Подписка Сортировка: Древо
1. atroxa 5 14.05.19 12:04 Сейчас в теме
можно без временных файлов
Результат = HTTPСоединение.Получить(HTTPЗапрос); // Отправка запроса методом GET
Тело = Результат.ПолучитьТелоКакСтроку(); // Здесь и будет JSON ответа
2. Jorge 6 17.05.19 14:08 Сейчас в теме
(1) Спасибо. Добавлял функционал в типовую обработку, а там через файл.
3. Sekator 17.05.19 15:07 Сейчас в теме
Это отличный аналог/субститут типовой обработке, которая, как показали недавние события с finance.ua, ненадежна.
Были бы стартмани, скачал :)
Оставьте свое сообщение