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

2020-08-22 04:50发布

点击此处---> 群内免费提供SAP练习系统(在群公告中)加入QQ群:457200227(SAP S4 HANA技术交流) 群内免费提供SAP练习系统(在群公告中)亲爱的社区, 我在SAP Cl...

         点击此处--->   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
2020-08-22 05:18

罗伯托,

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

刘易斯

一周热门 更多>