如何解决SAP ABAP循环内循环到7.40语法
使用7.40语法是否还有更好的方法?由于正在使用范围表,因此无法使用READ语句。
lr_vstel = VALUE #( sign = 'I' option = 'EQ'
( low = '5161' ) ( low = '5361' ) ).
lr_lgort = VALUE #( sign = 'I' option = 'EQ'
( low = '4004' ) ( low = '9013' )
( low = '9014' ) ).
LOOP AT xvbap(] ASSIGNING FIELD-SYMBOL (<lfs_vbap>)
WHERE
werks = '5161'
AND vstel IN Ir_vstel
AND lgort NOT IN lr_lgort.
LOOP AT xlips[] ASSIGNING FIELD-SYMBOL(<lfs_lips>)
WHERE
posnr = <lfs_vbap>-posnr
AND vtweg = '20'
AND lgort NOT IN lr_lgort.
MESSAGE |Storage location { <lfs_lips>-lgort } is not allowed|
TYPE 'E'.
EXIT.
ENDLOOP.
ENDLOOP.
我想避免使用7.40语法的循环。
解决方法
是的,还有其他方法,但是老实说,您的解决方案看起来可以接受。
如果要获得其他建议,则应该在要改进的方面更加精确:可读性?性能?选择标准是否灵活?
然后,您还应该提供示例数据并更好地定义附带条件,例如,您的范围是否还需要涵盖更复杂的情况(例如,排除条目),或者接受低端和高端的真实范围,以及是否会可以修改内部表的内容。
版权声明:本文内容由互联网用户自发贡献,该文观点与技术仅代表作者本人。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如发现本站有涉嫌侵权/违法违规的内容, 请发送邮件至 dio@foxmail.com 举报,一经查实,本站将立刻删除。