|
Где скачать файл с курсами от российского банка? | ☑ | ||
---|---|---|---|---|
0
K1RSAN
18.01.23
✎
07:55
|
Произошел такой эксперимент, как создание базы казахстанской конфигурации, но валюта рег. учета - российская.
И теперь надо найти источник курсов валют относительно рубля. Сама конфигурация предлагает загружать курс через файл, а вот где его достать - непонятно. |
|||
1
Гипервизор
18.01.23
✎
08:08
|
(0) Из файла с каким расширением предлагает загружать?
|
|||
2
Смотрящий
18.01.23
✎
08:08
|
С РБК какого нить взять
|
|||
3
Bigbro
18.01.23
✎
08:11
|
||||
4
K1RSAN
18.01.23
✎
08:15
|
(1)
ЧтениеXML = Новый ЧтениеXML(); ЧтениеXML.ОткрытьФайл(ПолноеИмяФайла); ПостроительDOM = Новый ПостроительDOM(); Попытка ДокументDOM = ПостроительDOM.Прочитать(ЧтениеXML); Исключение ДокументDOM = Неопределено; КонецПопытки; Подозреваю, что xml |
|||
5
K1RSAN
18.01.23
✎
08:16
|
(3) нашел там Динамику курса валют, но даёт скачать только в dbf или xls. Конечно, через загрузку данных из табличного документа получилось загрузить, но это не для ежедневной загрузки
|
|||
6
Мимохожий Однако
18.01.23
✎
08:25
|
Откуда взять ясно. В чём вопрос?
|
|||
7
K1RSAN
18.01.23
✎
08:27
|
(6) Просветите? Желательно предоставить пользователю возможность качать файл в формате, который будет корректно обработан типовой обработкой загрузки курсов валют. В том числе при загрузке за длительный период (за месяц). Пока нашел возможность только скачать в форма xls или dbf.
|
|||
8
Serg_1960
18.01.23
✎
08:31
|
Convert DBF to XML
|
|||
9
Мимохожий Однако
18.01.23
✎
08:32
|
(7) Просвети для начала что за конфигурация. Зачем пользователю качать файлы? Логичнее загружать данные с выбранного ресурса сразу. В типовых конфигурациях это реализовано.
|
|||
10
K1RSAN
18.01.23
✎
08:34
|
(9) Конфигурация БК для Казахстана. В типовой версии там реализовано скачивание с казахстанского ресурса курсов относительно казахстанского тенге. Нужно получить относительно рубля - сама конфигурация предлагает загружать через файлы.
|
|||
11
Serg_1960
18.01.23
✎
08:40
|
Центральный банк Российской федерации, Технические ресурсы -> Получение данных, используя XML
https://cbr.ru/development/SXML/ |
|||
12
K1RSAN
18.01.23
✎
09:10
|
(11) Спасибо
|
|||
13
mikecool
18.01.23
✎
09:19
|
(0) мы как то казахскую бухню развернули - так не могли туда тенге загрузить... пришлось изобретать
|
|||
14
K1RSAN
18.01.23
✎
13:16
|
Можете подсказать, как в БП обрабатывают документ DOM. в КЗ версии
Разыменователь = Новый РазыменовательПространствИменDOM("", ""); ВсеКурсыВалют = ДокументDOM.ВычислитьВыражениеXPath("/rates/item", ДокументDOM, Разыменователь); <rates> <generator>Alternate RSS Builder</generator> <title>Official exchange rates of National Bank of Republic Kazakhstan</title> <link>www.nationalbank.kz</link> <description>Official exchange rates of National Bank of Republic Kazakhstan</description> <copyright>www.nationalbank.kz</copyright> <date>01.01.2022</date> <item> <fullname>АВСТРАЛИЙСКИЙ ДОЛЛАР</fullname> <title>AUD</title> <description>313.79</description> <quant>1</quant> <index>UP</index> <change>+0.57</change> </item> </rates> Структура XML слегка другая в РФ версии <ValCurs ID="R01235" DateRange1="02.03.2001" DateRange2="14.03.2001" name="Foreign Currency Market Dynamic"> <Record Date="02.03.2001" Id="R01235"> <Nominal>1</Nominal> <Value>28,6200</Value> </Record> <Record Date="03.03.2001" Id="R01235"> <Nominal>1</Nominal> <Value>28,6500</Value> </Record> </ValCurs> |
|||
15
PLUT
18.01.23
✎
13:33
|
(14)
попробуй фабрикой прочитать XML, структуру полей в фабрике в отладчике можно увидеть. пример творчески допили напильником (напиши заново исходя из твоей структуры) //Курс EUR ЦБ: ДатаКурса, КурсЦБ Чтение = Новый ЧтениеXML; Чтение.ОткрытьФайл("http://www.cbr.ru/scripts/XML_daily.asp"); Фабрика = Новый ФабрикаXDTO; ОбъектXDTO = Фабрика.ПрочитатьXML(Чтение); СоответствиеКурсов = Новый Соответствие(); СтрДатаКурса = СтрЗаменить(ОбъектXDTO.Date, ".", Символы.ПС); ДатаКурса = Дата( Число(СтрПолучитьСтроку(СтрДатаКурса, 3)), Число(СтрПолучитьСтроку(СтрДатаКурса, 2)), Число(СтрПолучитьСтроку(СтрДатаКурса, 1)) ); Для Каждого Valute Из ОбъектXDTO.Valute Цикл Если Valute["CharCode"] = "EUR" Тогда КурсЦБ = Число(Valute["Value"]); КонецЕсли; КонецЦикла; |
Форум | Правила | Описание | Объявления | Секции | Поиск | Книга знаний | Вики-миста |