我可以使用 line_exists 检查初始值或不相等的值吗?

Lil*_*hal 6 abap

ABAP 7.40添加了line_exists( ... )谓词函数来分析内表。但是有什么方法可以检查特定列是否为初始值或与目标值不同的行是否存在?

例如,如何检查具有初始材料列的行(例如此表中的第三行)?

Document        Country     Material    
9001287         US          198572111
9001296         FR          160023941       
9001297         EG                      
9001299         DK          873001102   
Run Code Online (Sandbox Code Playgroud)

line_exists( lt_itab[ Country = 'DK' ] )我可以用和来检查丹麦语条目line_exists( lt_itab[ Material = '' ] )是否有效,但既不被接受<>,也不被接受。NE例如,似乎也没有办法检查该国家/地区不是“FR”的线路?

如果没有办法做到这一点line_exists,那么最简洁的替代方法是什么?

Józ*_*zai 4

LOOP是一种检查方式,不知道还有没有更好的:

LOOP AT itab
     TRANSPORTING NO FIELDS
     WHERE country NE 'FR'.
  EXIT.
ENDLOOP.
IF sy-subrc EQ 0.
" line exists
ELSE.
" line does not exist
ENDIF.
Run Code Online (Sandbox Code Playgroud)