Атрыманне дадзеных, з выкарыстаннем XML
Даная тэхналогія з'яўляецца састарэлай. Яе далейшае развіццё не плануецца. рэкамендуем выкарыстоўваць API.
Атрыманне афіцыйнага курса беларускага рубля ў дачыненні да замежных валют на пэўную дату,
- які ўстанаўліваецца штодзённа:
https://www.nbrb.by/services/xmlexrates.aspx?ondate=01/31/2011 - які ўстанаўліваецца штомесячна:
https://www.nbrb.by/services/xmlexrates.aspx?ondate=01/01/2011&period=1
Параметр ondate – дата ў фармаце месяц/дзень/год, на якую запытваецца афіцыйны курс. Калі параметр ondate не зададзены, то Вы атрымаеце афіцыйны курс на апошнюю дату ўстанаўлення.
У першым выпадку вяртаецца XML-дакумент, які складаецца з элемента DailyExRates, у другім (г. зн., калі period = 1) – MonthlyExRates. Абодва элементы маюць аднолькавую структуру: утрымліваюць атрыбут Date, са значэннем, роўным даце, на якую атрыманы афіцыйны курс (для афіцыйнага курса, які ўстанаўліваецца штомесяц, – дату ўстанаўлення курса, што дзейнічаў на дату, якая запытваецца), і ўкладзеныя элементы Currency.
Кожны элемент Currency змяшчае атрыбут ID (унутраны код валюты – цэлы лік) і ўкладзеныя элементы:
- NumCode – лічбавы код
- CharCode – літарны код
- Scale – колькасць адзінак замежнай валюты
- Name – найменне валюты
- Rate – курс.
Калі пазначыць параметр mode=1, то элементы Currency замест элементаў Name будуць змяшчаць элементы:
- QuotName – найменне валюты, якое змяшчае намінал.
Поўны пералік замежных валют, да якіх афіцыйны курс беларускага рубля
- устанаўліваецца штодзённа:
https://www.nbrb.by/services/xmlexratesref.aspx - устанаўліваецца штомесячна:
https://www.nbrb.by/services/xmlexratesref.aspx?period=1
XML-дакумент, які вяртаецца, складаецца з элемента DailyExRates (MonthlyExRates, калі period=1) і ўкладзеных элементаў Currency. Кожны элемент Currency змяшчае атрыбут ID (унутраны код валюты – цэлы лік) і ўкладзеныя элементы:
- NumCode – лічбавы код
- CharCode – літарны код
- Scale – колькасць адзінак замежнай валюты
- Name – найменне валюты
- EnglishName – найменне на англійскай мове
- ParentCode – гэты код выкарыстоўваецца для сувязі, пры змяненнях кодаў або назваў адной і той жа валюты.
Для атрымання пашыранай інфармацыі аб валютах неабходна таксама перадаць параметр ext=2. У гэтым выпадку Currency будзе складацца з элементаў:
- NumCode – лічбавы код
- CharCode – літарны код
- Scale – намінал
- QuotName – найменне валюты, якое змяшчае намінал
- QuotEnglishName – найменне на англійскай мове, якое змяшчае намінал
- Name – найменне валюты
- EnglishName – найменне на англійскай мове
- DateStart – дата ўключэння валюты ў пералік валют, да якіх Нацыянальным банкам устанаўліваецца афіцыйны курс беларускага рубля
- DateEnd – дата выключэння валюты з пераліку валют, да якіх Нацыянальным банкам устанаўліваецца афіцыйны курс беларускага рубля (калі не зададзена, то бягучы элемент Currency можа не змяшчаць гэты элемент)
- ParentCode – гэты код выкарыстоўваецца для сувязі, пры змяненнях кодаў або назваў адной і той жа валюты.
- QuotBelName – найменне валюты на беларускай мове, якое змяшчае намінал
- BelName – найменне валюты на беларускай мове
- NameMulti – найменне валюты ў множным ліку
- NameEngMulti –найменне валюты на англійскай мове ў множным ліку
- NameBelMulti – найменне валютына беларускай мове ў множным ліку
Атрыманне дынамікі афіцыйнага курса беларускага рубля ў дачыненні да зададзенай замежнай валюты, што ўстанаўліваецца Нацыянальным банкам Рэспублікі Беларусь (не больш за 365 дзён):
Параметры:
- сurId – унутраны код валюты (цэлы лік)
- fromDate – дата пачатку перыяду, які запытваецца, у фармаце месяц/дзень/год
- toDate – дата заканчэння перыяду, які запытваецца, у фармаце месяц/дзень/год.
XML-дакумент, які вяртаецца, складаецца з элемента Currency з наступнымі атрыбутамі:
- Id – унутраны код валюты (цэлы лік)
- fromDate – першая дата, на якую ўстаноўлены курс беларускага рубля да валюты, што запытваецца, унутры перыяду, які запытваецца
- toDate – апошняя дата, на якую ўстаноўлены курс беларускага рубля да валюты, што запытваецца, унутры перыяду, які запытваецца
і ўкладзеных элементаў Record. Кожны элемент Record змяшчае атрыбут Date – дата ўстанаўлення курса і ўкладзены элемент Rate – афіцыйны курс.
Атрыманне цэн на каштоўныя металы за перыяд (не больш за 31 дзень):
Параметры:
- metalId – унутраны код каштоўнага металу (цэлы лік), калі не зададзены, то вяртаюцца цэны на ўсе каштоўныя металы
- fromDate – дата пачатку перыяду, які запытваецца, у фармаце месяц/дзень/год
- toDate – дата заканчэння перыяду, які запытваецца, у фармаце месяц/дзень/год.
Калі параметры fromDate і toDate не зададзеныя, то будуць вернуты цэны на каштоўныя металы на апошнюю дату ўстанаўлення.
XML-дакумент, які вяртаецца, складаецца з элемента Metals з наступнымі атрыбутамі:
- fromDate – першая дата, на якую ўстаноўлены цэны на каштоўныя металы, унутры перыяду, які запытваецца,
- toDate – апошняя дата, на якую ўстаноўлены цэны на каштоўныя металы, унутры перыяду, які запытваецца
і ўкладзеных элементаў AccountPrice.
Элементы AccountPrice змяшчаюць наступныя атрыбуты:
- Date – дата ўстанаўлення цаны
- MetalId – унутраны код каштоўнага металу (цэлы лік)
і ўкладзеныя элементы Price – уліковая цана.
Атрыманне пераліку каштоўных металаў, на якія Нацыянальны банк устанаўлівае цэны:
XML-дакумент, які вяртаецца, складаецца з элемента Metals і ўкладзеных элементаў Metal, якія змяшчаюць атрыбут Id (унутраны код каштоўнага металу, цэлы лік), і ўкладзеных элементаў:
- Name – найменне каштоўнага металу
- NameEng – найменне на англійскай мове
- NameBel – найменне на беларускай мове.
Атрыманне цэн на каштоўныя металы ў выглядзе мерных зліткаў на дату:
Параметр ondate – дата ў фармаце месяц/дзень/год, на якую запытваюцца цэны. Калі параметр ondate не зададзены, то Вы атрымаеце цэны на апошнюю дату ўстанаўлення.
XML-дакумент, які вяртаецца, складаецца з элемента Ingots з атрыбутам onDate – дата ўстанаўлення цаны і ўкладзеных элементаў IngotsPrices.
Элементы IngotsPrices змяшчаюць наступныя атрыбуты:
- MetalId – унутраны код каштоўнага металу (цэлы лік)
- Nominal – Намінал, грам (цэлы лік)
і ўкладзеныя элементы:
- NoCertificateDollars – цана пакупкі без сертыфіката якасці (у доларах ЗША)*
- NoCertificateRubles – цана пакупкі без сертыфіката якасці (у беларускіх рублях)*
- CertificateDollars – цана пакупкі з сертыфікатам якасці (у доларах ЗША)*
- CertificateRubles – цана пакупкі з сертыфікатам якасці (у беларускіх рублях)*
- BanksDollars – цана продажу банкам (у доларах ЗША)*
- BanksRubles – цана продажу банкам (у беларускіх рублях)*
- EntitiesDollars – цана продажу юрыдычным і фізічным асобам (за выключэннем банкаў, у доларах ЗША)*
- EntitiesRubles – цана продажу юрыдычным і фізічным асобам (за выключэннем банкаў, у беларускіх рублях)*
* Калі цана, адпаведная элементу, на дату, якая запытваецца, не ўстаноўлена, то IngotsPrices не будуць змяшчаць гэты элемент.
Атрыманне стаўкі рэфінансавання на дату:
Параметр ondate – дата ў фармаце месяц/дзень/год, на якую запытваецца стаўка. Калі параметр ondate не зададзены, то Вы атрымаеце дынаміку стаўкі рэфінансавання.
XML-дакумент, які вяртаецца, складаецца з элемента RefRate і ўкладзеных элементаў Item.
Кожны элемент Item змяшчае ўкладзеныя элементы:
- onDate – дата ўстанаўлення стаўкі
- Value – значэнне стаўкі.
Прыклад атрымання дадзеных з выкарыстаннем XML vbaxml.xls на VBA (рабочая кніга Microsoft Excel 2003) - абноўлены 16.12.2020.