Загрузка курсов валют с сайта https://bank.gov.ua для всех валют справочника Валюты (работает в 8.2 и 8.3 - обычные формы)

12.10.18

Учетные задачи - Банковские операции

Обработка выполняет загрузку курсов с сайта https://bank.gov.ua за указанный период для всех валют с корректными кодами в справочнике "Валюты". Работает в 8.2 и 8.3. Для работы в 8.2 используется COMОбъект "MSXML2.ServerXMLHTTP.6.0" или ".4.0". Может быть использована в качестве замены существующей обработки загрузки курсов валют с сайта finance.ua. Отсутствует интерфейс выбора валют. Заполняются автоматически курсы для валют, которые будут найдены в справочнике Валют по коду из данных с сайта. В рабочей конфигурации данная обработка используется для автоматической загрузки курсов валют путем её выполнения из командного файла задания Планировщика Windows.

Файлы

ВНИМАНИЕ: Файлы из Базы знаний - это исходный код разработки. Это примеры решения задач, шаблоны, заготовки, "строительные материалы" для учетной системы. Файлы ориентированы на специалистов 1С, которые могут разобраться в коде и оптимизировать программу для запуска в базе данных. Гарантии работоспособности нет. Возврата нет. Технической поддержки нет.

Наименование Скачано Купить файл
Загрузка курсов валют с сайта https://bank.gov.ua для всех валют справочника Валюты. Возможность установки необходимых параметров для автозапуска при старте системы.
.epf 14,50Kb ver:1.2.
25 2 500 руб. Купить

Подписка PRO — скачивайте любые файлы со скидкой до 85% из Базы знаний

Оформите подписку на компанию для решения рабочих задач

Оформить подписку и скачать решение со скидкой

Вы можете заказать платную доработку или адаптацию этой разработки под вашу конфигурацию на «Бирже заказов».

  • 0% комиссии — оплата напрямую исполнителю;
  • Исполнители любого масштаба — от отдельных специалистов до команд под проект;
  • Прямой обмен контактами между заказчиком и исполнителем;
  • Безопасная сделка — при необходимости;
  • Рейтинги, кейсы и прозрачная система откликов.

Предистория

11.10.2018 стал очень знаменательным днём, т.к. именно в этот день перестала правильно работать основная обработка загрузки курсов валют с сайта finance.ua. Эта обработка входит во все типовые конфигурации 1С Украины. В своё время она была "революцией" онлайн получения данных из Интернета. Но пришло время для ревизии.

В результате проведенного анализа, оказалось, что НБУ на своем сайте уже давно имеет описание API, который можно использовать для получения курсов валют за любую дату (с какого-то момента 2016 года, если быть точным). Вся информация находится здесь: https://bank.gov.ua/control/uk/publish/article?art_id=38441973

Поэтому и возникла мысль об изменении обработки и переходе на получение данных из "первоисточника".

Описание предлагаемой обработки

Обработка была разработана для замены той, что входит в типовые конфигурации. Главный концепт - это минимизация интерфейса и сообщений для пользователя.

Практика показала, что пользователи используют обработку исключительно для того, чтобы автоматически заполнять курсы валют для всех элементов из справочника Валюты. Никаких дополнительных настроек никто не хочет делать. Поэтому, в новой обработке сейчас нет выбора валют и нет вывода никакой информации. Результаты пользователь и так увидит в регистре сведений. Все, что ему необходимо - это выбрать период (или не выбирать) и нажать кнопку "Загрузка".

Особенности

НБУ сейчас использует защищенный протокол. Для 8.3 все прекрасно работает штатными средствами. Для 8.2 - всё оказалось нет так уж и просто.
Определение версии программы производится обычным методом по данным из СистемнойИнформации.

	// определяем версию программы - если 8.2 - тогда другая методика
	СисИнфо = Новый СистемнаяИнформация;
	СтрРез = Неопределено;
	
	Если Лев(СисИнфо.ВерсияПриложения, 3) >= "8.3" Тогда
		СтрРез = ПолучитьОтветСКурсамиВалютНаДату1С(НаДату);
	КонецЕсли;
	
	Если СтрРез = Неопределено Тогда
		// пробуем старым методом
		СтрРез = ПолучитьОтветСКурсамиВалютНаДату(НаДату);
	КонецЕсли;

