Я пытаюсь работать над сценарием, в котором у меня есть две таблицы, и мне нужно поискать в таблице 2 на основе нескольких значений среза, поступающих из одной таблицы.Ниже приведена подробная информация и ваши входные данные высоко оценены -
table 1
имеет столбцы - CompanyCode
, FromCurrency
, SalesQuantity
, Revenue
table 2
имеет столбцы -From Currency
, To Currency
, Exhange rate
, RateType
, Rate Effective fromdate
, Rate effective to Date
Слайсеры будут на CompanyCode
, To Currency
, Rate type
и date
.
CompanyCode
может быть несколькими выбранными значениями, и каждый CompanyCode
будет иметь одно связанное значение FromCurrency
, а остальные срезы будут одиночными выбранными значениями.У меня нет отношений между этими двумя таблицами.Мне нужно найти Exchange rate
на table 2
и умножить Revenue
на table 1
на Exchange rate
, извлеченное из table 2
на основе значений среза.
В основном, как это работает, например: если в слайсере выбраны две балансовые единицы, то нам нужно посмотреть в table 2
, используя два значения FromCurrency
, которые отфильтрованы по table 1
каккаждый CompanyCode
будет связан с одним FromCurrencyValue
.
Прямо сейчас я могу достичь этого, если выбран только один CompanyCode
, используя меру ниже, где я фильтрую таблицу до каждого выбранного значения вслайсерВыбранные значения рассчитываются как различные показатели и предоставляются в качестве входных данных в следующем запросе exchangeRateCalculate
-
SelectedRateType = SELECTEDVALUE(TABLE2[rate_type])
exchangeRateCalculate =
CALCULATE(VALUES(TABLE2[exch_rate]),
CALCULATETABLE(TABLE2,
FILTER(TABLE2, TABLE2[fromcurrency] = [SelectedFromCurrency]),
TABLE2[tocurrency] in VALUES(TABLE2[tocurrency]),
TABLE2[rate_type] in VALUES(TABLE2[rate_type]),
FILTER(TABLE2,
TABLE2[rateeffectivefromdate] <= [SelectedDate] &&
TABLE2[rateeffectivetodate] >= [SelectedDate]
)
)
)