Имя: Пароль:
1C
 
Автообновление курсов валют в нетиповой конфигурации
🠗 (Волшебник 31.12.2020 09:27)
0 NIGHTHUNTER
 
30.12.20
12:18
В нетиповой конфигурации имеется справочник валюты, где присутствует курс валют.
Подскажите пожалуйста, каким образом можно сделать автоматическое обновление курсов валют?
1 ДенисЧ
 
30.12.20
12:21
Надо позвать программиста. А самому сбегать в это время в ларёк за пивом для него.
2 lubitelxml
 
30.12.20
12:23
(0) посмотри код как в типовой сделано и перенеси нужный функционал
3 NIGHTHUNTER
 
30.12.20
12:26
(2) А более точнее нельзя?
4 Волшебник
 
30.12.20
12:29
Надо загружать с сайта ЦБ РФ, чтобы не было как тут
РБК подставил, выдал неверные курсы валют :(
5 lubitelxml
 
30.12.20
12:30
(3) может за тебя еще и код написать?
6 acht
 
30.12.20
12:30
(3) С наступающим тебя, Андрей. Пусть новый год принесет тебе удачи.
7 Fragster
 
гуру
30.12.20
12:34
(3) отбор по подсистеме "Стандартные подсистемы -> валюты"
8 ДенисЧ
 
30.12.20
12:36
(7) Конфигурация нетиповая. А в типовых он разбираться не умеет. А сказаь ему "смотри БСП" - это всё равно, что послать на юг
9 NIGHTHUNTER
 
30.12.20
12:59
(5) Нет ну что бы я понял какую конфигурацию открыть.
Наверняка есть в которой можно посмотреть.
Где что посомтреть, как понять что все обновляется, и тд. Пока вот нет понимания в этом.
10 NIGHTHUNTER
 
30.12.20
12:59
(7)  А в какой конфигурации?
11 NIGHTHUNTER
 
30.12.20
13:00
(8) Ну почему, можно посмотреть, открыть БСП, только будет ли это полезным.
Там может быть наворочено такого, что совсем не нужно.
12 acht
 
30.12.20
13:02
(11) Ты можешь определить субъективную "ненужность" не заглядывая внутрь БСП? Да ты сильнейший телепат Млечного Пути, преклоняюсь.
13 ДенисЧ
 
30.12.20
13:03
(11) Ну так открой... В чём проблема тогда? Ларька с пивом рядом нет?
14 NIGHTHUNTER
 
30.12.20
13:07
(13) Такую можно открыть посмотреть? Или нужен другой релиз ?

Конфигурация "Библиотека стандартных подсистем", редакция 2.3
15 NIGHTHUNTER
 
30.12.20
13:11
Развернул (14)
16 NIGHTHUNTER
 
30.12.20
13:13
(7) То есть вот это все что нужно для проведения аудита, что бы понять как обновляются курсы валют ?

http://joxi.ru/LmGbQ18ClYVXNr
17 Kassern
 
30.12.20
13:13
(14) Да возьми ты любую торговлю 11 и глянь там рег задание по обновлению курса валюты. Подсказда - рег. задание "ЗагрузкаКурсовВалют". И по "ниточке, по веревочке" идешь по процедурам/функциям и понимаешь как это все работает.
18 NIGHTHUNTER
 
30.12.20
13:14
(17) Ну можно так попробовать посмотреть. Спасибо, посмотрю!!!
19 Kassern
 
30.12.20
13:17
(18) А можешь взять api-шку цбр и с него сам тянуть курс, https://cbr.ru/development/SXML/
20 ДенисЧ
 
30.12.20
13:24
(19) Ты издеваешься???
21 Kassern
 
30.12.20
13:32
(20) Отнюдь)
22 NIGHTHUNTER
 
30.12.20
14:06
(19) Хотелось бы средствами 1с.
23 RomanYS
 
30.12.20
14:09
(20) Почему?
Выглядит явно менее подставно чем сервисы от рбк и явно проще чем чем сервисы 1С с авторизацией и подписками.
Для самописки возможно реально озадачился бы (19). ТСу конечно будет тяжко)
24 acht
 
