Версия для печати темы (https://pro1c.org.ua/index.php?s=10612fe56402fa9f7f2bea1295b8eb0c&showtopic=51972)

Нажмите сюда для просмотра этой темы в обычном формате

Украинский 1С форум: всё про 1С 8.3, 1С 8.2, 1С 8.1, 1С 8.0, 1С 7.7 _ Отчеты / Обработки _ Загрузка курсов валют НБУ для 1с 8

Автор: Acid 13.05.19, 9:58

Загрузка курсов валют НБУ для 1с 8
*В архиве 2 варианта: обычные и управляемые формы

 ZagruzkaKursov8.zip ( 48.95 килобайт ) : 183
 

Автор: Nataly_rz 13.05.19, 12:03

Acid @ Сегодня, 9:58 * ,
А как извлечь файлы? там пароль

Автор: Acid 13.05.19, 13:15

Nataly_rz @ Сегодня, 13:03 * ,
пароль описан в правилах форума

Автор: python 14.05.19, 13:30

При попытке загрузить курс выдает ошибку:

{ВнешняяОбработка.учет_ЗагрузкаКурсовВалют.МодульОбъекта(102)}: Метод объекта не обнаружен (СтрШаблон)

Это у меня одного так?
Как исправить? Модуль закрыт sad.gif

О себе:
1С:Предприятие 8.3 (8.3.10.2252)
Бухгалтерия для Украины, редакция 1.2. (1.2.51.1)

Автор: Acid 14.05.19, 14:39

в стандартных конфигурациях есть общий модуль "Локализация"
в нем есть такая функция:

// Функция возвращает текстовую строку, сформированную на основании спец. шаблона,
// подставляя значения переданных параметров.    
//
// Параметры
//  СтрокаШаблон – Строка – Строка шаблон, в тексте которой
//                 есть указания на то, куда вставить представления
//                 параметров.
//                 Параметры отмечаются текстом %1...¤20¤.
//                 Символ "¤" можно набрать при помощи Alt+0164
//  Пар1...Пар20 – произвольного типа – параметры,
//                 строковое представление которых будет
//                 подставлятся в шаблон.
//
// Возвращаемое значение:
//   Строка   – сформированная текстовая строка
//
Функция СтрШаблон(Знач СтрокаШаблон,
                                        Знач Пар1  = "", Знач Пар2  = "",
                                        Знач Пар3  = "", Знач Пар4  = "", Знач Пар5  = "",
                                        Знач Пар6  = "", Знач Пар7  = "", Знач Пар8  = "",
                                        Знач Пар9  = "", Знач Пар10 = "", Знач Пар11 = "",
                                        Знач Пар12 = "", Знач Пар13 = "", Знач Пар14 = "",
                                        Знач Пар15 = "", Знач Пар16 = "", Знач Пар17 = "",
                                        Знач Пар18 = "", Знач Пар19 = "", Знач Пар20 = "") Экспорт
                                        
    ПризнакПараметра = "¤";
    МетаСимвол       = "\¤"; //заменяется на признак параметра
    
    Для Счетчик = 1 По 20 Цикл
            
        ПерваяПозицияВхожденияПараметра = Найти(СтрокаШаблон, ""+ ПризнакПараметра + Счетчик + ПризнакПараметра);
                
        Если ПерваяПозицияВхожденияПараметра = 0 Тогда
            // этот параметр не используется
            Продолжить;    
        КонецЕсли;
                
        ПараметрВСтроку = "";
        Выполнить("ПараметрВСтроку = Строка(Пар" + Счетчик + ")");
                
        СтрокаШаблон = СтрЗаменить(СтрокаШаблон, ПризнакПараметра + Счетчик + ПризнакПараметра, ПараметрВСтроку);
                
    КонецЦикла;                                    
        
    ПозицияМетаСимвола = СтрЗаменить(СтрокаШаблон, МетаСимвол,ПризнакПараметра);

    Возврат СтрокаШаблон;
    
КонецФункции // СтрШаблон()

Автор: Vofka 14.05.19, 15:21

Acid, а чего модуль запаролили? 32542460.gif

Автор: Acid 14.05.19, 15:22

Vofka @ Сегодня, 16:21 * ,
авторские права 47067070.gif

Автор: o-mel 14.05.19, 16:28

А как добавить загрузку для Казахского тенге?

Автор: python 14.05.19, 22:19

Acid @ Сегодня, 15:39 * ,
Благодарю, я раньше думал что у меня бухгалтерия самая стандартная smile.gif
Но нет, в ней эта функция уже называется "СтрШаблонУкр" smile.gif

Автор: Acid 15.05.19, 7:21

Цитата(o-mel @ 14.05.19, 17:28) *
А как добавить загрузку для Казахского тенге?

Нужно в справочнике валют создать новую валюту.

Автор: o-mel 15.05.19, 7:54

Цитата(Acid @ 15.05.19, 8:21) *
Нужно в справочнике валют создать новую валюту.

Это понятно, я имею ввиду, что загрузка проходит только для валют Доллар, Евро, Рубль и Фунт, для остальных валют загрузка не работает?

Автор: Acid 15.05.19, 14:52

o-mel @ Сегодня, 8:54 * ,
А, вспомнил. В справочнике валют стоит международный код валюты, например, 840 для доллара. А Софтлайн запрограммировал совсем другие коды (молдавский стиль кодинга). Вы на сайте НБУ посмотрите какой они Код применили для этой валюты. Ну и подставте.

Автор: Kerberos 03.06.19, 22:16

Цитата(Acid @ 15.05.19, 15:52) *
o-mel @ Сегодня, 8:54 * ,
А, вспомнил. В справочнике валют стоит международный код валюты, например, 840 для доллара. А Софтлайн запрограммировал совсем другие коды (молдавский стиль кодинга). Вы на сайте НБУ посмотрите какой они Код применили для этой валюты. Ну и подставте.


в 1с в классификаторе код 398, международное наименование KZT
все верно

Автор: Acid 13.06.19, 11:43

Kerberos @ 03.06.19, 23:16 * ,
Зайдите на страницу курсов за произвольный период, и нажмите Ctrl+U
Какой там вам покажет код?

Автор: Lyti 05.08.19, 11:53

Доброго дня.
Управление небольшой фирмой для Украины, редакция 1.6 (1.6.9.1)
Помилка при натисканні "Завантажити":
{ВнешняяОбработка.УчетЗагрузкакурсовВалют.МодульОбъекта}: Змінна не визначена (СпособВыбораСертификата Windows)

Як цн можна виправити?

Автор: Vofka 05.08.19, 12:32

Lyti, какая версия платформы у вас? Похоже, что платформу надо обновить.

Автор: Lyti 05.08.19, 14:21

Цитата(Vofka @ 05.08.19, 13:32) *
Lyti, какая версия платформы у вас? Похоже, что платформу надо обновить.

1С:Підприємство 8.3 (8.3.13.1809)

Автор: sava1 05.08.19, 14:45

Цитата(Lyti @ 05.08.19, 12:53) *
МодульОбъекта}: Змінна не визначена (СпособВыбораСертификата Windows

платформой тут не светит - скорее под УНФ она не "ложится"

Автор: mut 05.08.19, 16:33

Lyti @ Сегодня, 12:53 * ,

Если доступ к модулю есть, попробуйте убрать конструкцию, использующую "СпособВыбораСертификата..."
Должно быть примерно так:

SSL = Новый ЗащищенноеСоединениеOpenSSL;
Соединение = Новый HTTPСоединение(АдресСервера,443,,,,,SSL);

Автор: Lyti 06.08.19, 15:55

Цитата(sava1 @ 05.08.19, 15:45) *
скорее под УНФ она не "ложится"

Але ж це керовані форми... а обробка має працювати з ними. Якщо ж вона працює лише з бухгалтерією, то опис невірний.

Цитата(mut @ 05.08.19, 17:33) *
Если доступ к модулю есть, попробуйте убрать конструкцию, использующую "СпособВыбораСертификата..."

Нажаль, доступа до модуля обробки немає - встановлено пароль.

Автор: mut 07.08.19, 13:06

Цитата(Lyti @ 06.08.19, 16:55) *
Нажаль, доступа до модуля обробки немає

Доречі, отримати курси з сайта НБУ дуже просто, якщо трохи програмуєте в 1С, то зробіть самі smile.gif
Все що потрібно - зробити запит на адресу http://pro1c.org.ua/redirect.php?https://bank.gov.ua/NBUStatService/v1/statdirectory/exchange?date=20190807&json
Замість 20190807 вставляємо потрібну дату. У відповідь приходить JSON з масивом даних по валютах. Залишається тільки перебрати масив з отбором по нужних валютах.

Все просто smile.gif

Автор: Lyti 07.08.19, 14:35

Цитата(mut @ 07.08.19, 14:06) *
Все просто

Дякую, я знайшла працюючу обробку нижче у списку доробок від іншого автора. Але дакую за алгорітм, може спробую і собі написати))))

