点击此处---> 群内免费提供SAP练习系统(在群公告中)加入QQ群:457200227(SAP S4 HANA技术交流) 群内免费提供SAP练习系统(在群公告中)我在更新文档地址时遇到问题。 ...
点击此处---> 群内免费提供SAP练习系统(在群公告中)加入QQ群:457200227(SAP S4 HANA技术交流) 群内免费提供SAP练习系统(在群公告中)我在更新文档地址时遇到问题。 ...
加入QQ群:457200227(SAP S4 HANA技术交流) 群内免费提供SAP练习系统(在群公告中)
我在更新文档地址时遇到问题。
我需要做什么:
我需要确保在生成单据(例如销售订单,客户发票,客户发票申请)时,对发件人-收件地址进行验证。 验证过程返回一个有效地址,我的计划是在运行时修复无效地址,以保存正确的地址。
我知道AddressSnapshot对象一旦保存便是只读的,所以我的计划是在保存AddressSnapshot之前进行此更改。 但是,尽管ABSL允许我更新"地址"字段。 更改永远不会保存!!!
具体来说,我需要能够更改诸如邮政编码/地区/城市名称的值。
我尝试过的事情:
我尝试将代码放入扩展对象AddressSnapshot的所有事件中
我还尝试将代码放置在扩展对象业务合作伙伴的BeforeSave事件中。
在所有情况下,正如我之前提到的,即使我能够在保存对象之前修改值。 如果我查看实际保存的对象,就看不到所做的更改(我看到的是旧值)。
我还尝试对使用该地址的文档的OnSave事件进行验证,并且看到一条消息,指出AddressSnapshot已保存。 我了解这一点,但是,至少有什么方法可以生成一个新的AddressSnapshot吗?
我的最终测试包括一个放置在自定义对象动作中的过程。 我检索了整个业务合作伙伴,然后验证了地址,但是同样,我无法保存所做的更改。
有没有办法做到这一点?
先谢谢了。
Hello Hector,
我设法使用下面的代码在 AP.CRM.Global:SalesOrder
的 before.save 上更新了BP地址。请注意,这是一个快速测试,我得到的第一条记录只是为了向您展示如何到达那里。
我添加了新的SO,并更新了BP的地址:
但是,SO快照仍然保留了旧的地址信息-您现在可以考虑如何使用更新的地址来更新最近创建的SO。
HTH,
Thiago。
一周热门 更多>