Notice
Recent Posts
Recent Comments
Link
일 | 월 | 화 | 수 | 목 | 금 | 토 |
---|---|---|---|---|---|---|
1 | 2 | 3 | 4 | 5 | ||
6 | 7 | 8 | 9 | 10 | 11 | 12 |
13 | 14 | 15 | 16 | 17 | 18 | 19 |
20 | 21 | 22 | 23 | 24 | 25 | 26 |
27 | 28 | 29 | 30 | 31 |
Tags
- select case
- changing
- batch job
- 필드카탈로그
- Dictionary Search Help
- NEW-PAGE PRINT ON
- READ TABLE
- modify
- SAP GUI
- ABAP
- CTS #CTS 이관 #SAP #ABAP
- APPENDING CORRESPONDING
- SM36
- FOR ALL ENTRIES IN
- using value
- 날짜 계산 함수
- boole_d
- ZPL
- cfieldname
- MONAT_F4
- 바코드스캔
- APPENDING
- qfieldname
- transporting
- ALV Output Setting
- 관계연산자
- Data Browser
- 측정단위
- SAP
- changing value
Archives
- Today
- Total
Jin's Library
USING / CHANGING 본문
FORM 문에서 전부 파라미터 개념으로 쉽게 사용하면 되지만
USING, CHANGING 은 내부에서 파라미터값이 변할 시 외부에도 즉시 적용
USING VALUE 는 FORM 문 내부에서만 동작하고 실제 값에는 영향을 끼치지 않음
CHANGING VALUE 는 FORM 문이 종료되고 나서 변경된 값이 반영 (즉시 반영 X)
Changing : Call By Reference
Using : Call By Reference
Using Value : Call By Value
아래는 FORM 문으로 파라미터 사용시 gv_value 가 내부에서 동작하는 값과 FORM 문 종료 후 값을 표기
DATA: gv_value1 type I VALUE 10,
gv_value2 type I VALUE 20.
PERFORM test_using USING gv_value1
gv_value2.
PERFORM external. ULINE.
PERFORM init_value.
PERFORM test_changing USING gv_value1
gv_value2.
PERFORM external. ULINE.
PERFORM init_value.
PERFORM test_using_value using gv_value1
gv_value2.
PERFORM external. ULINE.
PERFORM init_value.
PERFORM test_changing_value USING gv_value1
gv_value2.
PERFORM external.
***************************** FORM *****************************
FORM external.
WRITE:/,/'[External]',
/'gv_value1: ', gv_value1,
/'gv_value2: ', gv_value2.
ENDFORM.
FORM init_value.
gv_value1 = 10.
gv_value2 = 20.
ENDFORM.
FORM test_using USING p_using1 TYPE I
p_using2 TYPE I.
p_using1 += 1.
p_using2 -= 1.
WRITE: 'TEST_USING',/,
/'[Internal]',
/'gv_value1: ', gv_value1,
/'gv_value2: ', gv_value2.
ENDFORM.
FORM test_using_value USING VALUE(p_using_value1) TYPE I
VALUE(p_using_value2) TYPE I.
p_using_value1 += 1.
p_using_value2 -= 1.
WRITE: 'TEST_USING_VALUE',/,
/'[Internal]',
/'gv_value1: ', gv_value1,
/'gv_value2: ', gv_value2.
ENDFORM.
FORM test_changing CHANGING p_changing1 TYPE I
p_changing2 TYPE I.
p_changing1 += 1.
p_changing2 -= 1.
WRITE: 'TEST_CHANGING',/,
/'[Internal]',
/'gv_value1: ', gv_value1,
/'gv_value2: ', gv_value2.
ENDFORM.
FORM test_changing_value CHANGING VALUE(p_changing_value1) TYPE I
VALUE(p_changing_value2) TYPE I.
p_changing_value1 += 1.
p_changing_value2 -= 1.
WRITE: 'TEST_CHANGING_VALUE',/,
/'[Internal]',
/'gv_value1: ', gv_value1,
/'gv_value2: ', gv_value2.
ENDFORM.
'SAP > ABAP' 카테고리의 다른 글
CLEAR, REFRESH, FREE (0) | 2023.11.03 |
---|---|
SELECT CASE (0) | 2023.11.03 |
ALV 측정 단위, 통화에 대해 필드 카탈로그 적용하기 (0) | 2023.11.03 |
ABAP 관계연산자 (0) | 2023.11.03 |
팝업화면 디버깅 (0) | 2023.10.11 |