我正在尝试检查在保存文档之前通过事务 vl02n 更改的交货位置是否满足某些特定条件。
对于此操作,我想使用用户出口 USEREXIT_SAVE_DOCUMENT_PREPARE 。
在调试器中,我检查了哪些表和变量是可访问的,并发现有一个全局表 XLIPS ,其中包含要保存的交货当前可见的所有位置。
问题在于,在XLIPS中,还有在v1022的GUI上已经删除的位置。 因为我只想检查确实要保存的位置,所以我不想使用表XLIPS。
我该如何解决此问题,有没有比使用XLIPS更好的方法?
非常感谢您的帮助,请原谅我英语不好。
答案 0 :(得分:1)
XLIPS
包含保存时所有交货项目的更改信息。因此,如果您删除一行,XLIPS
仍将保留已删除的行,并且字段XLIPS-UPDKZ
设置为D
-表示该行已被删除(或插入了I
或U
已更新)。考虑到这一点,您应该能够对相关项目进行相应的编程:
LOOP AT xlips ... WHERE updkz NE 'D'.
<your code here>
ENDLOOP.