Урок 8 — Функция «Курс»

Функция Курс возвращает курс указанной валюты по отношению к базовой на определенную дату. Функция имеет два параметра:

  • Валюта
  • Дата

Функция нужна, чтобы пересчитать цену из одной валюты в другую. Например, у нас известна цена в евро, но счет нам нужно выставить в рублях. Функция Курс поможет нам это сделать.

Добавьте на карточку объекта 123 поле с типом Дата. Это поле будет использоваться для получения курса. Добавьте это поле на карточку и в таблицу.

Сейчас мы будем делать так, чтобы поле Цена без скидки всегда было в рублях. Для этого нам нужно подправить формулу в этом поле так, чтобы она не просто брала цену из справочника Продукт, а еще и умножала ее на нужный курс.

Как получить этот нужный курс? Нужно обратиться к функции Курс и в качестве параметров ей передать валюту (она берется из родительского объекта Продукт) и дату (это новое добавленное поле).

Формула на человеческом языке будет выглядеть так:
Цена без скидки = Цена выбранного продукта * Курс(Валюта выбранного продукта ; Дата)

Создадим эту же формулу по шагам в редакторе формулы:

Добавить функцию Умножить:

Добавить первый параметр этой функции — цену продукта.

Добавить второй параметр функции Умножить — функцию Курс.

Добавить первый параметр функции Курс — валюту выбранного продукта.

Добавить второй параметр функции Курс — поле Дата.

Формула готова.

Нажмите ОК.

Функция в виде строки выглядит так:
Продукт>Цена * Курс(Продукт>Валюта;Дата)

Нажмите ОК.

Проверим формулу в действии. Не забудьте на карточке объекта 123 отметить галочку, в поле Дата.

На первой картинке цена продукта указана в долларах, на второй — в евро, на третьей в рублях. Функция Курс возвращает курс рубля к рублю равным единице, т.к. это базовая валюта, по этому и на третьей картинке все посчитано правильно.

Мы добились того, чего хотели — при выборе продукта в любой валюте мы получаем цену в рублях.

Идем дальше.