【问题标题】:Reversed Running Total DAX反向运行总 DAX
【发布时间】:2021-05-19 08:21:54
【问题描述】:

我有两张桌子:

Transactions:
CalendarID
LoanID
Amount

Calendar:
CalendarID
Date
Month
Quarter
Year

我需要计算“未完成”,即事务表的反向运行总计,作为 Power BI 报告的衡量标准。

取决于哪种过滤器,我需要汇总每个 LoanID 的所有未来付款,而不是当前期间。也就是说,如果我的过滤器基于季度并且我选择了 2020 年第三季度,那么我需要以下结果:

Q4 2020 + Q1 2021 + Q2 2021 + Q3 2021 + ... 

希望这是有道理的,希望你能帮助我:-)

在 Visual Studio 2017 中使用我的数据模型,它是表格的。

***更新***

我是这样设计的:

Outstanding:= 

VAR varEndOfQ= MAX(_TransactionDateCalendar[CalendarID])    

RETURN
CALCULATE([Repayments] ,FILTER(ALLSELECTED(_TransactionDateCalendar) ,
_TransactionDateCalendar[CalendarID] > varEndOfQ) )

但我现在遇到的一个问题是,每一行都附加到一个有生效日期的贷款。而且我不想在贷款生效之前在图表中显示它们。那是在我们真正开始偿还贷款之前,它们只是从日历维度中最早的日期开始的相同未偿还金额。

我试过这样解决:

Outstanding:= 

VAR varEndOfQ= MAX(_TransactionDateCalendar[CalendarID])
VAR varStartOfQ= MIN(_TransactionDateCalendar[CalendarID])

RETURN
CALCULATE([Repayments] ,FILTER(ALLSELECTED(_TransactionDateCalendar) , 
_TransactionDateCalendar[CalendarID] > varEndOfQ) , 
FILTER(ALLSELECTED(Fact_LoanFacility) , 
Fact_LoanFacility[EffectiveDateID] >= varStartOfQ))

但是它不能将交易金额除以贷款,它们都只是相同的金额......

【问题讨论】:

    标签: powerbi dax calculation ssas-tabular


    【解决方案1】:

    设法找到解决方案:

    Outstanding:=
    
    VAR varEndOfQ= MAX(_TransactionDateCalendar[CalendarID])
    VAR varStartOfQ= MIN(_TransactionDateCalendar[CalendarID])
    
    RETURN
    
    CALCULATE([Repayments] 
    , FILTER(ALL(_TransactionDateCalendar) , _TransactionDateCalendar[CalendarID] > varEndOfQ)
    , FILTER(Fact_LoanFacility, Fact_LoanFacility[EffectiveDateID] < varStartOfQ))
    

    【讨论】:

      猜你喜欢
      • 1970-01-01
      • 1970-01-01
      • 2018-10-25
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 2020-05-14
      • 2018-02-26
      相关资源
      最近更新 更多