2016-06-21 3 views
1

У меня есть таблица (Data_all), которая вычисляет daycount_ytd в одной таблице.Как ссылаться на одно значение в расчетном столбце в мере (DAX)

[Date] is in Date Format. 
[Fiscal Year] is just year. eg: 2016 

Calculated Column 
daycount_ytd=DATEDIFF("01/01/"&[Fiscal Year],Data_all[Date],day)+1 

Im пытается создать меру, которая относится к этому вычисляемый столбец

Measure: 
Amt_X Yield %:=[Amt X]/([Amt Y]/365* (Data_all[DayCount_YTD])) 

я получаю ошибку, что Data_all [DayCount_YTD] ссылается на список значений. Как фильтровать выражение для получения одного значения без использования функции агрегации, например: (сумма, медиана)?

Или, может быть, есть еще один способ добиться того же расчета?

ответ

0

Вы пришли к фундаментальной концепции в DAX, и как только вы разработали, как с этим бороться, тогда решение обобщает множество сценариев.

В принципе, вы не можете просто передавать столбцы в DAX-меру, не обертывая их чем-то другим - обычно это какая-то математическая операция, или вы можете использовать VALUES() в зависимости от того, что вы пытаетесь сделать.

Эта мера будет работать хорошо, если вы используете его в PIVOT с датой в качестве метки строки:

= 
    SUM (data_all[Amt X]) 
/(
     SUM (data_all[Amt Y])/365 
     * MAX (data_all[daycount_ytd]) 
    ) 

Однако вы увидите, что он дает неверную сумму, как это в последнее для всего вещь. Вам нужна версия, которая выполняет итерацию по строкам, а затем выполняет вычисления для SUM или AVERAGE каждого элемента. Для этого есть целый класс функций DAX, таких как SUMX, AVERAGEX и т. Д. Подробнее о них вы можете узнать here

Мне не совсем понятно, что должно быть математикой за вашим «итогом», но следующая мера рассчитывается значение для каждого дня и суммирует их вместе:

= 
    SUMX(
     VALUES(data_all[date]), 
     SUM(data_all[Amt X])/
     (SUM(data_all[Amt Y])/365 * MAX(data_all[daycount_ytd])) 
     ) 
+0

Спасибо за ответ, однако формула на самом деле для процентного расчета, поэтому я не думаю, что я могу суммировать значение для каждого дня. –

+0

Я использовал значения() в сочетании с другой таблицей (одна строка), чтобы в конце концов получить мои вычисления. –

 Смежные вопросы

  • Нет связанных вопросов^_^