Демо

Получить курс валют от Банк России. Интеграция с ЦБ РФ API

Описание, как реализовать

Получение данных о котировках валют по API с сайта www.cbr.ru (ЦБ РФ).

Как реализовать

Вызов внешнего действия APIRequest при сохрании формы: 

CREATE PROCEDURE [dbo].[fm_watch_valuta_saveItem]
   @username nvarchar(256), 
   @itemID int, 
   @fieldvaluta nvarchar(256) = ''
AS
BEGIN
	-- 1 SELECT (Result, Msg)
	select 1 Result, ' ' Msg
    
    select 'apirequest' type, 'valuta' code, 'valuta' p1_name, @fieldvaluta p1_value
END

API вызов (тип GET, XML): 

CREATE PROCEDURE [dbo].[api_valuta_request]
	@parameters ExtendedDictionaryParameter READONLY,  -- входящие параметры для внутренней обработки (используйте Key, Value2)
	@username nvarchar(32)  -- текущий пользователь.
AS
BEGIN	
	declare @maxDate nvarchar(10) = convert(nvarchar(10), getdate(), 103)
    declare @minDate nvarchar(10) = convert(nvarchar(10), dateadd(day, -7, getdate()), 103)
    
	declare @valuta nvarchar(128) = (select top 1 Value2 from @parameters where [Key]='valuta')
	-- SELECT 1  Msg, Result, Url (адрес, куда будет идти запрос)
	select '' Msg, 1 Result, 'http://www.cbr.ru/scripts/XML_dynamic.asp?'+
    	'date_req1='+@minDate+'&date_req2='+@maxDate+'&VAL_NM_RQ=' + @valuta  Url  -- R01235   14/03/2001

	-- SELECT 2 PARAMETERS - параметры, которые будут передаваться во внешний источник
END

Обработка в JS (обратите внимание, что здесь работаем не с JSON, а с XML через jQuery): 

<script>
  $(function(){
	as.formcallbacks["watch_valuta_saveItem"] = function(data, params){
		var ss = JSON.parse(data.additionalData)[0].items;
   	    var resp = $.grep(ss, function(v) {
    		return v.key == "response" 
		});
      	console.log(resp)
      	if(resp.length>0 && resp[0].value2) {
        	var el = resp[0].value2;          
          	console.log("valuta", el); 
          	var s = "";
          	$("record", el).each(function(){
              /*
              <Record Date="14.03.2001" Id="R01235">
<Nominal>1</Nominal>
<Value>28,6500</Value>
</Record>
*/	
            	s+='<div>' + $(this).attr("Date") + " - <span class='badge badge-light'>" + $("Value", this).html() + "</span></div>";	
            });
          	if(s){
            	as.sys.bootstrapAlert(
                  '<h3>'+$('.as-form-item[data-code=valuta] select option:selected').text() + ' к рублю</h3>' + s, 
                  {type: "info", delay: 1000000, icon: ' '});
              	return;
            }           	
        }  
        as.sys.bootstrapAlert("Что-то пошло не так", {type: "danger"});
	}
  });
</script>
Насколько полезна эта возможность?

В чем выгода для бизнеса?

Автоматическое получение актуальных курсов валют напрямую с сайта ЦБ РФ. Исключает ручной ввод, минимизирует ошибки и экономит время сотрудников. Особенно полезно для компаний, работающих с импортом, экспортом или международными расчётами. Курсы автоматически обновляются и могут использоваться для пересчёта цен, формирования отчётов или уведомлений об изменениях. Повышает точность финансовых операций и позволяет своевременно реагировать на колебания рынка.

Последние обновления

Платформа Falcon Space

Это снижение стоимости владения

за счет меньшего количества людей для поддержки

Это быстрое внесение изменений

по ходу эксплуатации программы

Это современный интерфейс

полная адаптация под мобильные устройства

Сайт использует Cookie. Правила конфиденциальности OK