自定义度量以通过时间维度计算整个项目价值

2020-09-19 02:12发布

         点击此处--->   EasySAP.com群内免费提供SAP练习系统(在群公告中)

加入QQ群:457200227(SAP S4 HANA技术交流) 群内免费提供SAP练习系统(在群公告中)


尊敬的专家,

我有一个客户的要求,这似乎是相对基本的。

我们有一个先期模型来计划预算项目,其中我们有一个维度称为PROJECT。 每个项目都有一个属性" YEAR_CREATED",可以引用该项目的创建日期。 例如 2015.10。

每年,需要计算从创建日期到时间维度的当前成员的每个项目的整体价值。

要回答这个问题,我试图添加一个新的MEASURES FORMULAS" PTG"(Project To Go),说来,我遇到了麻烦,不确定是否会做些什么。

请在下面找到我要使用的代码:

成员[度量]。[PTG]作为
IIF([%INDICATORS_CAPEX%]。CURRENTMEMBER.PROPERTIES(" 2/CPMB/ACCTYPE")=" INC",(PERIODSTODATE( [%PROJECT%]。[CREATED_YEAR],[%TIME%]。CURRENTMEMBER),
-[MEASURES]。[/CPMB/SDATA],
IIF([%INDICATORS_CAPEX%]。CURRENTMEMBER。 PROPERTIES(" 2/CPMB/ACCTYPE")=" EXP",
SUM(PERIODSTODATE([%PROJECT%]。[CREATED_YEAR],[%TIME%]。CURRENTMEMBER),
[MEASURES]。[/ CPMB/SDATA])

         点击此处--->   EasySAP.com群内免费提供SAP练习系统(在群公告中)

加入QQ群:457200227(SAP S4 HANA技术交流) 群内免费提供SAP练习系统(在群公告中)


尊敬的专家,

我有一个客户的要求,这似乎是相对基本的。

我们有一个先期模型来计划预算项目,其中我们有一个维度称为PROJECT。 每个项目都有一个属性" YEAR_CREATED",可以引用该项目的创建日期。 例如 2015.10。

每年,需要计算从创建日期到时间维度的当前成员的每个项目的整体价值。

要回答这个问题,我试图添加一个新的MEASURES FORMULAS" PTG"(Project To Go),说来,我遇到了麻烦,不确定是否会做些什么。

请在下面找到我要使用的代码:

成员[度量]。[PTG]作为
IIF([%INDICATORS_CAPEX%]。CURRENTMEMBER.PROPERTIES(" 2/CPMB/ACCTYPE")=" INC",(PERIODSTODATE( [%PROJECT%]。[CREATED_YEAR],[%TIME%]。CURRENTMEMBER),
-[MEASURES]。[/CPMB/SDATA],
IIF([%INDICATORS_CAPEX%]。CURRENTMEMBER。 PROPERTIES(" 2/CPMB/ACCTYPE")=" EXP",
SUM(PERIODSTODATE([%PROJECT%]。[CREATED_YEAR],[%TIME%]。CURRENTMEMBER),
[MEASURES]。[/ CPMB/SDATA])

付费偷看设置
发送
5条回答
小灯塔
1楼-- · 2020-09-19 02:57

奇怪的MDX:)

PERIODSTODATE([%PROJECT%]。[CREATED_YEAR],[%TIME%]。CURRENTMEMBER)

1。 PERIODSTODATE仅在一年内有效

2。 [%PROJECT%]。[CREATED_YEAR]-这不是属性值,但没有意义...

为什么还要从某个时期开始对项目进行汇总??? 无论如何,您将没有记录!

我建议您创建一个度量,以对从TIME维中的第一个基本成员开始的所有内容进行求和。

天桥码农
2楼-- · 2020-09-19 02:44
haha101010
3楼-- · 2020-09-19 02:40

""我建议您创建 一种度量,将从TIME维度中的第一个基本成员开始对所有事物进行求和。"

好点瓦迪姆:-)谢谢。


" PERIODSTODATE仅在一年内有效"

您到底是什么意思? 就是说,如果我想总结当前成员时间的所有基本级别,我将无法使用它?

这是什么,正确的MDX表达式应该是什么?

我尝试此方法,但任何方法都可以解决:

成员[MEASURES]。[PTG] as IIF([%INDICATORS_CAPEX%]。CURRENTMEMBER.PROPERTIES(" 2/CPMB/ACCTYPE")=" INC",SUM(PERIODSTODATE([%TIME%] .. [2015.01] ,[%TIME%]。CURRENTMEMBER),-[MEASURES]。[/CPMB/SDATA]),IIF([%INDICATORS_CAPEX%]。CURRENTMEMBER.PROPERTIES(" 2/CPMB/ACCTYPE")=" EXP",SUM( PERIODSTODATE([%TIME%]。[2015.01],[%TIME%]。CURRENTMEMBER),[MEASURES]。[/CPMB/SDATA]),IIF([%INDICATORS_CAPEX%]。CURRENTMEMBER.PROPERTIES(" 2/CPMB/ACCTYPE")=" AST",
([[MEASURES]。[/CPMB/SDATA],CLOSINGPERIOD([%TIME%]。[LEVEL03])),IIF([%INDICATORS_CAPEX%]。CURRENTMEMBER.PROPERTIES(" 2/CPMB/ACCTYPE")=" LEQ",([MEASURES]。[/CPMB/SDATA],CLOSINGPERIOD([%TIME%]。[LEVEL03])),-[MEASURES]。[/CPMB/SDATA]) ))); SOLVE_ORDER = 3

感谢您的帮助

哎,真难
4楼-- · 2020-09-19 02:39

我也尝试这样做,但是面对Mdx语句错误:

成员[MEASURES]。[PTG] as IIF([%INDICATORS_CAPEX%]。CURRENTMEMBER.PROPERTIES(" 2/CPMB/ACCTYPE")=" INC",SUM([%TIME%]。[2015.01],[ %TIME%]。CURRENTMEMBER),-[措施]。[/CPMB/SDATA]),IIF([%INDICATORS_CAPEX%]。CURRENTMEMBER.PROPERTIES(" 2/CPMB/ACCTYPE")=" EXP",SUM([% TIME%]。[2015.01],[%TIME%]。CURRENTMEMBER),[MEASURES]。[/CPMB/SDATA]),IIF([[%INDICATORS_CAPEX%]。CURRENTMEMBER.PROPERTIES(" 2/CPMB/ACCTYPE")= " AST",
([[措施]。[/CPMB/SDATA],结算期([%TIME%]。[LEVEL03])),IIF([%INDICATORS_CAPEX%]。CURRENTMEMBER.PROPERTIES(" 2/CPMB/ACCTYPE")=" LEQ",([[MEASURES]。[/CPMB/SDATA],CLOSINGPERIOD([%TIME%]。[LEVEL03])),-[MEASURES]。[/CPMB/SDATA])))))); SOLVE_ORDER = 3

Bunny_CDM
5楼-- · 2020-09-19 02:53

请在此处阅读我的答案: https ://archive.sap.com/discussions/thread/3462987

类似的东西:

成员[度量]。[PTG]作为IIF([%INDICATORS_CAPEX%]。CURRENTMEMBER.PROPERTIES(" 2/CPMB/ACCTYPE")=" INC",SUM([%TIME%]。[2006.01]:[ %TIME%]。CURRENTMEMBER,-[MEASURES]。[/CPMB/SDATA]),...

它将与基本TIME成员一起处理报告! 但是,如果您想对所有数据求和,那么父时间成员是没有意义的!

一周热门 更多>