是否可以使用BPC Script REC命令添加值而不是发布增量?

2020-09-14 03:24发布

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

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


大家好,

在我当前的BPC脚本逻辑中,我正在使用REC(EXPRESSION ...)命令来计算要发布到数据库中的新记录(即计划模型)。

显然,然后将计算结果视为新目标值,该新目标值会触发增量过帐以匹配该值。

示例:

特定帐户500000上已经有1000欧元。(请求已打开)

然后,脚本逻辑计算出另外400欧元要附加到帐户500000上。

现在:系统过帐-600欧元的差额,而不是增加400欧元,以便支付400欧元。 当然,这是根据设计的,只要所有记录(1000 EUR和400 EUR)都驻留在同一打开请求中即可。

问题:

我认为关闭打开请求可能是处理此请求的唯一方法。 但是,是否有其他解决方法可以在不需要关闭请求的情况下,在500000帐户中最终得到1,400欧元? (不同的REC语句?)

感谢您的想法...

亲切问候

克劳斯

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

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


大家好,

在我当前的BPC脚本逻辑中,我正在使用REC(EXPRESSION ...)命令来计算要发布到数据库中的新记录(即计划模型)。

显然,然后将计算结果视为新目标值,该新目标值会触发增量过帐以匹配该值。

示例:

特定帐户500000上已经有1000欧元。(请求已打开)

然后,脚本逻辑计算出另外400欧元要附加到帐户500000上。

现在:系统过帐-600欧元的差额,而不是增加400欧元,以便支付400欧元。 当然,这是根据设计的,只要所有记录(1000 EUR和400 EUR)都驻留在同一打开请求中即可。

问题:

我认为关闭打开请求可能是处理此请求的唯一方法。 但是,是否有其他解决方法可以在不需要关闭请求的情况下,在500000帐户中最终得到1,400欧元? (不同的REC语句?)

感谢您的想法...

亲切问候

克劳斯

付费偷看设置
发送
7条回答
bbpeas
1楼-- · 2020-09-14 04:09

不是100%清楚您想要什么,但是:

* REC(EXPRESSION =%VALUE%+ 400)

将导致1000 + 400 = 1400

打开和关闭请求与主题无关。

昵称总是被占用
2楼-- · 2020-09-14 04:07

嗨,瓦迪姆,

基本上,我要实现的目标是将REC语句的结果添加到帐户中已有的内容中。

让我们假设第一个脚本逻辑根据现有源记录的%value%向现金帐户过帐+ 1000欧元。 (例如10,000欧元的10%)

然后,第二个脚本逻辑应将另一个+ 400欧元过账到同一现金帐户,但要基于另一个现有源记录的%value%。 (例如2,000欧元的20%)

当前-由于ist的现金帐户相同-系统将在+1000到+400 =-600欧元之间过帐差额,以便最终获得第二笔REC计算的+400欧元。

因此,我的问题是:有没有一种方法可以发布第一个脚本逻辑的+1000欧元和第二个脚本逻辑的+400欧元,然后以正确的+1400欧元结账。

亲切问候

Claus

太Q了
3楼-- · 2020-09-14 03:49

有很多替代解决方案,其中一种是利用2条审计跟踪,例如:Input&Calc

假设Calc包含1000欧元

假设通过另一次计算,输入中将填充400欧元

* XDIM_MEMBERSET ACCOUNT = 500000

*审核时

* IS输入,计算

* REC(FACTOR = 1,AUDITTRAIL = Calc)

* ENDWHEN

然后Calc将在报告中逐渐累积。

Alawn_Xu
4楼-- · 2020-09-14 04:08

问题作者没有解释"脚本逻辑然后又计算了400欧元"

它可能来自其他帐户,等等...那么您不需要其他审核栏!

jovirus
5楼-- · 2020-09-14 03:54

对不起,您的描述不清楚!

示例:

帐户A1 = 1000

帐户A2 = 400

我们希望A1 = A1(上一个值= 1000)+ A2(400)= 1400

 * XDIM_MEMBERSET ACCOUNT = A1//仅监视单个帐户
 *当帐户
 * IS *//A1范围
 * REC(EXPRESSION =%VALUE%+ [ACCOUNT]。[A2])//1000 + 400 = 1400
 * ENDWHEN 

问题在于,在这种情况下,如果A1中没有记录,则脚本将无法工作

或者我们可以用不同的方式完成相同的结果,但是没有丢失记录的问题:

 * XDIM_MEMBERSET ACCOUNT = A1,A2//涵盖两个帐户
 *当帐户
 * IS *//A1和A2范围
 * REC(EXPRESSION =%VALUE%,A1)//1000和400将合计为1400以写入A1
 * ENDWHEN 

希望很清楚

悠然的二货
6楼-- · 2020-09-14 04:10

对不起,必须重复第三次-绝对不清楚!

使用简单的测试脚本并阅读: https://blogs.sap.com/2014/01/31/how-to-ask-questions-about-script-logic-issues /

"第一个应该计算净收入帐户的10%(100,000欧元),并将计算出的10,000欧元过帐到现金帐户。" -没有提供脚本,没有数据样本,什么都没有!

"逻辑通过commit语句关闭。" -commit在BPC NW中绝对是无用的语句

"第二道逻辑,此后立即处理(例如,通过数据包链接)应计算另一个收入帐户的20%(20,000欧元),并应将计算出的4,000欧元金额记入同一个现金帐户,基本上将4,000 在已存在的第一个逻辑10,000欧元之上。" -没有提供脚本,没有数据样本,什么都没有!

我已经向您解释了两次,如果您想添加-必须像以前的答案一样使用脚本!

"第二个逻辑也以commit语句结尾。" -也没用!

对不起,还不清楚吗?

P.S。 "由逻辑1和逻辑2计算的两个记录都具有相同的粒度!源帐户不构成要针对现金帐户过帐的目标记录的粒度的一部分。" -绝对不清楚的声明! 尝试自己阅读...

一周热门 更多>