Группа: Основатель
Сообщений: 13985
Из: Киев
Спасибо сказали: 4554 раз
Рейтинг: 3684.3
Сервис больше не поддерживается.
Привет!
Представляю вашему вниманию новый сервис . Суть его из названия темы должна быть понятна. Сервис доступен по адресу: http://pro1c.org.ua/services/interbank_rate/out.php. Сейчас работаем с 3 валютами: доллар, евро и рубль. Другие валюты на текущий момент добавлять не планирую.
На данный момент доступны 2 операции с сервисом (в будущем, возможно, будет больше):
Получение, собственно, курса валют. Чтобы обратиться к сервису, необходимо обратиться к операции getCourse, указав 3 параметра: МФО банка, код валюты в международном формате и дату. Например, я хочу получить курс доллара по приватбанку на 02.08.2013. Для этого мне нужно обратиться к сервису таким образом:
Первый параметр operation=getCourse говорит о том, что нужно получить информацию по курсам валют. Второй и третий параметр - это МФО банка и код валюты, в общем, тут комментарии излишне. Последний параметр - дата в формате ГодМесяцЧисло. [Добавлено 22.12.2013] Параметр mfo можно не указывать. В таком случае будет выведена информация по всем доступным банкам. Курс может меняться несколько раз в день, поэтому может быть ситуация, когда по одному и тому же банку будут разные курсы. Что с этим делать - решается на стороне вызывающей программы: выбрать последний; выбрать максимальный/минимальный; выбрать средний; и т.п.
Для того, чтобы получить информацию о том, по каким банкам можно получить курс на текущий момент, необходимо обратиться к сервису так:
Операция checkLoad, code = код валюты в международном формате.
На выходе вы получите XML, который можно обрабатывать как душе угодно. Так же XML вы получите в случае ошибки. Я старался делать описание ошибок понятным, так что, надеюсь, разберетесь. Если не разберетесь - спрашивайте.
Курс валют на выходной день может отсутствовать.
Представляю вашему вниманию 2 обработки.
Для работы с конфигурациями: - Бухгалтерия, редакция 1.2 - Управление торговлей, редакция 2.3 - Управление производственным предприятием, редакция 1.3 - Управление торговым предприятием, редакция 1.2 ЗагрузкаМежбанковскогоКурсаВалют_БУ_12__УТ_23__УПП_13__УТП_12_pro1c.org.ua.zip ( 9,05 килобайт )
Кол-во скачиваний: 551
Вышеуказанные конфигурации - это конфигурации для Украины. Не исключено, что для Российских аналогов обработка тоже будет работать. Но это не проверялось. Кто пишет на 7.7, можете написать и выложить обработку работы с типовыми семерочными конфигурациями и пользователи семерки вам будут благодарны за это .
Вроде бы все, что хотел сказать я сказал. Если что-то забыл - буду обновлять первый пост и сигнализировать об этом в данной теме.
Сервис находится в бета-стадии, поэтому большая просьба отписывать об обнаруженных ошибках. Так же просьба отписывать, если ошибок не обнаружено и заявленный функционал отрабатывает нормально. Предложения и пожелания принимаются. Если будут интересные предложения по улучшению функционала - пишите и если это будет действительно интересно и технически нормально реализуемо - сервис будет наращивать функционал.
Группа: Основатель
Сообщений: 13985
Из: Киев
Спасибо сказали: 4554 раз
Рейтинг: 3684.3
Готовы обработки для работы с типовыми Украинскими конфигурациями. Первый пост обновлен. Пароль стандартный. Просьба отписаться, кто попробует сервис в работе. Предложения и пожелания так же высказывайте. Ещё тем кому сервис интересен - советую подписаться на тему, что бы быть в курсе всех новостей, изменений и обновлений.
За разработку автору большое спасибо, однако, по моему мнению, официальный курс НБУ был бы более востребованным, так как исходя именно из такого курса бухгалтера пересчитывают валюту в гривны на дату баланса или на дату покупки-продажи валюты в бухгалтерском и налоговом учете.
Группа: Пользователи
Сообщений: 2
Спасибо сказали: 0 раз
Рейтинг: 0
перехожу по ссылке, а в ответ это: This XML file does not appear to have any style information associated with it. The document tree is shown below. <InterbankCurrencyRate> <status>TRUE</status> <response> <purchase>8.11</purchase> <sale>8.15</sale> </response> </InterbankCurrencyRate>
Группа: Местный
Сообщений: 9564
Из: Kharkiv, UA
Спасибо сказали: 2536 раз
Рейтинг: 0
А как насчет варианта который будет отдавать сразу информацию по всем банкам? Смысл - мне нужен средний курс (ну или даже информация по большей части банков), а получать список банков, потом по каждому делать запрос как-то не кошерно
Личные бесплатные консультации не даю, для этого есть форум!
Группа: Местный
Сообщений: 9564
Из: Kharkiv, UA
Спасибо сказали: 2536 раз
Рейтинг: 0
Цитата(Vofka @ 09.12.13, 18:10)
А для каких целей это надо, если не секрет?
Управленческий учет предприятие ведет в долларах на основании среднего курса МВБУ, это более реальная картина, привязываться к конкретному банку не имеет смысла, по ряду причин их внутренних особенностей учета.
Цитата(Vofka @ 09.12.13, 18:10)
logist, на данный момент такой возможности нету
Можешь дать out.php я посмотрю на него, и сделаю такой вариант.
Личные бесплатные консультации не даю, для этого есть форум!
Группа: Основатель
Сообщений: 13985
Из: Киев
Спасибо сказали: 4554 раз
Рейтинг: 3684.3
Цитата(logist @ 09.12.13, 17:56)
Можешь дать out.php я посмотрю на него, и сделаю такой вариант.
Если обладаешь достаточными навыками в пхп, могу предложить написать свой сервис, опубликую специально для тебя . И зная из чего состоит этот веб-сервис, скажу, что out.php тебе ровным счетом ничего не даст, а всю систему я не дам . Я не обещаю, но постараюсь сделать то, что ты просишь до НГ.
Группа: Пользователи
Сообщений: 3
Спасибо сказали: 0 раз
Рейтинг: 0
Цитата(Vofka @ 04.08.13, 19:13)
Кто пишет на 7.7, можете написать и выложить обработку работы с типовыми семерочными конфигурациями и пользователи семерки вам будут благодарны за это wink.gif .
Дам код получения курса на дату. В принципе, для любого програмиста там все понятно.
Передаваемая переменная "Дт" - это дата получения курсов
Попытка Соединение = СоздатьОбъект("Addin.V7HttpReader"); Исключение Сообщить("Не удалось создать объект Addin.V7HttpReader!"); КонецПопытки;
Валюта ="840"; МФО = "305299"; //Дт - переменная с датой для получения курсов Если СтрДлина(МФО)<6 Тогда ТекстСсылки = "http://pro1c.org.ua/services/interbank_rate/out.php?operation=getCourse&code="+Строка(Валюта)+"&date="+Строка(СокрЛП(Формат(Дт,"Д ГГГГММДД"))); Иначе ТекстСсылки = "http://pro1c.org.ua/services/interbank_rate/out.php?operation=getCourse&mfo="+Строка(МФО)+"&code="+Строка(Валюта)+"&date="+Строка(СокрЛП(Формат(Дт,"Д ГГГГММДД"))); КонецЕсли;
стр = ""; Попытка Ошибка = 0; Соединение.ПолучитьКакСтроку(ТекстСсылки, Стр); Исключение Сообщить("Неудачная попытка соединения. Курсы по валюте """ + Валюта +""" не загружены."); Ошибка = 1; КонецПопытки;
Для к=1 по СтрКоличествоСтрок(Стр) Цикл Перебор = СтрПолучитьСтроку(Стр,к); //Сообщить(Перебор); Если СтрЧислоВхождений(Перебор,"purchase")>0 Тогда Стр1 = СтрЗаменить(Перебор,"<purchase>",""); Стр2 = СтрЗаменить(Стр1,"</purchase>",""); КурсПокупки = КурсПокупки + Число(СокрЛП(Стр2)); КвоКурсовПокупки = КвоКурсовПокупки+1; Стр1 = ""; Стр2 = ""; КонецЕсли; Если СтрЧислоВхождений(Перебор,"sale")>0 Тогда Стр1 = СтрЗаменить(Перебор,"<sale>",""); Стр2 = СтрЗаменить(Стр1,"</sale>",""); КурсПродажи = КурсПродажи + Число(СокрЛП(Стр2)); КвоКурсовПродажи = КвоКурсовПродажи+1; Стр1 = ""; Стр2 = ""; КонецЕсли; КонецЦикла;
Если КвоКурсовПокупки>0 Тогда // Средний курс покупки Сообщить("Покупка "+Строка(КурсПокупки/КвоКурсовПокупки)); КонецЕсли; Если КвоКурсовПродажи>0 Тогда // Средний курс продажи Сообщить("Продажа "+Строка(КурсПродажи/КвоКурсовПродажи)); КонецЕсли;
1С Предприятие 8.3, 1С Предприятие 8.2, 1С Предприятие 8.1, 1С Предприятие 8.0, 1С Предприятие 7.7, Литература 1С, Общие вопросы по администрированию 1С, Методическая поддержка 1С - всё в одном месте: на Украинском 1С форуме!