Сценарий "Загрузка курсов валют с сайта ЦБРФ"

6 5

В последнее время при внедрении системы DIRECTUM очень часто автоматизируются процессы по договорам. Неотъемлемой частью практически любого договора является сумма. Причем сумма бывает не только в национальной валюте, но и в любой другой. В связи с этим приходится правильно конвертировать сумму из одной валюты в другую по текущему курсу на текущий день. Раньше курс вносился в карточку договора руками, теперь же есть решение, позволяющее автоматизировать данный процесс.

Само решение состоит из следующих компонент:
- справочник Договоры (стандартный)
- справочник Валюты (стандартный)
- справочник Курсы валют (стандартный)
- сценарий Загрузка курсов валют с ЦБ (ExchangeRatesLoad)
- функция для выборки данных по курсам на текущий день (GetRateAndParOfExchange) (стандартная)

Первым делом необходимо заполнить справочник Валюты.
Для того чтобы все работало как надо, необходимо в реквизите Код ISO указывать международный код валюты (например, Российский рубль - RUB, Американский доллар - USD).

Далее в работу вступает сценарий по загрузке курсов валют. Для автоматического запуска сценария необходимо настроить задание windows с периодичностью "1 раз в день". В строке запуска задания указывается:

<Путь до клиентской части DIRECTUM>\sblauncher.exe -SYS="DIRECTUM" -CT="Script" -F="ExchangeRatesLoad"

Задание настраивается на запуск от имени пользователя с windows-аутентификацией. Данный пользователь должен к системе DIRECTUM подключаться также с windows-аутентификацией. С этим же логином и паролем пользователь должен иметь доступ в интернет.
В сценарии указывается адрес прокси-сервера компании для доступа в интернет.

Сценарий обрабатывает только валюты, занесенные в справочнике Валюты. Базовой валютой является Российский рубль.

После всех настроек каждый день можно наблюдать как магическим образом заполняется справочник курсов валют Улыбка

Для использования загруженных курсов в справочнике Договоры для реквизита Валюта необходимо написать вычисления:

RateAndPar = GetRateAndParOfExchange(Today(); Object.Валюта)
Rate = RateAndPar[0] // курс
Par = RateAndPar[1]  // номинал

// Присвоить реквизиту значение курса
Object.FractionalNumber = Rate

После этого при выборе валюты будет автоматически подтягиваться курс.

Действует для версии DIRECTUM 4.5 и выше.

dev.rar (6,15 Кб)

Мария Макарцева
Действует для версии DIRECTUM 4.4.1 и выше.

Я точно знаю, что справочник "Курсы валют" появился в стандартном DIRECTUM 4.5

Андрей Подкин
Российский рубль - RUB

А разве не RUR?

Денис Баранов

RUR - устаревший классификатор, использовался до 1998 года. Некоторые банки до сих пор используют RUR потому что у них так настроены АБС и им просто лень что-то менять.

Александр Савин
Я точно знаю, что справочник "Курсы валют" появился в стандартном DIRECTUM 4.5

Точно. Исправил.

Тарас Асачёв

А кто-нибудь пробовал эту обработку применить к Directum 5.1 или 5.2?

Загрузка происходит только для Рубля и никакой другой, понять не могу в чем дело. Валюты заполнены корректно.

Авторизуйтесь, чтобы написать комментарий