Not a member of Pastebin yet?
Sign Up,
it unlocks many cool features!
- *&---------------------------------------------------------------------*
- *& Report Z_EXCEPTION_DEMO_00
- *&
- *&---------------------------------------------------------------------*
- *&
- *&
- *&---------------------------------------------------------------------*
- REPORT z_exception_demo_00.
- START-OF-SELECTION.
- TRY.
- PERFORM rotina1.
- PERFORM rotina3.
- PERFORM rotina2.
- CATCH cx_sy_zerodivide.
- WRITE: / 'Catch programa principal.'.
- ENDTRY.
- WRITE / 'Fim'.
- *&---------------------------------------------------------------------*
- *& Form rotina1
- *&---------------------------------------------------------------------*
- * text
- *----------------------------------------------------------------------*
- FORM rotina1.
- DATA: vl_result TYPE i.
- TRY .
- vl_result = 100.
- vl_result = 1 / 0.
- CATCH cx_sy_zerodivide.
- WRITE: / 'Catch rotina1.'.
- CLEANUP.
- " o programa nunca executará o CLEANUP.
- WRITE: / 'Cleanup.'.
- ENDTRY.
- ENDFORM. "rotina1
- *&---------------------------------------------------------------------*
- *& Form rotina2
- *&---------------------------------------------------------------------*
- * text
- *----------------------------------------------------------------------*
- FORM rotina2 RAISING cx_sy_zerodivide.
- DATA: vl_result TYPE i.
- vl_result = 1 / 0.
- ENDFORM. "rotina2
- *&---------------------------------------------------------------------*
- *& Form rotina3
- *&---------------------------------------------------------------------*
- * text
- *----------------------------------------------------------------------*
- FORM rotina3 RAISING cx_sy_zerodivide.
- DATA: vl_result TYPE i.
- TRY .
- vl_result = 100.
- vl_result = 1 / 0.
- CLEANUP.
- CLEAR vl_result.
- WRITE: / 'Cleanup.'.
- ENDTRY.
- ENDFORM. "rotina2
Add Comment
Please, Sign In to add comment