Для получения данных с сайта в 8.2 использован COMОбъект "MSXML2.ServerXMLHTTP.6.0" или "MSXML2.ServerXMLHTTP.4.0".

    //пытаемся определить версию MSXML
	Версия = "6";
	Попытка
		ХТТП = Новый COMОбъект("MSXML2.ServerXMLHTTP."+Версия+".0");
	Исключение   
		Попытка
			Версия = "4";
			ХТТП = Новый COMОбъект("MSXML2.ServerXMLHTTP."+Версия+".0");    
		Исключение   
			Сообщить(ОписаниеОшибки(),"!");
			Сообщить("Для работы загрузки данных курсов валюты необходима MSXML не ниже 4.0","!");
			Возврат "";
		КонецПопытки;
	КонецПопытки;
	
	ХТТП.open ("GET", Адрес, Ложь); 
	ХТТП.setRequestHeader("Content-Type", "application/x-www-form-urlencoded"); 
	ХТТП.send();

Обработка прекрасно себя показала на версиях Бухгалтерии Украины 1.2 в качестве полной замены типовой обработки ЗагрузкаКурсовВалют. Поэтому, в её модуле оставлены методы, которые используются в типовой конфигурации. На других версиях - не тестировалась. Автоматическая загрузка курсов валют при старте тоже работает, только теперь её работы пользователь никак не видит. И ему нет необходимости постоянно закрывать надоедливое окно открывающегося сайта после загрузки курсов в 1С.
Все происходит благодаря следующему коду в модуле обычного приложения:

В модуле обработки оставлены следующие экспортные методы:


Процедура ЗагрузитьКурсыПоНастройкам() Экспорт
	ЗагрузитьКурсыНаДату();
КонецПроцедуры

Функция КодДоступаАктуален() Экспорт
	Возврат Истина;
КонецФункции

Также добавлена функция автоматической установки необходимых параметров для возможности автоматического старта обработки при старте системы:

При этом, кроме установки в Истина записи регистра "НастройкиПользователей" с настройкой "Загружать актуальные курсы валют при запуске системы" для текущего пользователя, обработка также запишет параметр "ЗагружатьЕжедневно" в константу "НастройкиЗагрузкиКурсовВалют".

    // теперь константа НастройкиЗагрузкиКурсовВалют
	Настройки = Новый Структура("ЗагружатьЕжедневно", Истина);
	ХранилищеНастроек = Новый ХранилищеЗначения(Настройки);
	Попытка
		Константы.НастройкиЗагрузкиКурсовВалют.Установить(ХранилищеНастроек);
	Исключение
		Сообщить("Не удалось записать значение ""ЗагружатьЕжедневно"" в константу ""НастройкиЗагрузкиКурсовВалют""", СтатусСообщения.Важное);
	КонецПопытки;

Проверить результат можно в настройках текущего пользователя:

Процедура загрузки обработки в конфигурацию

Данная обработка может быть подключена в справочник внешних обработок и отчетов. Но можно выполнить и замену типовой обработки в конфигураторе. Чтобы это сделать необходимо осуществить простые и известные любому администратору 1С действия:

Считаю, что также будет полезным выключить и поддержку у данной обработки:

Заключение

Очень надеюсь, что данная обработка станет Вам полезным инструментом.

А также, желаю всем замечательных творческих успехов! ("ЖТУ" - (с)Л.М.)

Вступайте в нашу телеграмм-группу Инфостарт

загрузка Украина валюты курсы

См. также

SALE! %

Банковские операции Обмен с интернет-банком Мастера заполнения Нейросети Разработчик Бухгалтер Пользователь 1С:Предприятие 8 1C:ERP 1С:Бухгалтерия 3.0 1С:ERP Управление предприятием 2 1С:Управление холдингом 1С:ERP. Управление холдингом 1С:Комплексная автоматизация 2.х 1С:Управление нашей фирмой 3.0 1С:Управление торговлей 11 1С:Розница 3.0 Платные (руб)

