关键指标计算问题

2020-09-15 17:24发布

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

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


大家好,

我正在尝试使用关键指标计算来配置以下流程。 所有关键指标均在同一基础计划级别上定义。

KF1是存储的且系统可编辑的关键指标。

KF2默认为KF1,并且"在当前和将来均可编辑"

KF3是存储的关键人物。

KF4是计算得出的关键值(KF4 = KF3 * KF1)

我已将KF5配置为->如果KF2为空,则KF 5 = KF4 + KF1,否则为KF2。

但是,在测试上述计算时,当KF2为空时,KF4 + KF1的加法不反映在KF5中。 如果KF2有一个值(在KF2中进行编辑并保存),则KF5反映正确的值。

示例->

案例1:
KF1 = 100
KF 2 = 200(手动编辑和保存)
KF3 = 0.2

KF4 = 20(根据KF公式计算)
KF 5 = 200(按预期)

案例2:

KF 1 = 100

KF 2 = 100(默认为KF 1,无需手动编辑)

KF 3 = 0.2

KF 4 = 20(根据KF公式计算)

KF 5 = 100(此处的期望值为100 + 20 = 120)


如果使用复制算子将KF 1和KF 4的加法复制到存储的关键指标中,我们将获得预期的结果。 然后将存储的关键指标用于KF5的计算。 但是,我们不想在设计中使用运算符。 有什么办法只能通过关键指标计算来实现上述方案?

谢谢!

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

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


大家好,

我正在尝试使用关键指标计算来配置以下流程。 所有关键指标均在同一基础计划级别上定义。

KF1是存储的且系统可编辑的关键指标。

KF2默认为KF1,并且"在当前和将来均可编辑"

KF3是存储的关键人物。

KF4是计算得出的关键值(KF4 = KF3 * KF1)

我已将KF5配置为->如果KF2为空,则KF 5 = KF4 + KF1,否则为KF2。

但是,在测试上述计算时,当KF2为空时,KF4 + KF1的加法不反映在KF5中。 如果KF2有一个值(在KF2中进行编辑并保存),则KF5反映正确的值。

示例->

案例1:
KF1 = 100
KF 2 = 200(手动编辑和保存)
KF3 = 0.2

KF4 = 20(根据KF公式计算)
KF 5 = 200(按预期)

案例2:

KF 1 = 100

KF 2 = 100(默认为KF 1,无需手动编辑)

KF 3 = 0.2

KF 4 = 20(根据KF公式计算)

KF 5 = 100(此处的期望值为100 + 20 = 120)


如果使用复制算子将KF 1和KF 4的加法复制到存储的关键指标中,我们将获得预期的结果。 然后将存储的关键指标用于KF5的计算。 但是,我们不想在设计中使用运算符。 有什么办法只能通过关键指标计算来实现上述方案?

谢谢!

付费偷看设置
发送
11条回答
compass1988
1楼 · 2020-09-15 17:27.采纳回答

你好Rohit,

当我尝试某些组合时,屏幕截图是在稍后的阶段拍摄的,因此第二次计算无效。 激活后,我检查了所有计算是否都处于活动状态,并在激活期间检查了所有警告,以找出任何未得到预期结果的可能原因。

我收到的有关KF2的唯一警告是:

计算 KF5 @ PL :存在KF2的计算,但使用存储的值

但是我没有做任何更改,因为我的目的是利用KF2的存储值。

关于计算图,它是正确生成的,还是激活后预期生成的。

在这一点上,我已经更改了该KF的计算,并使用CASE获得了预期的输出。 我认为提高OSS在这一点上没有意义,因为我已经完全删除了这些计算。 让我知道您对此的想法。

谢谢

Pallavi

宇峰科技
2楼-- · 2020-09-15 17:31

嗨Pallavi,

使用可以使用以下方法,对您的方法稍加修改,并根据您的要求提供输出。

在您现有的设计中

1>使用以下详细信息创建新的 KF6 @ PL (基本上是ur KF2的副本)(只需计算KF)

