예제 14-4 코드에서
c1 DEFINITION에서
set_data IMPORTING p_imp
get_data EXPORING p_exp
라고 정의 되어있고,
CREATE OBJECT에서는
CALL METHOD : go_cref->set_data EXPORTING p_imp = 'Test Class Method'.
CALL METHOD : go_cref->get_data IMPORTING p_exp = GV_DATA.
WRITE gv_data.
라고 명시되어있는데,
1) 왜 위아래의 IMPORTING과 EXPORTING의 위치가 다른가요?
2) gv_data는 어떻게 나오게 되었는지, 원리가 궁금합니다.(결과값이 Test Class Method가 나오게되는 원리)
댓글 5
-
e-abap
2013.03.04 12:01
-
lookie87
2013.03.05 08:50
EXPORTING p_imp = 'Test Class Method'. 에서는 p_imp 에 'Test Class Method'. 가 할당되는데..(오른쪽에서 왼쪽으로 값 할당)
IMPORTING p_exp = GV_DATA. 에서는 p_exp의 값을 gv_data 변수에 할당한다는 뜻이라고 말씀해주셨는데
원래 할당 연산자(=) 기준으로 오른쪽에서 왼쪽으로 할당하는 것으로 알고있는데,
그렇다면 IMPORTING p_exp = GV_DATA. 는 gv_data의 값을 p_exp에 할당하는 것이 맞는 표현 아닙니까..?
EXPORTING과 IMPORTING 이 할당 연산자(=)의 방향에 영향을 미치는건가요/...?
초보 아밥유저라 궁금한점이 너무도 많네요..답변해주시면 감사하겠습니다.
-
e-abap
2013.03.04 17:47
IMPORTING p_exp = GV_DATA. 구문이 GV_DATA의 값을 p_exp에 할당하라는 말인가요..?
=> p_exp의 값을 gv_data 변수에 할당하라는 뜻입니다.
아래 메소드에서 p_exp 변수에 l_char 값을 넣어주게 됩니다.
METHOD GET_data.
P_exp = L_CHAR.
ENDMETHOD.l_char 값은 다음 메소드를 통해서 값이 할당됩니다.
CLASS c1 IMPLEMENTATION.
METHOD set_data.
l_char = p_imp.
ENDMETHOD. -
lookie87
2013.03.04 12:36
그러면
CALL METHOD: go_cref->get_data
IMPORTING p_exp = GV_DATA.
에서
IMPORTING p_exp = GV_DATA. 구문이 GV_DATA의 값을 p_exp에 할당하라는 말인가요..?
그렇다면 GV_DATA의 값은 선언만 되었지 그 앞에서 값이 할당 되지 않았는데, 어떻게 p_exp에 할당이 될 수 있나요...?
IMPORTING GV_DATA = p_exp. 구문이 맞는 구문아닌가요..?
제가 잘 못이해하고있는 부분이 있다면 설명해주시면 감사하겠습니다.
-
uyuy
2013.03.21 20:04
that is good!
번호 | 제목 | 글쓴이 | 날짜 | 조회 수 |
---|---|---|---|---|
공지 | e-abap에서 출간된 책 소개 [8] | 양키 | 2013.01.31 | 11767 |
305 | [EASY ABAP 2.0] 예제 16-3 질문 | jtw8983 | 2024.01.04 | 45 |
304 | z13_03 에러 문의 합니다. | 쌥맨 | 2023.01.16 | 80 |
303 | SAP Fiori 3 소개 자료(한글) | 노을별 | 2022.01.13 | 219 |
302 | 106page 예제 3-3 질문.. | 김주형 | 2020.07.22 | 229 |
301 | 이지아밥 359page 혹시 t코드 아시나요? generic foreign key attached file confim please [1] | 리얼오버 | 2021.10.31 | 250 |
300 | access key 발급받는법 | 실버켓 | 2019.11.26 | 296 |
299 | 원페이퍼 권한 문의드립니다. [2] | 지구별원숭이 | 2019.08.02 | 336 |
298 | 134p 3-6-2 [1] | baishui | 2013.06.14 | 728 |
297 | 223page 5-3-1 [1] | baishui | 2013.07.02 | 758 |
296 | 229pgae 5-3-4 | baishui | 2013.07.02 | 763 |
295 | 150p 4-2-1 [3] | baishui | 2013.06.14 | 768 |
294 | 234page 예제 5-4-1 | baishui | 2013.07.03 | 783 |
293 | 171 page 예제 4-2-9 [3] | baishui | 2013.06.17 | 794 |
292 | p176 4-2-12 [3] | baishui | 2013.06.18 | 818 |
291 | p196 4-3-2 질문입니다 [1] | baishui | 2013.06.19 | 819 |
290 | 질문드립니다~ | kanel | 2013.05.21 | 820 |
289 | p218 5-2-3 [1] | baishui | 2013.06.21 | 823 |
288 | 216P 5-2-2 | baishui | 2013.06.21 | 827 |
287 | p198 4-3-3 질문이요 [2] | baishui | 2013.06.19 | 858 |
286 | 164page 예제 4-2-8 [1] | baishui | 2013.06.17 | 859 |
IMPORTING과 EXPORTING이 다른 것은 주는 입장과 받는 입장이 달라지기 때문입니다.
다음 메소드를 호출하면서, 변수에 값을 저장하기 때문에 결과값이 그렇게 나오게 됩니다.
CALL METHOD: go_cref->set_data
EXPORTING p_imp = 'Test Class Method'.