CPI使用乘法映射功能处理空值

2020-08-25 16:28发布

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

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


我需要在消息映射中将一个值乘以0.9,但是要乘的值(来自哈希图)并不总是存在。 如果要相乘的值为null,则发生映射错误"无法将"转换为十进制值"。 我发现将null值替换为0可以解决问题,但是在乘法步骤之后,我再次不得不用空格替换0,因为该字段不应包含0值。 看来无论条件如何,都会对if语句的真/假值进行评估,因此我无法使用此方法。

我相信也许有更好的方法来处理此问题,但我没有找到它。 我欢迎任何建议。 我基本上是在寻找一种简单的方法来执行" y"操作,如果" x"值不为null的话。

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

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


我需要在消息映射中将一个值乘以0.9,但是要乘的值(来自哈希图)并不总是存在。 如果要相乘的值为null,则发生映射错误"无法将"转换为十进制值"。 我发现将null值替换为0可以解决问题,但是在乘法步骤之后,我再次不得不用空格替换0,因为该字段不应包含0值。 看来无论条件如何,都会对if语句的真/假值进行评估,因此我无法使用此方法。

我相信也许有更好的方法来处理此问题,但我没有找到它。 我欢迎任何建议。 我基本上是在寻找一种简单的方法来执行" y"操作,如果" x"值不为null的话。

付费偷看设置
发送
2条回答
Cikesha
1楼 · 2020-08-25 16:39.采纳回答

您好马修·沃克

标准函数乘法处理两种情况。 输入的值等于0.9。 输入为空时,输出为空。

如果需要空格而不是null,则可以在乘法后添加mapWithDefault函数。

以上内容适用于输入为null或具有数字值的情况。 当输入具有空白值时,即无法获得""错误。 解决此问题的最佳方法是在发送者系统中解决它。 如果该字段是十进制/双精度类型,则空白不是有效值。

希望这会有所帮助,

Bala

nice_wp
2楼-- · 2020-08-25 16:48

嗨Bhalchandra,

非常感谢您的有用回复。 事实证明,输入值是空格而不是null,这导致了您所指出的问题。 我已经能够使用固定值函数将空格替换为零,因此乘法函数不会出错。 然后,在此映射步骤的最后,我用空格替换了零。 再次感谢您的帮助。

关于

马修

一周热门 更多>