ABAP循环中的退出(CONTINUE CHECK EXIT RETURN)
在循环中:
CONTINUE:
结束当前循环进行下一次循环
CHECK:
判断条件,不符合时结束当前循环进入下一次循环
EXIT:
结束整个循环,继续向下运行
RETURN:
退出当前的程序块
例如:
主表GT_ITAB1 数据为:
A 1
B 2
C 3
执行以下语句:
LOOP AT gt_itab1.
IF gt_itab1-f1 = 'B'.
CONTINUE.
ENDIF.
APPEND gt_itab1 TO gt_itab2.
ENDLOOP.
执行之后GT_ITAB2 内容为:
A 1
C 3
LOOP AT gt_itab1.
CHECK gt_itab1-f1 <> 'B'.
APPEND gt_itab1 TO gt_itab2.
ENDLOOP.
执行之后GT_ITAB2 内容为:
A 1
C 3
LOOP AT gt_itab1.
IF gt_itab1-f1 = 'B'.
EXIT.
ENDIF.
APPEND gt_itab1 TO gt_itab2.
ENDLOOP.
执行之后GT_ITAB2 内容为:
A 1
PERFORM frm_set_data.
gt_itab1-f1 = 'F'.
gt_itab1-f3 = '5'.
APPEND gt_itab1 TO gt_itab2.
*&---------------------------------------------------------------------*
*& Form FRM_SET_DATA
*&---------------------------------------------------------------------*
* text
*----------------------------------------------------------------------*
FORM frm_set_data .
LOOP AT gt_itab1.
IF gt_itab1-f1 = 'B'.
RETURN.
ENDIF.
APPEND gt_itab1 TO gt_itab2.
ENDLOOP.
gt_itab1-f1 = 'D'.
gt_itab1-f3 = '4'.
APPEND gt_itab1 TO gt_itab2.
ENDFORM.
执行之后GT_ITAB2 内容为:
A 1
F 5
post SAP-Garson
原文链接:https://blog.csdn.net/sherlock54188/article/details/123735761文章来自于网络,如果侵犯了您的权益,请联系站长删除!