Функция Курс возвращает курс указанной валюты по отношению к базовой на определенную дату. Функция имеет два параметра:
- Валюта
- Дата
Функция нужна, чтобы пересчитать цену из одной валюты в другую. Например, у нас известна цена в евро, но счет нам нужно выставить в рублях. Функция Курс поможет нам это сделать.
Добавьте на карточку объекта 123 поле с типом Дата. Это поле будет использоваться для получения курса. Добавьте это поле на карточку и в таблицу.
![](https://supasoft.ru/wp-content/uploads/2022/01/10641748.png)
Сейчас мы будем делать так, чтобы поле Цена без скидки всегда было в рублях. Для этого нам нужно подправить формулу в этом поле так, чтобы она не просто брала цену из справочника Продукт, а еще и умножала ее на нужный курс.
Как получить этот нужный курс? Нужно обратиться к функции Курс и в качестве параметров ей передать валюту (она берется из родительского объекта Продукт) и дату (это новое добавленное поле).
Формула на человеческом языке будет выглядеть так:
Цена без скидки = Цена выбранного продукта * Курс(Валюта выбранного продукта ; Дата)
Создадим эту же формулу по шагам в редакторе формулы:
Добавить функцию Умножить:
![](https://supasoft.ru/wp-content/uploads/2022/01/17095376.png)
![](https://supasoft.ru/wp-content/uploads/2022/01/37429199.png)
Добавить первый параметр этой функции — цену продукта.
![](https://supasoft.ru/wp-content/uploads/2022/01/84250105.png)
![](https://supasoft.ru/wp-content/uploads/2022/01/78168966.png)
Добавить второй параметр функции Умножить — функцию Курс.
![](https://supasoft.ru/wp-content/uploads/2022/01/05409181.png)
![](https://supasoft.ru/wp-content/uploads/2022/01/72477307.png)
Добавить первый параметр функции Курс — валюту выбранного продукта.
![](https://supasoft.ru/wp-content/uploads/2022/01/63922732.png)
![](https://supasoft.ru/wp-content/uploads/2022/01/82986553.png)
Добавить второй параметр функции Курс — поле Дата.
![](https://supasoft.ru/wp-content/uploads/2022/01/22148706.png)
![](https://supasoft.ru/wp-content/uploads/2022/01/52194588.png)
Формула готова.
![](https://supasoft.ru/wp-content/uploads/2022/01/62420568.png)
Нажмите ОК.
Функция в виде строки выглядит так:
Продукт>Цена * Курс(Продукт>Валюта;Дата)
![](https://supasoft.ru/wp-content/uploads/2022/01/30416732.png)
Нажмите ОК.
Проверим формулу в действии. Не забудьте на карточке объекта 123 отметить галочку, в поле Дата.
![](https://supasoft.ru/wp-content/uploads/2022/01/30071604.png)
![](https://supasoft.ru/wp-content/uploads/2022/01/83828695.png)
![](https://supasoft.ru/wp-content/uploads/2022/01/68650756.png)
На первой картинке цена продукта указана в долларах, на второй — в евро, на третьей в рублях. Функция Курс возвращает курс рубля к рублю равным единице, т.к. это базовая валюта, по этому и на третьей картинке все посчитано правильно.
Мы добились того, чего хотели — при выборе продукта в любой валюте мы получаем цену в рублях.