Table Modify 시 마지막에 Return을 쓰는 이유가 먼지 알고 싶습니다 ~
Rollback 개념과 같은건가요?
댓글 4
-
양키
2011.01.21 19:40
-
ABAPCHOJJA
2011.01.21 20:04
return 은 프로시져의 다음단계를 실행할 필요가 없을 때 해당 프로시져를 종료하라는 의미로 사용됩니다.
modify 한 이후에 로직은 실행할 필요가 없어서 return 을 사용한 것이 아닐까요?
-
부엉이
2011.01.21 21:02
아밥초짜님 설명에 덧붙여...
exit 과 비슷한 구문인데
차이점은 위치에 상관없이 return 을 만나는 순간
그 프로세싱 블럭 전체를 끝내라는 구문입니다.
-
부엉이
2011.01.21 21:06
추가로 sap가 exit은 loop 구문에서 빠져나올때만 쓰고
프로세싱 블럭을 빠져나올 때는 return을 쓰라고 recommand 하고 있습니다.
abap은 구문 사용에 따른 return value가 틀린데요. Return value는 실행결과를 Numeric code로 반환합니다.
• ASSIGN sets SY-SUBRC to 0 if assignment to field symbol is possible, otherwise 4.
• ASSIGN <dref>->* sets SY-SUBRC to 0 if dereferencing is possible, otherwise 4.
• AUTHORITY-CHECK sets SY-SUBRC to 0 if the user has the necessary authorization, otherwise 4, 8, 12, 16, 24, 28, 32, or 36 depending on the cause.
• CALL DIALOG with USING sets SY-SUBRC to 0, if processing was successful, otherwise <>0.
• CALL FUNCTION sets SY-SUBRC according to the exception handling.
• CALL METHOD sets SY-SUBRC according to the exception handling.
• CALL SELECTION-SCREEN : sets SY-SUBRC to 0 if the user chose Enter or Execute and 4 if the user chose Cancel.
• CALL TRANSACTION : with USING sets SY-SUBRC to 0 if processing was successful, otherwise <>0.
• CATCH SYSTEM-EXCEPTIONS sets SY-SUBRC if there are runtime errors after the ENDCATCH statement. The value is specified in the program.
• COMMIT WORK sets SY-SUBRC to 0.
• COMMIT WORK AND WAIT sets SY-SUBRC to 0 if update was successful, otherwise <>0.
• COMMUNICATION INIT DESTINATION ... RETURNCODE sets SY-SUBRC as specified.
• CONCATENATE sets SY-SUBRC to 0 if the result fits into target variable, otherwise 4.
• CREATE OBJECT sets SY-SUBRC if the exceptions of the instance constructor are handled.
• CREATE OBJECT in OLE2 sets SY-SUBRC to 0 if an external object was created, otherwise 1,2, 3 with different causes.
• DELETE sets SY-SUBRC to 0 if the operation was successful, otherwise 4 or <> 0 depending on cause.
• DEMAND ... MESSAGES INTO sets SY-SUBRC to 0 if a message table is empty, otherwise <> 0.
• DESCRIBE LIST sets SY-SUBRC to 0 if row or list exists, otherwise 4 or 8.
• EXEC SQL - ENDEXEC sets SY-SUBRC to 0 in almost all cases. Only if no set was read with FETCH is SY-SUBRC 4.
• FETCH sets SY-SUBRC to 0 if at least one row was read, otherwise 4.
• GENERATE SUBROUTINE POOL sets SY-SUBRC to 0 if generation was successful, otherwise 8.
• GET CURSOR sets SY-SUBRC to 0 if the cursor is correctly positioned, otherwise 4.
• GET PARAMETER sets SY-SUBRC to 0 if value found in SAP Memory, otherwise 4.
• IMPORT sets SY-SUBRC to 0 if import of data objects was successful, otherwise 4.
• IMPORT sets SY-SUBRC to 0 if import of data objects was successful, otherwise 4.
• LOAD REPORT sets SY-SUBRC to 0 if the operation was successful, otherwise 4 or 8 depending on cause.
• LOOP sets SY-SUBRC to 0 if loop over extract was passed at least once, otherwise 4.
• LOOP AT sets SY-SUBRC to 0 if loop over internal table was passed at least once, otherwise 4.
• MODIFY sets SY-SUBRC to 0 if operation was successful, otherwise 4.
• MODIFY LINE sets SY-SUBRC to 0 if list row was changed, otherwise <> 0.
• MODIFY sets SY-SUBRC to 0 if operation was successful, otherwise 4.
• OLE2 automation, bundled commands set SY-SUBRC to 0 if all were successfully executed, otherwise 1, 2, 3, 4 depending on cause.
• OPEN DATASET sets SY-SUBRC to 0 if the file was opened, otherwise 8.
• Open SQL commands set SY-SUBRC to 0 if operation was successful, otherwise <>0.
• OVERLAY sets SY-SUBRC to 0 if at least one character is overlayed, otherwise 4.
• READ DATASET sets SY-SUBRC to 0 if the read operation was successful, otherwise 4 or 8 depending on cause.
• READ LINE sets SY-SUBRC to 0 if list row exists, otherwise <> 0.
• READ TABLE sets SY-SUBRC to 0 if the table row was found, otherwise 2, 4, 8 depending on cause.
• REPLACE sets SY-SUBRC to 0 if search string could be replaced, otherwise <> 0.
• ROLLBACK WORK always sets SY-SUBRC to 0.
• SCROLL sets SY-SUBRC to 0 if scrolling in list successful, otherwise 4 or 8 depending on cause.
• SEARCH sets SY-SUBRC to 0 if search string was found, otherwise 4.
• SELECT sets SY-SUBRC to 0 if at least one row was read, otherwise 4 or even 8 with SELECT SINGLE FOR UPDATE.
• SET COUNTRY sets SY-SUBRC to 0 if country ID was found in table T005X, otherwise 4.
• SET BIT sets SY-SUBRC to 0 if bit was set, otherwise <> 0.
• SET TITLEBAR sets SY-SUBRC to 0 if title exists, otherwise 4.
• SHIFT ... UP TO sets SY-SUBRC to 0 if position was found in character string, otherwise 4.
• SPLIT sets SY-SUBRC to 0 if size of target fields is sufficient, otherwise 4.
• UPDATE sets SY-SUBRC to 0 if operation successful, otherwise 4.
• WRITE ... TO sets SY-SUBRC to 0 if assignment successful, otherwise 4.