AKKF6 @ REQUEST = SUM(" AKKF6 @WKPRODLOC")(未存储)

AKKF6 @ WKPRODLOC =" AKKF2 @ WKPRODLOC"(存储和输入)

2>在KF5计算中使用此新KF6。 其余所有都保持不变。

AKKF5 @ WKPRODLOC = IF(ISNULL(" AKKF6 @ WKPRODLOC"," AKKF1 @ WKPRODLOC" +" AKKF4 @ WKPRODLOC"," AKKF6 @ WKPRODLOC")

如果需要截图可以共享。 我想因为问题已关闭,所以我无法对屏幕截图进行升级。
我已经配置了相同的软件并测试了它的工作。

关于

Akhilesh Agarwal

N-Moskvin
3楼-- · 2020-09-15 17:54

Hello Pallavi,

我希望您必须将KF2定义为IF(ISNULL(" KF2 @ PL ")," KF1 @ PL "," KF2 @ PL "),表示已存储并计算了KF2。 因此,在KF5中,当在KF2中没有明确输入的值时,您希望计算为KF4 + KF1,否则选择输入的值。 这意味着您需要在KF5计算中包括存储(未计算)的KF2。 单击输入关键指标并勾选存储的KF2。

这应该可以解决您的问题。 请尝试一下,让我知道结果。


致谢

Sai Samrat

宇峰Kouji
4楼-- · 2020-09-15 17:49

嗨Akhilesh,

感谢您的回复。 我尚未在系统中核对您的计算。 在您计算KF5时,我假设KF6被标记为已计算。 这意味着从本质上讲,它将仅在非空状态下检查KF2。 那么,您认为它在您的配置中起作用而不是在我的配置中起作用的原因是什么? 我在这里缺少什么吗?

谢谢

Pallavi

闻人可可
5楼-- · 2020-09-15 17:49

kf1.png

kf2.png

kf3.png

kf4.png

kf5.png

Hello Sai,Rohit,

我已经上传了所有关键指标的关键指标计算。 要求您让我知道我是否丢失了任何东西

谢谢

Pallavi

lukcy2020
6楼-- · 2020-09-15 17:53

嗨,帕拉维,

我看不出任何逻辑上的原因为什么您的设计不起作用以及我的为什么起作用。我尝试的是使用您的设计并稍加修改,这是我们可以做到的最佳方法。 但是事实是,即使我在系统中复制您的设计,甚至遇到相同的问题,这也意味着它肯定与任何数据,计划对象或特定于系统的内容都不相关。

1>基本上,KF6是纯计算的KF,由于下面的计算,它将仅保留手动编辑KF2的时间段的值,其余时间将不包含任何值。

AKKF6 @ WKPRODLOC =" AKKF2 @ WKPRODLOC"(存储和输入)。

2>现在,当我们在KF5计算中使用此KF6时,它会按预期工作。

请检查一次并确认。

问题是因为您已经关闭了该线程(假设),所以我无法附加屏幕截图。 让我知道您是否需要其他详细信息。

此致

Akhilesh Agarwal

N-Moskvin
7楼-- · 2020-09-15 17:52

嗨,帕拉维,

在您的第一个示例中,

示例->

案例1:
KF1 = 100
KF 2 = 200(手动编辑和保存)
KF3 = 0.2

KF4 = 20(根据KF公式计算)
KF 5 = 200(按预期)

案例2:

KF 1 = 100

KF 2 = 100(默认为KF 1,不进行手动编辑

KF 3 = 0.2

KF 4 = 20(根据KF公式计算)

KF 5 = 100(此处的期望值为100 + 20 = 120)

在案例2中,在KF 5上,您提到它应该有120,而不是100。但不是100正确,因为KF5逻辑是-如果KF2为空,则KF 5 = KF4 + KF1, 还有KF2。

KF2不为null,因为它从KF1获得值100,因此案例2的KF 5值100似乎正确。

或者,我在这里完全错过了一些东西。

一周热门 更多>