Добрый вечер. https://www.daxpatterns.com/currency-conversion/ использую вот этот паттерн для конвертации валют (дневная гранулярность) Есть

задача: мне нужно конвертировать суммы планируемые по последнему известному курсу (курса на будущее так-то нет).
Я использовал LASTNONBLANK, но он работает не до конца корректно.
CALCULATETABLE( LASTNONBLANK('currency_rates'[Exchange rate],MAX('currency_rates'[Exchange rate])),
'currency_rates'[Date]<= SELECTEDVALUE('facts'[next_payment_date]) &&
'currency_rates'[Currency]=SELECTEDVALUE(facts'[next_payment_currency])

Таким образом я пытался заменить конструкцию
"@Rate", CALCULATE (SELECTEDVALUE ( 'Daily Exchange Rates'[Rate] )
из паттернов.
Остальной код такой же. То есть я пытался заменить дату
Работает криво, потому что в таблице, где есть каждая сделка - конвертация идёт.
А вот агрегирования по годам нет.
Может есть более оптимальные способы выбрать эту дату?

11 ответов

12 просмотров

CALCULATETABLE(LASTDATE()...)

Random-Name Автор вопроса
Yurі Polіshсhuk
CALCULATETABLE(LASTDATE()...)

спасибо. Изучу способ

Random-Name Автор вопроса

Хм, функция вернёт дату,мне же надо вернуть курс. Ладно поищу ещё

вернет дату последнего доступного курса...

Random Name
Хм, функция вернёт дату,мне же надо вернуть курс. ...

calculateпринимает в качестве фильтра таблицу , далее сами додумайте, все просто

Random-Name Автор вопроса
Yurі Polіshсhuk
вернет дату последнего доступного курса...

Придумал решение лучше и удобнее) Просто протянуть таблицу курсов и использовать автозаполнение вниз. Так и курс будет пересчитываться каждый день, и не надо мудрить с условиями, мол заполнен курс или нет.

Random Name
Придумал решение лучше и удобнее) Просто протянуть...

Лучше - это затянуть курс через запрос в факт и не заниматься ерундой

Random-Name Автор вопроса
Yurі Polіshсhuk
Лучше - это затянуть курс через запрос в факт и не...

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

Random-Name Автор вопроса
Yurі Polіshсhuk
Лучше - это затянуть курс через запрос в факт и не...

ну вот) В SQL добавил curerrent_date + interval '2' year И всё. Автозаполнение в PQ было. Кстати, я в раздумьях начал читать комментарии под статьёй, может действительно есть решение в Даксе удобное, так Марко Руссо предложил такое же решение (размножить курсы вперед по датам), так как его Дакс работает не оптимально. "@Rate", VAR LastDateSelected = MAX ( 'Date'[Date] ) VAR LastDateWithRates = CALCULATE ( MAX ( 'Monthly Exchange Rates'[Date] ), REMOVEFILTERS(), 'Date'[Date] <= LastDateSelected ) VAR Result = CALCULATE ( SELECTEDVALUE ( 'Monthly Exchange Rates'[Rate] ), 'Date'[Date] = LastDateWithRates ) А что вы предлагали?

В 3 раза короче и быстрее

Random-Name Автор вопроса
Yurі Polіshсhuk
В 3 раза короче и быстрее

Ну, по определению он не может быть быстрее решения с продлением таблицы справочника до нужной даты. А вот сделать лучше решение 9 месячной давности было бы любопытно глянуть

Похожие вопросы

Обсуждают сегодня

Добрый день! Вопрос, понимаю, не очень принципиальный и можно его обойти, но просто любопытно, откуда в срезе берётся "Пусто"? Если в срез перетягиваю Месяц из Sales, то всё х...
Anastasiya
28
Добрый день! Помогите, пожалуйста, может быть кто сталкивался. У заказчика есть интересное требование. Есть данные по проектам и дисциплинам по этим проектам (каждый проект ...
Leonid Solovev
20
Добрый вечер. Поручили выбрать сервис для нового дашборда компании. Пока выбор упал на power bi. Можете что нибудь рассказать об опыте использования? Подводных камнях, способо...
Илья
33
добрый день всем! Пожалуйста, помогите решить данную проблему: дашборд не мой, при обновлении датасета с браузера - выдает ошибку - {"error":{"code":"DM_GWPipeline_Gateway_Mas...
Feniks Sushhaya
15
Здравствуйте! Подскажите, можно ли в DAX вычесть НДС прямо в формуле SAMX, или нужна обязательно таблица с процентами НДС? "НДС нужно исключить. Считайте НДС равным 1.2 (20%)....
Владимир
26
Добрый день, Коллеги. Подскажите пожалуйста в чем причина ? При выборе поля Размер, гистограмма по Размерам формируется , а по Складам -нет. Названия Складов все заполнены ...
Julia Po
33
Всем привет) Я уже задавала этот вопрос на прошлой неделе, но возможно, в пятницу было очень непонятно сформулировано. Постаралась сейчас максимально понятно все описать Необ...
Катя Каткова
4
День добрый. Есть такой вопрос. Имеем матрих таблицу, есть по каждому человеку группы вопросов, он отвечал на них и имеет баллы. Т. Е. В группе есть несколько вопросов. Нужно ...
Oleg Savinkov
21
Коллеги! По одиночке в стреде PBI Desktop все запросы к Analytic srv и SQL SRV отрабатываются долго (много данных), но выполняются. Но при обовлении всей модели выдает ошибк...
Антон Москвин
23
Видимо это имели в виду?
Ekaterina Lelekova
25
Карта сайта