Корректируйте банковские документы быстро и легко! Создайте правило обработки — и оно автоматически применится при загрузке выписки (отбор по любому реквизиту или регулярному выражению). Решение заполняет расшифровку платежа, комиссию эквайринга, подбирает ведомости на выплату зарплаты, помечает дубли из банка на удаление и многое другое. Доплачивать за алгоритмы не нужно — они включены в решение. Обработка работает при загрузке из файлов клиент-банка и через DirectBank. Новое — искусственный интеллект: модель приводит нестандартные назначения платежа к виду, понятному алгоритмам, а ИИ-ассистент прямо в 1С консультирует по решению и разбирает код правил и алгоритмов. Поддерживаются локальные и облачные OpenAI-совместимые модели — данные могут не покидать ваш контур.

17500 руб.

20.12.2024    21532    104    32    

90

Банковские операции Обмен с интернет-банком Эквайринг/ридер магнитных карт Разработчик Бухгалтер Пользователь 1С:Предприятие 8 1С:Управление торговлей 10 1С:Управление производственным предприятием 1С:ERP Управление предприятием 2 1С:Бухгалтерия 3.0 1С:Управление торговлей 11 1С:Комплексная автоматизация 2.х 1С:Управление нашей фирмой 3.0 Бухгалтерский учет Управленческий учет Платные (руб)

Устали вручную дозаполнять и корректировать документы по банку после загрузки банковской выписки? С помощью правил обработки банковской выписки вы сможете автоматически определять правильный вид хозяйственной операции, заполнять расшифровку, аналитику платежа и многое другое.

19520 руб.

21.03.2023    26238    174    39    

130

WEB-интеграция Разработчик Аналитик 1С:Предприятие 8 1С:ERP Управление предприятием 2 1С:Бухгалтерия 3.0 1С:Управление торговлей 11 1С:Комплексная автоматизация 2.х 1С:Управление нашей фирмой 3.0 1С:Розница 3.0 Оптовая торговля, дистрибуция, логистика ИТ-компания Платные (руб)

Модуль "Экспортер" — это расширение для 1С, предназначенное для автоматизации процессов выгрузки данных. Оно позволяет эффективно извлекать, преобразовывать и передавать данные из систем 1С в интеграционную платформу Spot2D. Подсистема упрощает настройку, снижает количество ручных операций и обеспечивает удобный контроль данных.

17568 руб.

20.12.2024    7766    35    4    

35

Сайты и интернет-магазины WEB-интеграция Системный администратор Разработчик Пользователь 1С:Предприятие 8 1C:Бухгалтерия 1С:Управление торговлей 11 Автомобили, автосервисы Россия Управленческий учет Платные (руб)

Интеграционный модуль обмена между конфигурацией Альфа Авто 5 и Альфа Авто 6 и порталом AUTOCRM / LOGICSTARS. Данный модуль универсален. Позволяет работать с несколькими обменами AUTOCRM / LOGICSTAR разных брендов в одной информационной базе в ручном и автоматическом режиме.

42700 руб.

03.08.2020    25834    42    26    

30

Банковские операции Адаптация типовых решений Бухгалтер Пользователь 1С:Предприятие 8 1С:Бухгалтерия 3.0 Россия Бухгалтерский учет Платные (руб)

Решение позволяет автоматически заполнять отдельные реквизиты загружаемых банковских документов, основываясь на известных значениях реквизитов и тексте назначения платежа. Простая настройка, широкие возможности анализа назначения платежа без написания кода и сложных шаблонов.

12200 руб.

17.06.2025    5324    16    0    

16

WEB-интеграция Системный администратор Разработчик Пользователь 1С:Предприятие 8 1C:Бухгалтерия 1С:Бухгалтерия 3.0 1С:Управление торговлей 11 Автомобили, автосервисы Россия Управленческий учет Платные (руб)

Интеграционный модуль обмена по API между конфигурацией 1С:Альфа-Авто 6 и порталом LogicStar. Позволяет работать с несколькими обменами LogicStars разных брендов (CHERY, OMODA, JAECOO, EXEED, TENET) в одной информационной базе в ручном и автоматическом режиме. Поддерживается выгрузка заказ-нарядов, реализаций товаров и товарных остатков.

20740 руб.

13.05.2025    3083    6    0    

8
Для отправки сообщения требуется регистрация/авторизация