点击此处---> 群内免费提供SAP练习系统(在群公告中)
加入QQ群:457200227(SAP S4 HANA技术交流) 群内免费提供SAP练习系统(在群公告中)
嗨,
在"数据操作"中,我想总结大约20个不同的帐户,比如说公司代码和利润中心级别的X01,X02,... X20。
帐户不属于特定的层次结构节点。 我不想创建一个新的维度属性,仅用于设置用于汇总的过滤器。
帐户的值具有不同的粒度,例如
- X01-X05是每个公司代码和利润中心
- X06-X10是根据公司代码,利润中心和产品
- X11-X15是每个公司代码的利润中心和销售办事处
- X16-X20是每个公司代码的利润中心,产品和销售办事处
总和应存储在帐户Z中。
实现这一目标的最佳方式(最简单)是什么?
我目前的解决方案是这样的
VARIABLEMEMBER #COST_A,共[d/GLACCOUNT] [d/GLACCOUNT]的变量成员#COST_B [d/GLACCOUNT]的变量成员#COST_C [d/GLACCOUNT]的变量成员#COST_D DATA([d/GLACCOUNT] = #COST_A,[d/PRODUCT] ="#",[d/SALESOFFICE] ="#")= RESULTLOOKUP([d/GLACCOUNT] =" X01",[d/PRODUCT] ="#",[d/SALESOFFICE] ="#")+ RESULTLOOKUP([d/GLACCOUNT] =" X02",[d/PRODUCT] ="#",[d/SALESOFFICE] ="#")+ ... RESULTLOOKUP([d/GLACCOUNT] =" X05",[d/PRODUCT] ="#",[d/SALESOFFICE] ="#") DATA([d/GLACCOUNT] = #COST_B,[d/PRODUCT] ="#",[d/SALESOFFICE] ="#")= RESULTLOOKUP([d/GLACCOUNT] =" X06",[d/SALESOFFICE] ="#")+ ... RESULTLOOKUP([d/GLACCOUNT] =" X10",[d/SALESOFFICE] ="#") DATA([d/GLACCOUNT] = #COST_C,[d/PRODUCT] ="#",[d/SALESOFFICE] ="#")= RESULTLOOKUP([d/GLACCOUNT] =" X06",[d/PRODUCT] ="#")+ ... RESULTLOOKUP([d/GLACCOUNT] =" X10",[d/PRODUCT] ="#") DATA([d/GLACCOUNT] = #COST_D,[d/PRODUCT] ="#",[d/SALESOFFICE] ="#")= RESULTLOOKUP([d/GLACCOUNT] =" X06")+ ... RESULTLOOKUP([d/GLACCOUNT] =" X10") DATA([d/GLACCOUNT] =" Z",[d/PRODUCT] ="#",[d/SALESOFFICE] ="#")= RESULTLOOKUP([d/GLACCOUNT] = #PRODCOST_A)+ RESULTLOOKUP([d/GLACCOUNT] = #PRODCOST_B)+ RESULTLOOKUP([d/GLACCOUNT] = #PRODCOST_C)+ RESULTLOOKUP([d/GLACCOUNT] = #PRODCOST_D)
这真的很表演吗? 有没有更简单的方法?
谢谢-托马斯
PS:我缺少一个在RESULTLOOKUP函数中的维度过滤器中指定多个值的选项。
为什么不使用MEMBERSET范围源帐户?
嗨,瓦迪姆,
不允许在DATA函数之后定义MEMBERSET范围。
这意味着在每个"高级公式"步骤的开始只能定义一次MEMBERSET。
在我的情况下,我有4个变量,它们在以后进行汇总(#PRODCOST_A + #PRODCOST_B + #PRODCOST_C + #PRODCOST_D)。
变量仅在"高级公式步骤"中可见,而不能在整个数据操作中共享。
当然,我可以创建虚拟帐户来存储值而不是变量,但这是我要避免的事情。
因此,我认为您使用MEMBERSET解决范围帐户的解决方案将无法完全正常工作。
如果我误解了一些东西,请告诉我。 否则,还有其他解决方案吗?
关于托马斯,
对不起,我的错:)我只花了几个小时来玩高级公式脚本!
看起来没有办法拥有多个 RESULTLOOKUP中的成员过滤器...
您可以尝试在GLACCOUNT维中创建2个属性并填充:
然后类似:
P.S。 过去,我认为BPC脚本逻辑是一种非常有限的语言,但是现在有了SAC ...
一周热门 更多>