Цены в разных валютах

Рассмотрим ситуацию, когда в обрабатываемом прайс листе есть 2 столбца с ценами: в столбце 5 у нас цена в рублях, а в столбце 6 цена в usd (при этом, если в рублевой колонке цена указана, то цена в usd отсутствует, и наоборот)

Наша задача — при обработке прайса получить одну цену (например, в долларах), чтобы программа брала цену из столбца USD, а если там нет цену, то брала рублевую цену, и пересчитывала её по заданному курсу.

 

Как это сделать:

Добавляем в обработчик прайса 2 временных поля - Цена USD и Цена RUB

Временные поля добавляются кнопкой, помеченной зелёной стрелкой:

В списке полей должны появиться 2 поля с названиями #Цена USD и #Цена RUB
(программа помечает временные поля символом #)

В одно поле (#Цена USD) берём значение из столбца USD (данные из столбца 5),
в другое поле (#Цена RUB) берём значение из столбца RUB (данные из столбца 6), включая конвертацию курса на владке Стоимость для этого поля (в итоге, в этом временном поле будет тоже цена в долларах)

После чего, в основном поле Цена, используем режим Формула, и пишем такую формулу:
{#Цена USD}  {#Цена RUB}

Для программы это означает, что надо сцепить значения двух временных столбцов через пробел

И теперь остаётся добавить функцию обработки Сумма чисел на вкладке Функции обработки для поля Цена

Поскольку в каждой строке цена задана только в одном из столбцов, то одно из слагаемых будет равно нулю, а второе - цене в долларах (исходной, или сконвертированной из рублей)