Неофициальный форум пользователей Qlik Sense & Qlikview

Для разработчиков => Вопросы по Qlik Sense & QlikView => Тема начата: Multicvet от 11 ноября 2014, 01:00:26

Название: Пересчет валюты
Отправлено: Multicvet от 11 ноября 2014, 01:00:26
Магазин в январе продавал в трех валютах:
USD - 100
EUR - 200
РУБ - 700

Строю сводную таблицу, в которой вычисляемое поле "Сумма в руб" = IF(Валюта='USD',Sum([Сумма продаж]*40),IF(Валюта='EUR',Sum([Сумма продаж]*50)*,Sum([Сумма продаж])))

Если в сводной таблице есть поле Валюта, то Сумма рассчитывается правильно = 14700
Но, если я убираю валюту, то получается сумма = 1000, т.е. формула не пересчитывает валюты.
Как корректно рассчитать сумму в таблице без отображения валют.

Спасибо!
Название: Re: Пересчет валюты
Отправлено: admin от 11 ноября 2014, 01:11:42
Курсы постоянны? Или должны браться из истории курсов?
Название: Re: Пересчет валюты
Отправлено: Multicvet от 11 ноября 2014, 01:51:47
В данном примере постоянны (множители), а в реальном отчете для курсов выделены переменные
Название: Re: Пересчет валюты
Отправлено: Multicvet от 11 ноября 2014, 02:11:00
Сделал по-деревенски, но работает:
sum({<Валюта={'RUR'}>} [Сумма продаж])+sum({<Валюта={'USD'}>} [Сумма продаж]*40)+sum({<Валюта={'EUR'}>} [Сумма продаж]*50)
Название: Re: Пересчет валюты
Отправлено: admin от 11 ноября 2014, 02:17:42
Тоже вариант  :)
Также, можно на уровне скрипта рассчитать отдельным полем рублевую сумму. В этом случае будет проще некуда.
Если надо будет вычислять по истории курсов, то тогда без Aggr() не обойтись.
Название: Re: Пересчет валюты
Отправлено: Multicvet от 11 ноября 2014, 02:58:44
Спасибо!