在 SAP ABAP 中遍历内部表时,是否可以删除活动行?


DELETE 命令将产生结果。您应该确保,一旦删除了行,在循环中后续不应该再引用或使用该行。最好的做法是在执行删除操作后立即使用 CONTINUE。 

我建议避免使用 “DELETE lt_itab INDEX sy-tabix”,因为它会改变 sy-tabix,也就是表索引。如果您只想删除循环中的当前行,则可以使用以下方法。

“DELETE lt_itab”

还有一点,如果您使用语句 “DELETE lt_itab FROM ls_wa”,那么无论是有意还是无意,您都在从内部表中删除相同的行。 

总而言之,如果我用一句话来概括,那就是,如果您正在更新或修改您当前正在循环遍历的表,那么最好确保您知道自己在做什么。

更新于:2020年2月13日

742 次查看

开启您的 职业生涯

通过完成课程获得认证

立即开始
广告