Автор: RickyTickyTok 13.11.19, 17:57

Добрый день!
Может кто подскажет рабочий сервис для загрузки курсов по межбанку. По запросу с обработки https://pro1c.org.ua/topic/zagruzka-mezhbankovskogo-kursa-valyut-v-1s-13673/?st=0&p=72846&# сейчас не работает, данных нету с 2018 года. Жду ответ с minfin.com.ua должны сгенерировать ключ для подключения через API, но не факт, что дадут, потому что у них обязательное условие размещение гиперссылки на сайте, а мне нужно в 1С.

Автор: cos12 14.11.19, 16:39

RickyTickyTok @ Вчера, 18:57 * ,
с НБУ

лСервер = "bank.gov.ua";
лАдресРесурса = "/NBU_Exchange/exchange?json&date="+Формат(пПериод,"ДФ=dd.MM.yyyy");

Автор: penadine 24.11.19, 1:19

Загрузка курсов валют

 Zagruzka_kursov_valyut.zip ( 21.39 килобайт ) : 67
 

Автор: vitvet 09.01.20, 12:34

cos12 @ 14.11.19, 16:39 * ,
А нет ли полного описания параметров запроса, что бы получать за период и в определенной валюте?
Сам не могу найти и "догнать"

Автор: mut 09.01.20, 14:15

