首页
学习
活动
专区
圈层
工具
发布
社区首页 >问答首页 >资产负债表计量DAX (填空)

资产负债表计量DAX (填空)
EN

Stack Overflow用户
提问于 2020-02-19 23:13:23
回答 1查看 669关注 0票数 1

背景我正在尝试基于一个事务文件在Power中构建一个资产负债表。我的报告有一个交易表,其中包含经典的会计交易(帐号、金额、描述、日期等)、分配表,将账户分配给资产负债表、损益表或现金流层次结构(账户、PLlvl1、PLlvl2等)。还有日历表。

构建一个正确的运行总量度量来对所有以前的事务进行求和,创建一个基本的平衡度量是非常直接的,请参阅下面的代码。

代码语言:javascript
复制
Balance =     
    CALCULATE( 
        SUM ( data[Amount] ) ; 
        FILTER(
            ALL( '$Calendar' );
            '$Calendar'[Date] <= MAX( '$Calendar'[Date] )
        )
    )

Problem --在低分辨率(年份)下可以很好地工作,但是,当按月进行一个月的概述时,求和只在有变异的时期显示值,其他所有月份都是空的。

在这个简化的例子中,我想要的结果是空白处结转上一段时间的值,-350也显示在二月和三月,-700在五月和六月等等,但是我似乎想不出一个正确的方法。

尝试到目前为止,我已经尝试在日历表和accounts表之间创建一个巨大的交叉表,但是一旦我导入更多的数据,报告就会很快停止。此外,我尝试了使用LASTNONBLANK()TOTALYTD()和其他一些方法,甚至尝试了一种更手动的方法,比如:

代码语言:javascript
复制
Attempt 6 = 
var LastNonBlankDate=
    CALCULATE(
        MAX('$Calendar'[Date]);
        FILTER(
            ALL('$Calendar'[Date]);
            '$Calendar'[Date]<=MAX('$Calendar'[Date]) && SUM(data[Amount])<>0)
        )
RETURN
    CALCULATE(SUM(data[Amount]);
    FILTER(ALL('$Calendar');'$Calendar'[Date]=LastNonBlankDate))

似乎什么也没做我想做的事。

有人能帮我找到正确的方向吗?

小提琴是暂时可用的这里

EN

回答 1

Stack Overflow用户

回答已采纳

发布于 2020-02-19 23:37:29

只需将数据模型关系从“两者”改为“单一”:

永远不要,永远不要使用双向关系,除非你没有其他选择(除了一些非常罕见的情况外,这种情况几乎从来没有发生过,这里的情况并非如此)。

您还可以简化您的度量:

代码语言:javascript
复制
Attempt 3 = 
VAR Current_Date = MAX( '$Calendar'[Date] )
RETURN
    CALCULATE( 
        SUM ( data[Amount] ) , 
        '$Calendar'[Date] <= Current_Date
    )

结果:

票数 1
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/60310696

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档