0 REQTSN和使用狐狸公式计算总和

2020-08-24 16:45发布

点击此处---> 群内免费提供SAP练习系统(在群公告中)加入QQ群:457200227(SAP S4 HANA技术交流) 群内免费提供SAP练习系统(在群公告中)嗨 使用嵌入式BPC 11 ...

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

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


使用嵌入式BPC 11

我创建了一个Fox公式来计算各种关键指标的总费用。

见下文

DATA FISCPER3类型0FISCPER3。
DATA FISCYEAR类型0FISCYEAR。

数据DKFTYP类型ZEDDKFTYP。

{ZEDKMNT1,012,FISCYEAR,TOTAL,DKFTYP} = 0。

FOREACH FISCPER3,FISCYEAR,DKFTYP。
{ZEDKMNT1、012,FISCYEAR,TOTAL,DKFTYP} = {ZEDKMNT1、012,FISCYEAR,TOTAL,DKFTYP} + {ZEDKMNT1,FISCPER3,FISCYEAR,PERIODIP。 br> ENDFOR。

似乎工作正常

但是每次我重新启动计划顺序时,都会在ADSO中用新的0REQTSN创建新行。

每行都是相同的(相同的键,相同的结果),只是技术IO 0REQTSN发生了变化

后果:在查询中,总数乘以fox执行次数,

例如,如果我有3笔总和,可以说10 + 15 + 25 = 50

我第一次启动PS时,会为关键指标创建一行,总计等于50

所以在查询中,总数= 50

然后我再次启动PS

创建具有相同结果50的另一行,仅与前一行0REQTSN有所不同

所以在查询中,总数= 100

第三次启动

所以在查询中,总数= 150

以此类推

有人知道发生了什么吗?

2条回答
CPLASF-自律
2020-08-24 16:50

您将其设置为0的行似乎不在FOR循环中

{ZEDKMNT1,012,FISCYEAR,TOTAL,DKFTYP} = 0。

因此,在这种情况下,系统尚未定义FISCYEAR,这可能就是为什么它不重置值的原因。

您可以尝试将FOR周期分成两个周期(取决于您选择的FISCYEAR数),或者从变量中获取值。

示例

FOREACH摩托车。

{ZEDKMNT1,012,FISCYEAR,TOTAL,DKFTYP} = 0。

FOREACH FISCPER3,DKFTYP。
{ZEDKMNT1,012,FISCYEAR,TOTAL,DKFTYP} = {ZEDKMNT1,012,FISCYEAR,TOTAL,DKFTYP} + {ZEDKMNT1,FISCPER3,FISCYEAR,PERIODIC},DKF。 ENDFOR。

ENDFOR。

一周热门 更多>