点击此处---> 群内免费提供SAP练习系统(在群公告中)
加入QQ群:457200227(SAP S4 HANA技术交流) 群内免费提供SAP练习系统(在群公告中)
大家好,
我在这里面临一个非常奇怪的行为。
情况:
我有一个自定义的BO,其中包含员工和期间的锁定条目,因此时间表只能在开放期间发布。
因此,在扩展BO TimeEntry的同时,我检查了这些条目。 由于不允许在Validation-OnSave中执行TimeLock.Create(),因此必须在BeforeSave事件中执行此操作。
1。 在TimeEntry的BeforeSave-Event中,我使用EmployeeUUID和Period创建一个新的TimeLock条目。
Check,可在Debugger中使用!
2。 然后,TimeLock的BeforeSave-Event会插入并扩展一些字段,例如Employeenumber,Name等。
Check,可在Debugger中使用!
3。 然后从TimeEntry开始Validation-OnSave。
我对EmployeeUUID和Period(与步骤1中的值相同!)进行查询,但没有找到任何项目。
因此检查失败。
在创建的WorkcenterView中,我也看不到该条目。
当我忽略该检查并在Validation-OnSave中返回true时,事务就完成了-然后条目就在那里了。
有人对那里发生的事情有任何想法吗?
听起来很荒谬,似乎我在这里不赞成SAP的80年代LUW概念。
但是即使如此,为什么实例仍然存在 2,但不在步骤3中?
有什么解决方案?
任何想法都非常欢迎!
提前感谢,
莱因哈德
我遇到了同样的问题。 基本上,您必须将支票移至BeforeSave并设置一个标志(扩展字段类型Indicator),该标志例如名为" TimeLockFound"并设置为true或false。 然后,在Validation-OnSave中,您仅检查TimeLockFound是否为true。 如果为true,则引发错误消息并返回false。 如果为false,则返回true。
很烂,但是就是那样。
一周热门 更多>