字段更新在重用库中不起作用

2020-08-22 04:50发布

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

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


亲爱的社区,

我在SAP Cloud Application Studio中遇到一种奇怪的行为(SAP Sales Cloud业务情景)。

我有一个在Customer-BeforeSave中触发的自定义逻辑,该逻辑更新了SalesArrangement中的一些自定义字段:

 foreach(Customer.SalesArrangement中的var SalesArea)
 {
 SalesArea.ZZXXX = Customer.CurrentCommon.ZZXXX;
 ....
 ....
 }
 

为了使BeforeSave代码紧凑而简洁,我决定将此逻辑封装在重用库函数中,该函数是从BeforeSave自身调用的,并传递了当前节点UUID:

 Library.UpdateField(Customer.UUID); 

在函数内部,我检索节点并执行与以前相同的操作(该函数已启用写操作并已在Foundation中部署。)

 var currCust = Customer.Retrieve(currentNodeUUID);
 var currCustComm = currCust.CurrentCommon;
 var salesArr = currCust.SalesArrangement;

 if(!currCust.IsSet()||!currCustComm.IsSet())
 返回;
 foreach(currCust.SalesArrangement中的var SalesArea)
 {
 SalesArea.ZZXXX = currCustComm.ZZXXX;
 }
 

但是,在第二种情况下,更新不起作用(我没有错误,但是销售安排中的自定义字段未更新)。

你有什么主意吗?

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

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


亲爱的社区,

我在SAP Cloud Application Studio中遇到一种奇怪的行为(SAP Sales Cloud业务情景)。

我有一个在Customer-BeforeSave中触发的自定义逻辑,该逻辑更新了SalesArrangement中的一些自定义字段:

 foreach(Customer.SalesArrangement中的var SalesArea)
 {
 SalesArea.ZZXXX = Customer.CurrentCommon.ZZXXX;
 ....
 ....
 }
 

为了使BeforeSave代码紧凑而简洁,我决定将此逻辑封装在重用库函数中,该函数是从BeforeSave自身调用的,并传递了当前节点UUID:

 Library.UpdateField(Customer.UUID); 

在函数内部,我检索节点并执行与以前相同的操作(该函数已启用写操作并已在Foundation中部署。)

 var currCust = Customer.Retrieve(currentNodeUUID);
 var currCustComm = currCust.CurrentCommon;
 var salesArr = currCust.SalesArrangement;

 if(!currCust.IsSet()||!currCustComm.IsSet())
 返回;
 foreach(currCust.SalesArrangement中的var SalesArea)
 {
 SalesArea.ZZXXX = currCustComm.ZZXXX;
 }
 

但是,在第二种情况下,更新不起作用(我没有错误,但是销售安排中的自定义字段未更新)。

你有什么主意吗?

付费偷看设置
发送
5条回答
wang628962
1楼-- · 2020-08-22 05:18

罗伯托,

我建议提起事件以报告错误。 尽管实际上,如果将它放在一个BO脚本中只是一个函数,那么将其存储在重用库中并不会真正节省很多时间,因此,将其放在实际的客户脚本上并不会造成太多损失。

刘易斯

Haoba3210
2楼-- · 2020-08-22 05:23

亲爱的刘易斯,

更多的是代码清晰度,而不是节省时间。 我经常看到BO标准脚本(BeforeSave和AfterModify)成为成千上万行的怪物,使维护成为一场噩梦,而目前在Cloud Applications Studio中组织代码的唯一方法是重用库(即使我认识到它们可能是故意的)

My梦
3楼-- · 2020-08-22 05:05

嗨,

ASAIK,过去我曾就同一问题联系过SAP,他们说重用库是只读对象,即您

请问您是否可以在PDI中检查警告或信息消息?

BR < br> Saurabh

当学会了学习
4楼-- · 2020-08-22 05:08

抱歉,对于此只读功能,我将其与UI设计器复选框和启用写入的复选框混淆了。

请忽略我的最后评论

clasier
5楼-- · 2020-08-22 05:16

奇怪,因为文森特说,可重复使用的库在市场上可以称为"已启用写入"。

此外,我还有一个附加功能,可以创建一个新的销售安排并将其放置在重用库中,并且可以完美地工作。

SAP的所有人有想法吗?

一周热门 更多>