DAX-期末余额计算
来源:互联网 发布:ubuntu安装浏览器 编辑:程序博客网 时间:2024/04/29 09:54
期末余额计算比较常见,比如,存货。DAX功能十分强大,丝毫不逊色MDX。
下面以一个实例说明,分别计算四种情况期末余额:
基本情况,地区表,商店表,数量表,日期表。
第一种情况,
2012
东城:5+3=8 (3/25/2012)
北城:0
南城:0
西城:8 (2/25/2012)
合计:5+3=8 (3/25/2012)
这种计算比较简单,
CALCULATE(SUM(Facts[Amount]),FILTER(DATE,'Date'[Date]=MAX(Facts[Date])))
CALCULATE(SUM(Facts[Amount]),LASTDATE(Facts[Date]))
类似MDX的LASTCHILD。
见下图,注意合计。
第二种情况,
2012
东城:5+3=8 (3/25/2012)
北城:0
南城:0
西城:21+8=29 (1/25/2012,2/25/2012)
合计:8+29=37
这种计算也不复杂,
SUMX(VALUES(Store[StoreId]),CALCULATE(SUM(Facts[Amount]),LASTDATE(Facts[Date])))
第三种情况,
2012
东城:5+3=8 (3/25/2012)
北城:14 (12/25/2012)
南城:11 (12/25/2012)
西城:8 (2/25/2012)
合计:8+14+11+8=41
这种计算很复杂,但是DAX足够强大,
SUMX(ADDCOLUMNS(ADDCOLUMNS(VALUES(Area[Name]),"LENEDate",CALCULATE(MAX(Facts[Date]),'Date'[Year]<=VALUES('Date'[Year]))),"Quantity",CALCULATE(SUM(Facts[Amount]),FILTER(ALL(DATE),'Date'[Date]=[LENEDate]))),[Quantity])
看下图,特别是合计和总计。
第四种情况,
2012
东城:5+3=8 (3/25/2012)
北城:14+7=21
南城:9+11=20
西城:21+8=29
合计:8+21+20+29=78
这种计算更加复杂,DAX表现非常出色。
SUMX(ADDCOLUMNS(ADDCOLUMNS(CROSSJOIN(VALUES(Store[Name]),VALUES(Area[Name])),"LENEDate",CALCULATE(MAX(Facts[Date]),'Date'[Year]<=VALUES('Date'[Year]))),"Quantity",CALCULATE(SUM(Facts[Amount]),FILTER(ALL(DATE),'Date'[Date]=[LENEDate]))),[Quantity])
最后,我们把这四种情况放在一起,作个比较,清晰明了,也可以体会DAX的强大和魅力。
- DAX-期末余额计算
- 期末无余额的科目
- DAX
- 计算账户的余额及日均余额
- 智能计算期末
- 《并行计算》期末总结
- 余额宝收益计算程序
- 期末余额 = 期初余额 + 本期增加发生额 - 本期减少发生额
- 第八周-计算定期还款余额
- 预付发票未核销余额计算SQL.
- 预付发票未核销余额计算SQL.
- java.math.BigDecimal 用户余额计算
- KIS迷你版、标准版经常出现出纳扎帐后本期期初不等于上期期末余额
- KIS 标准版 银行存款日记账扎帐后本期期初不等于上期期末余额
- 期末总结-电力系统潮流上机计算
- 虚拟化与云计算期末复习
- DAX-MANY_TO_MANY
- DAX介绍
- O(N lgK) 时间内合并K个有序链表
- Java 同步方式 (2) —— wait和notify/notifyall
- C++中线程及定时器的示例代码
- AVR系列单片机的基本架构(翻译自俄语讲义)
- ACM基本算法分类、推荐学习资料和配套pku习题
- DAX-期末余额计算
- c++0x:auto 自动类型识别
- 嘈杂的办公环境
- PP常用T-CODE
- 嘿牛程序员__成都传智博客__包装类(一)
- epoll使用详解(精髓)
- C++向目标进程PEB模块链添加自己的DLL
- Oracle 11g R2 for Win7旗舰版(64位)的安装步骤注意事项+PL/SQL Development
- 加密