C언어를 오랫동안 써와서 어느 정도는 이해하고 있다고 느끼고 있었지만,
막상 빈 화면에서 코드를 작성해 보려고 하니 막막했던 개념,
Field symbol과 data reference입니다.
댓글 14
-
아밥뽀
2011.09.15 19:44
-
뽀꼬
2011.09.15 19:53
ABAP: Variable, Data reference, Field symbol이
C: var, &var, *p와 개념 상 유사하다고 생각하시면 될 것 같습니다.
단, data reference에 dereference operator가 있는 게 특이하게 느껴집니다.
Field symbol, Data reference가 variable을 가리키는 경우,
Object(structure/class/interface)를 가리키는 경우의 용법을 주의 깊게 살펴보시면 코드 작성하는 데
큰 어려움은 없을 것 같습니다.
예제는 간단히 강좌에도 적어 놓았습니다.
get reference of ~ 부분을 참고하시고 ABAPDOCU와 help를 참고하시면 몇가지 예제가 있으니 참고가 되실겁니다.
돌려 보고 이리저리 만져보고, help도 좀 보세요.
그래야 이해가 조금 갈 겁니다.
< Data reference variable의 사용 예, Field symbol과의 사용 비교 예제 >
1)
TYPES ref_int_type TYPE REF TO i.
DATA ref_int TYPE ref_int_type.
DATA int TYPE I VALUE 15.GET REFERENCE OF int INTO ref_int.
WRITE ref_int->*.MOVE 17 to ref_int->*.
WRITE ref_int->*.* ---------------------------------------
2)
DATA int TYPE i VALUE 15.
FIELD-SYMBOLS <fs_int> TYPE i.ASSIGN int TO <fs_int>.
*<fs_int> = 17. "fs로 값 변경해보는 코드. 해보고 싶으면 주석 푸세요.
WRITE:/ int, <fs_int>.< Data reference object 사용 시의 data reference와 field symbol - abapdocu 예제 >
REPORT demo_data_reference.
TYPES: BEGIN OF t_struct,
col1 TYPE i,
col2 TYPE i,
END OF t_struct.DATA: dref1 TYPE REF TO data,
dref2 TYPE REF TO data.FIELD-SYMBOLS: <fs1> TYPE t_struct,
<fs2> TYPE i.CREATE DATA dref1 TYPE t_struct.
ASSIGN dref1->* TO <fs1>.
<fs1>-col1 = 1.
<fs1>-col2 = 2.dref2 = dref1.
ASSIGN dref2->* TO <fs2> CASTING.
WRITE / <fs2>.GET REFERENCE OF <fs1>-col2 INTO dref2.
ASSIGN dref2->* TO <fs2>.
WRITE / <fs2>. -
e-abap
2011.09.15 22:27
정리가 잘 되어 있네요. 앞으로 ABAP 하시는 분들에게 많은 도움이 될것입니다.
-
뽀꼬
2011.09.17 00:01
관심 가져주셔서 감사합니다. ^^
정리하는 김에 자료도 만들어봤어요~
-
우짜2
2011.09.28 20:16
좋은자료 감사합니다.
-
atom2000
2011.10.04 23:38
재밋게 읽을 수 있게 정리되었네요. 이거 하나 봤는데, 감동 감동 입니다.
감사합니다~~
-
고구마
2011.10.13 20:00
대학 시절 노트정리 정말 잘하셨을 듯..
오늘도 배우고 갑니다.
-
슈퍼복덩이
2011.10.19 22:29
뽀꼬님 정리한거 다시 한번 보고 있는데 정말 열정이 대단 하신분인걸 다시 한번 느낄수 있네요..^^
-
뽀꼬
2011.10.21 23:00
열정이라기보다 한참 할 일을 안 줘서 심심했지요. ^^;;
-
보라돌이!
2012.02.08 19:21
잘 먹을게여. 냠냠.
-
토도리
2012.02.20 23:36
음.. 괜찮은디여.ㅎ 좋은 글 감사합니다.ㅎ
-
금색의마왕
2012.03.06 02:07
좋은글 감사합니다.
-
폭주비어
2016.02.15 23:49
좋은글 감사해요~!
-
내일은아밥왕
2018.01.27 01:54
훌륭하십니다~
번호 | 제목 | 글쓴이 | 날짜 | 조회 수 |
---|---|---|---|---|
22 | [ABAPDOCU] 뜯어봅시다 18 [5] | 뽀꼬 | 2011.10.28 | 486 |
21 | [ABAP] Dynamic SQL ( FROM clause,Rel4.10,One table ) [3] | 문바이 | 2011.10.25 | 464 |
20 | [ABAPDOCU] 뜯어봅시다 17 [6] | 뽀꼬 | 2011.10.11 | 508 |
19 | [ABAPDOCU] 뜯어봅시다 16 [8] | 뽀꼬 | 2011.10.08 | 304 |
18 | [ABAPDOCU] 뜯어봅시다 15 [7] | 뽀꼬 | 2011.10.05 | 337 |
17 | [ABAPDOCU] 뜯어봅시다 14 [10] | 뽀꼬 | 2011.10.01 | 295 |
16 | [ABAPDOCU] 뜯어봅시다 13 [7] | 뽀꼬 | 2011.09.30 | 280 |
15 | [ABAPDOCU] 뜯어봅시다 12 [7] | 뽀꼬 | 2011.09.29 | 313 |
14 | [ABAPDOCU] 뜯어봅시다 11 [14] | 뽀꼬 | 2011.09.27 | 404 |
13 | [ABAPDOCU] 뜯어봅시다 10 [14] | 뽀꼬 | 2011.09.23 | 412 |
12 | [ABAPDOCU] 뜯어봅시다 9 [15] | 뽀꼬 | 2011.09.20 | 409 |
11 | [ABAPDOCU] 뜯어봅시다 8 [14] | 뽀꼬 | 2011.09.19 | 490 |
10 | [ABAPDOCU] 뜯어봅시다 7 [14] | 뽀꼬 | 2011.09.15 | 550 |
» | [번외] Field symbol과 Data reference [14] | 뽀꼬 | 2011.09.15 | 975 |
8 | [ABAPDOCU] 뜯어봅시다 6 [22] | 뽀꼬 | 2011.09.14 | 539 |
7 | [ABAPDOCU] 뜯어봅시다 5 [16] | 뽀꼬 | 2011.09.10 | 576 |
6 | [ABAPDOCU] 뜯어봅시다 4 [20] | 뽀꼬 | 2011.09.09 | 708 |
5 | [ABAPDOCU] 뜯어봅시다 1 [54] | 뽀꼬 | 2011.09.08 | 1786 |
4 | [ABAPDOCU] 뜯어봅시다. 3 [30] | 뽀꼬 | 2011.09.08 | 956 |
3 | [ABAPDOCU] 뜯어봅시다. 2 [42] | 뽀꼬 | 2011.09.07 | 2187 |
c언어와 비교해주셔서 잘 봤습니다. 필드심볼은 어느 정도 이해가 되지만, data reference는 ?? 하네요.
혹시 여력이 되시면, 다음에는 간단한 예제를 조심 쓰럽게 부탁드려볼까요? 물론, 신경 안 쓰셔도 되구요