vitvet @ Сегодня, 12:34 * ,

Курс на дату по валюті (код валюти літерний, регістр значення не має):

https://bank.gov.ua/NBUStatService/v1/statdirectory/exchange?valcode=EUR&date=20200109&json


Если нужно за период, шлите запрос за каждую нужную дату

Автор: smilez 27.02.20, 12:17

А как в регламент поставить можно?

Автор: sava1 27.02.20, 12:31

Цитата(smilez @ 27.02.20, 12:17) *
А как в регламент поставить можно?

Для ОФ или УФ ?

Автор: smilez 27.02.20, 12:39

sava1 @ Сегодня, 12:31 * ,
ОФ УТП 1.2

Автор: sava1 27.02.20, 12:56

добавить регл. задание и текст обработки в общий модуль (кое-что надо будет изменить)

Автор: evgenum 06.04.20, 23:33

Готовый запрос курса валюты с сайта НБУ по одной из валют по одной дате на основе подсказки выше. Дальше дело техники...

    
    HTTP =  Новый HTTPСоединение("bank.gov.ua",443,,,,,Новый ЗащищенноеСоединениеOpenSSL());
    тхт="/NBUStatService/v1/statdirectory/exchange?valcode=EUR&date=20200109&json";    
    Попытка
        HTTPОтвет = HTTP.Получить(Новый HTTPЗапрос(тхт));
    Исключение
        сообщить(ОписаниеОшибки());
    КонецПопытки;        
    ОтветСервера = HTTPОтвет.ПолучитьТелоКакСтроку();
    Чтение = Новый ЧтениеJSON;
    Чтение.УстановитьСтроку(ОтветСервера);
    Объект = ПрочитатьJSON(Чтение, Истина);
    Для Каждого Элемент Из Объект[0] Цикл
        Сообщить(Строка(Элемент.Ключ) + " " + Элемент.Значение);
    КонецЦикла;

Украинский 1С форум: всё про 1С 8.3, 1С 8.2, 1С 8.1, 1С 8.0, 1С 7.7
https://pro1c.org.ua