30.12.20
14:16
(23) > ТСу конечно будет тяжко
Это форуму будет тяжко. ТС даже и чесаться не будет.
25 Kassern
 
30.12.20
14:18
(23) А что тут тяжелого то?) простенький GET запрос из 1ски с нужными параметрами (ИД курса валюты и нужная дата), на выходе простая XML. Парсим и получаем нужный курс
26 RomanYS
 
30.12.20
14:22
(25) боюсь в твоем сообщении слишком много непонятных слов для ночного охотника))
27 ДенисЧ
 
30.12.20
14:23
(23) Ты обрати внимание на автора темы. Предложить ему руками написать парсер хмл - издевательство...
28 acht
 
30.12.20
14:26
29 Kassern
 
30.12.20
14:32
(27) Тогда бядааа...
30 RomanYS
 
30.12.20
14:46
(27) я в курсе. Но для него совет внедрить БСП не сильно более щадящий)))
Парсер писать не надо, ХDTO же есть

    Дата = ТекущаяДата();

    HTTPСоединение = Новый HTTPСоединение("http://www.cbr.ru";);
    HTTPЗапрос = Новый HTTPЗапрос("scripts/XML_daily.asp?date_req=" + Формат(Дата, "ДФ=dd/MM/yyyy"));
    
    Попытка
        Ответ = HTTPСоединение.Получить(HTTPЗапрос);
    Исключение
        // исключение здесь говорит о том, что запрос не дошел до HTTP-Сервера
        Сообщить("Произошла сетевая ошибка!");
        ВызватьИсключение;
    КонецПопытки;
    
    СтрокаXML =  Ответ.ПолучитьТелоКакСтроку();

    ЧтениеXML = Новый ЧтениеXML();
    ЧтениеXML.УстановитьСтроку(СтрокаXML);
    ФабXDTO = Новый ФабрикаXDTO();
    ОбъектXDTO = ФабXDTO.ПрочитатьXML(ЧтениеXML);
    
    Для каждого Запись Из ОбъектXDTO.Valute Цикл
        Сообщить(Запись.CharCode + "    "+Запись.Value);
    КонецЦикла;
31 Kassern
 
30.12.20
15:19
(30) подарок на НГ?)
32 RomanYS
 
30.12.20
15:35
(31) типа того, а может сыр в мышеловке))
На самом деле вчера клиент звонили из-за подставы рбк с курсами, сегодня просто стало интересно насколько на самом деле сложно получить курсы напрямую от ЦБ. Вывод: не сложно, за пару часов можно готовую загрузку написать.
33 mikecool
 
30.12.20
16:00
а в чем подстава то была?
34 ДенисЧ
 
30.12.20
16:04
(33) Cercopithecus выдали los grenados
35 RomanYS
 
30.12.20
16:06
(33) смотри (4)
36 Kassern
 
30.12.20
16:20
(30) Можно сразу доллар отбирать и не проходить в цикле все валюты
http://www.cbr.ru/scripts/XML_dynamic.asp?date_req1=30/12/2020&date_req2=30/12/2020&VAL_NM_RQ=R01235
37 RomanYS
 
30.12.20
16:25
(36) для этого где-то нужно ID хранить, собрать таблицу с CharCode и соединить её с имеющимися в справочнике валютами выглядит более простой реализацией.
Блин, провоцируешь на реальный подарок ТСу))
38 mikecool
 
30.12.20
16:38
(33) так в чем суть подставы? то, что курсы неверные были?
39 mikecool
 
30.12.20
16:38
+38 они же были
40 RomanYS
 
30.12.20
17:46
(38) Да, бух нажавший кнопку "загрузить" и не получивший ошибку безусловно уверен, что кур загрузился правильный. А дальше он выписывает документы...
41 NIGHTHUNTER
 
31.12.20
04:50
Мне бы разобраться , да сделать как нужно.
В (30) верное решение, и можно делать обработку для тестирования ?

А в 1с, там авторизация какая то требуется? Как ее проходить то?

