[ABAP] Data Type / Data Variable / DATA ๊ตฌ๋ฌธ
๐ Data Type
TYPES dtype TYPE type.
or
TYPES dtype LIKE dobj.
-
ABAP ํ๋ก๊ทธ๋จ์์ ์ฌ์ฉํ๊ฒ ๋๋ ๋ณ์์ ํ์ ์ ์ ์ํ๊ธฐ ์ํด์ ์ฌ์ฉ
-
Data Variable๊ณผ ๋ ๋ฆฝ์ ์ผ๋ก ์ ์ธ
-
TYPES ๊ตฌ๋ฌธ์ ์ฌ์ฉํด Data Type์ ์ ์ธํ๋ฉด ํด๋น ํ๋ก๊ทธ๋จ์์๋ง ์ฌ์ฉ ๊ฐ๋ฅ > Local Data Type
-
Local Data Type์ ์ด๋ฏธ ์ ์๋์ด ์๋ ABAP Data Type์ ์ฐธ๊ณ ํด ์ ์ธ
-
Data Type์ ์ข ๋ฅ
-
Predefined ABAP Type
- kerner ๋ ๋ฒจ์์ ์ ์๋์ด ์๋(ABAP์์ ์ ๊ณตํ๋) ๊ธฐ๋ณธ ๋ฐ์ดํฐ ํ์
-
Local Data Type in Program
- ABAP ํ๋ก๊ทธ๋จ ๋ด์์ Predefined ABAP Type์ ์ด์ฉํด Local Type์ ์์ฑ
-
Global Data Type in ABAP Dictionary
-
๋ชจ๋ ABAP ํ๋ก๊ทธ๋จ์์ ์ฌ์ฉํ ์ ์๋ Global Data Type
-
ABAP Dictionary Object(Table, Data Type, Data Element, Structure, Table Type)๋ค์ ๋ชจ๋ ABAP ํ๋ก๊ทธ๋จ์์ ๋ณ์๋ฅผ ์ ์ธํ ๋ ๋ฐ์ดํฐ ํ์ ์ผ๋ก ์ฌ์ฉ ๊ฐ๋ฅ
-
-
๐ Data Variable
DATA var TYPE type.
or
DATA var LIKE dobj.
-
Data Type์ ์ฐธ๊ณ ํด ๊ฐ์ ์ ์ฅ, ํ๋ก๊ทธ๋จ์์ ์ฌ์ฉํ ์ ์๋ ๋ณ์
-
ํ๋ก๊ทธ๋จ์ ์คํ ์์ ์ ๋ฉ๋ชจ๋ฆฌ๋ฅผ ์ฐจ์งํ๋ ๋ฐ์ดํฐ ๋ณ์
-
ABAP ํ๋ก๊ทธ๋จ์์๋ Data Variable์ ์ด๋ฆ์ ํตํด์ ๊ฐ์ ์ ๊ทผํ ์ ์์
๐ Data Object
-
Data Variable = ์ค์ Data Object
-
ABAP ํ๋ก๊ทธ๋จ์ด ์คํ๋๋ ๋์ ๋ฉ๋ชจ๋ฆฌ๋ฅผ ์ ์ ํ๊ฒ ๋๋ ๋ฌผ๋ฆฌ์ ์ธ ๋จ์
-
Data Object์ ์ด๋ฆ์ ์ด์ฉํด ์ฃผ์๋ฅผ ํ์ธ -> Data Type์ ์ฐธ๊ณ ํด ํ๋ ๊ธธ์ด ๋ฑ์ ์ ๋ณด๋ก Contents ํด์
๐ Data Type์ ์ด์ฉํ ABAP ๋ณ์ ์ ์ธ ๋ฐฉ๋ฒ
-
Predefined ABAP Type์ ์ด์ฉํ ๋ณ์ ์ ์ธ
DATA : gv_num TYPE i, gv_deci TYPE f, gv_date TYPE d, gv_time TYPE t, gv_text1 TYPE c, gv_text2(2) TYPE c, gv_longtext TYPE string.
-
ํ๋ก๊ทธ๋จ์ Local Type์ ์ด์ฉํ ๋ณ์ ์ ์ธ : Local ํ๋ก๊ทธ๋จ์์ ์์ฃผ ์ฌ์ฉํ๋ ๋ฐ์ดํฐ ๋ฐ ๊ตฌ์กฐ๋ฅผ TYPE์ผ๋ก ์ ์ธ, ํ๋ก๊ทธ๋จ ๋ด์์๋ง ABAP ๊ธฐ๋ณธ ๋ฐ์ดํฐ ํ์ ์ฒ๋ผ ์ฌ์ฉ ๊ฐ๋ฅ
TYPES : BEGIN OF t_struct, col1 TYPE c, col2 TYPE i, col3 TYPE d, END OF t_struct. DATA : gs_struct TYPE t_struct, gv_var LIKE gs_struct-col1.
-
ex)
-
Local Type ์ ์ธ ํ ์ด ํ์ ์ ์ฐธ๊ณ ํด DATA Variable ์ ์ธํ๊ธฐ
TYPES t_var TYPE c LENGTH 20. DATA gv_var TYPE t_var. gv_var = 'HELLO ABAP'. WRITE gv_var.
-
๋ณ์๋ฅผ ์ ์ธํ ๋ ๋ฐ๋ก TYPE ์ง์ ํ๊ธฐ
DATA gv_var TYPE c LENGTH 20.
-
-
-
ABAP Dictionary์ Type์ ์ด์ฉํ ๋ณ์ ์ ์ธ
DATA : gv_carrid TYPE s_carr_id, gv_connid TYPE sflight-carrid, gv_matnr TYPE mara-matnr.
๐ DATA ๊ตฌ๋ฌธ
๋ฐ์ดํฐ ๋ณ์๋ฅผ ์ ์ธํ ๋ ์ฌ์ฉํ๋ ๊ตฌ๋ฌธ
-
TYPE type
-
๋ฐ์ดํฐ ๋ณ์์ ํ์ ์ ์ ์
-
TYPE ๊ตฌ๋ฌธ ๋ค์์๋ 3๊ฐ์ง ํ์ ์ ํ(Predefined ABAP Type, Local Data Type in Program, Global Data Type in ABAP Dictionary)์ด ์ฌ ์ ์๋ค.
-
DATA : gv_num TYPE i.
-
์ผํ(,)๋ก ๊ตฌ๋ถ ํด ์ฌ๋ฌ๊ฐ์ ๋ณ์๋ฅผ ํ๋ฒ์ ์ ์ธํ ์ ์์, ๋ง์นจํ(.)๋ฅผ ๋ง๋ ๋๊น์ง ์คํ
DATA : gv_num1 TYPE i, gv_num2 TYPE i.
-
-
LIKE
-
์์์ ์์ฑํ Data Variable๊ณผ ๋์ผํ ํ์ ์ ๋ณ์๋ฅผ ์ ์ธํ ๋ ์ฌ์ฉ
-
ํ์ ์ด ์๋ ๋ชจ๋ ๋ฐ์ดํฐ ๋ณ์ (Field, Parameter, Structure, ์์คํ ๋ณ์, ..)๋ฅผ ์ฌ์ฉํ ์ ์๋ค.
-
DATA gv_num2 LIKE gv_num1.
-
-
VALUE
-
๋ชจ๋ ๋ฐ์ดํฐ ํ์ ์ Initial Value๊ฐ ์กด์ฌํ๋๋ฐ, DATA ๊ตฌ๋ฌธ์ ์ฌ์ฉํ ๋ VALUE ์ต์ ์ ์ฌ์ฉํ๋ฉด ๊ธฐ๋ณธ Initial Value ๋์ ์ int๋ก ์ด๊น๊ฐ์ ์ค์
-
VALUE IS INITIAL
๊ตฌ๋ฌธ์ ์ฌ์ฉํ๋ฉด Data Type์ Initial Value๋ก ์ง์ ๋จ -
Constants ๋ณ์๋ฅผ ์ ์ธํ ๋ VALUE ์ต์ ์ ํ์
-
DATA : gv_num TYPE i VALUE 123, gv_flag VALUE 'X', gv_val VALUE IS INITIAL, gv_idx LIKE sy_tabix VALUE 45.
-
-
LENGTH
-
ํ๋์ ๊ธธ์ด ์ค์
-
C, N, P, X ํ์ ์๋ง ์ฌ์ฉ ๊ฐ๋ฅ
-
DATA : gv_num TYPE n LENGTH 2.
-
-
DECIMALS
-
P ํ์ ์๋ง ์ฌ์ฉ ๊ฐ๋ฅ, 1 ~ 14 ์ฌ์ด์ ์์ ์๋ฆฌ ์ ์ค์
-
DATA : gv_num TYPE p DECIMALS 3.
-
๐ Predefined ABAP Type
-
ABAP Kernel ๋ ๋ฒจ์์ ์ ์๋์ด ์๋ ๋ฐ์ดํฐ ํ์
-
๋ชจ๋ ABAP ํ๋ก๊ทธ๋จ์์ ์ฌ์ฉ ๊ฐ๋ฅ
-
๊ณ ์ ๊ธธ์ด๋ฅผ ๊ฐ์ง๋ 8๊ฐ์ง ๊ธฐ๋ณธ Data Type ์ ๊ณต, ๋ชจ๋ ํ๋์ ๊ธธ์ด๋ byte ๋จ์๋ก ๊ตฌ๋ถ
-
D, F, I๋ ์ด๋ฏธ ๊ธฐ์ ์ ์์ฑ์ด ์ ์๋์ด ์๊ธฐ ๋๋ฌธ์ ํ๋ ๊ธธ์ด๋ฅผ ์ ์ํ์ง ์๊ณ ๋ฐ๋ก ์ฌ์ฉ ๊ฐ๋ฅ
-
TYPE P๋ DECIMALS๋ฅผ ๋ช ์ํ์ง ์์ผ๋ฉด ์์ ์๋ฆฌ๋ฅผ ์ธ์ํ์ง ๋ชปํจ
-
-
-
NUMERIC TYPES
ํ์ ์ด๊ธฐ ๊ธธ์ด ๊ฐ๋ฅ ๊ธธ์ด ์ด๊น๊ฐ ์๋ฏธ I 4 4 0 Integer F 8 8 0 Floating point number P 8 1-16 0 Packed number -
CHARACTER TYPES
ํ์ ์ด๊ธฐ ๊ธธ์ด ๊ฐ๋ฅ ๊ธธ์ด ์ด๊น๊ฐ ์๋ฏธ C 1 1-65535 ย Text Field D 8 8 00000000 Date Field (YYYYMMDD) N 1 1-65535 0โฆ Numeric Text Field T 6 6 000000 HHMMSS -
HEXADECIMAL TYPE
ํ์ ์ด๊ธฐ ๊ธธ์ด ๊ฐ๋ฅ ๊ธธ์ด ์ด๊น๊ฐ ์๋ฏธ X 1 1-65535 X0.. Hexadecimal Field
-