(32) Почему сыр в мышеловке? Курсы же берутся от сюда ? ЦБ РФ ?

(19) << А можешь взять api-шку цбр и с него сам тянуть курс, https://cbr.ru/development/SXML/
Подскажите пожалуйста, как взять айпишку црб, я необразован в этой информации. не пойму как это делать.
42 Bigbro
 
31.12.20
06:19
(41) открой ссылку и читай. там все написано, с примерами.
будет конкретный вопрос - спрашивай.
43 NIGHTHUNTER
 
31.12.20
06:34
Начал проверку (30), -

вот тут ошибка, в чем причина, подскажите, срабатывает исключение -

    Попытка
        Ответ = HTTPСоединение.Получить(HTTPЗапрос);
    Исключение
        // исключение здесь говорит о том, что запрос не дошел до HTTP-Сервера
        Сообщить("Произошла сетевая ошибка!");
        ВызватьИсключение;
    КонецПопытки;


Ошибка работы с Интернет:  Couldn't resolve host name
{ВнешняяОбработка.КурсыВалют.Форма.Форма.Форма(9)}:        Ответ = HTTPСоединение.Получить(HTTPЗапрос);
{ВнешняяОбработка.КурсыВалют.Форма.Форма.Форма(27)}:    ПолучитьКурсНаСервере();

по причине:
Ошибка работы с Интернет:  Couldn't resolve host name
44 NIGHTHUNTER
 
31.12.20
07:21
что не так в коде (30) ?
45 ДенисЧ
 
31.12.20
07:21
"Couldn't resolve host name"

Можешь вбить в гуглопереводчик и помедитировать
46 NIGHTHUNTER
 
31.12.20
08:37
(45) Как тогда правильно тут указать?

   HTTPСоединение = Новый HTTPСоединение("http://www.cbr.ru";);

Я не знаю (
47 ДенисЧ
 
31.12.20
08:38
(46) Ты у себя на компах смотри. Потому что УМВР ЧЯДНТ?
48 NIGHTHUNTER
 
31.12.20
08:52
(47) Я за одним Пк. Хотел провести тест, что не так в коде (30) ?
49 ДенисЧ
 
31.12.20
08:54
(48) Исчо раз. Медленно и по буквам.
У тебя комп не видит адрес. Это не проблема 1с. Это проблема твоего компа.
50 Волшебник
 
31.12.20
09:28
Ну это уже другая ошибка - Ошибка работы с Интернет.
Надо создать новую ветку
51 hhhh
 
31.12.20
09:30
хорошо, когда много веток
52 NIGHTHUNTER
 
31.12.20
09:31
(49) Понятно, тогда как сделать что бы он увидел????
53 NIGHTHUNTER
 
31.12.20
09:31
(49) Решение должно работать вне зависимости от расположения.
Или это такое решение, под которое нужно ещё и ПК дополнительно каждый раз настраивать?
54 Волшебник
 
31.12.20
09:33
(53) Если нет интернета, то как грузить курсы?
55 NIGHTHUNTER
 
31.12.20
09:45
(53) Да интернет то есть, дело в чем.
56 NIGHTHUNTER
 
31.12.20
09:51
Значит (30) в моем случае не подходит. Буду разбираться. Подскажите кто знает, что нужно что бы получить курсы валют. Проверить что работает. Сам буду конечно разбираться в процессе.
57 NIGHTHUNTER
 
31.12.20
10:34
58 NIGHTHUNTER
 
31.12.20
10:35
(57+) Когда оставил такую строку    

HTTPСоединение = Новый HTTPСоединение("http://www.cbr.ru";);

почему получено только курсы 5 валют? А остальные ?
59 NIGHTHUNTER
 
31.12.20
10:36
(58+) Прошу прощения, там все есть. Нужно было колесико сообщения прокрутить.
60 NIGHTHUNTER
 
02.01.21
05:21
А где вероятность что в (30) получаются правильные курсы.

Там выбирается одно, а в интернете другое!

Как определить верные ли полученные курсы валют?
Компьютеры — прекрасное средство для решения проблем, которых до их появления не было.