1년 동안, 진행해왔던 스터디를 재 정비하는 시간을 가지며 일주일에 한 번 만나는 시간은 그대로 유지하고 이제부터는 각자 공부했던 내용을 VELOG에 정리하기로 했다.
"SAP ABAP을 공부했다면 누구든 한 번쯤은 펼쳐 보았을 없어서는 안될 ABAP계 기본서이다! (입사 한 이후로도 많은 도움을 받고있다.)
스터디는 EASY ABAP 2.0 책에 있는 예제를 한 번씩 코딩하며 진행을 할 예정이다.
오늘은 EASY ABAP의 Chapter 02. Data type으로 abap의 기본기를 공부하였다. (기본적으로 알고 있는 내용은 가볍게 스킵하면서 지나가고 있어서 EASY ABAP의 흐름과는 조금 다를 수도 있다!)
Data Type : 프로그램에서 사용할 수 있는 데이터의 타입
Data Variable : Data Type을 참고하여 값을 저장할 수 있는 변수
(Data Type은 얼음틀, Data Variable은 틀에 담긴 얼음이라고 생각하면 좋다ㅎㅎ 얼음틀 모양에 따라서 얼음이 변하는 것!)
TYPES T_TYPE(10) TYPE C.
DATA GV_1 TYPE T_TYPE. "위에 선언한 T_TYPE을 참고하여 GV_1 선언
DATA GV_1(10) TYPE C. "Data Variable 자체에 타입을 선언하는 방법
+함께 스터디하는 언니들이랑 이야기 한 바로는 셋 모두 Data Variable에서 Type을 선언 할 수 있어서 Data Type을 선언하지 않는다고 했다. (이건 개인 코딩 취향의 차이라고 생각이 들어 편한대로 하면 될 것 같다!)
∙ Predefined ABAP Type
∙ Local Data Type in Program
∙ Global Data Type in ABAP Dictionary
1) kernel 레벨에서 정의되어 있는 기본 데이터 타입
(kernel : 운영체제의 가장 기본의 되는 핵심)
2) C, JAVA의 (C,F,I) 타입과 마찬가지로 이미 정의되어 있는 데이터 TYPE
DATA : GV_NUM TYPE I.
DATA : GV_DATE TYPE D.
ABAP은 고정 길이를 가지고 있는 8가지 기본 Data Type이 있다.
Numeric Types
I
DATA GV_I TYPE I. "I로 선언시, 기본 값 정수 10자리(부호포함 시, 11자리)
F
DATA GV_F TYPE F.
P
DATA GV_P1 TYPE P. "기본 값 정수 8자리, 소수점 최대 14자리까지 허용
DATA GV_P2 TYPE P DECIMAL 2. "소수점 표현을 위해서는 DECIMAL을 선언해주어야 한다.
GV_P1 = 123.45.
GV_P2 = 123.45.
WRITE :/ GV_P1.
WRITE :/ GV_P2.
결과값
123
123.45
TYPE P와 F의 차이점
∙ TYPE P가 높은 정확도 요구
∙ 매우 작거나 큰 수는 TYPE F를 쓴다
+이 두 TYPE의 자세한 차이점은 아직 자세히 모르겠다.
우선, 회사에서 소수점이 필요한 TYPE 선언시 P를 사용하는 경우가 대 다수이다.
Character Types
C
DATA GV_C TYPE C. "기본값 1
D
N
T
Hexadecimal type
X
ABAP 프로그램 내에서 Predifined ABAP TYPE을 이용해 해당 프로그램에서만 사용 할 수 있는 Local Type을 생성한다.
예를 들어, 아까 선언한 Data Type이 해당 프로그램에서만 사용이 가능한 Local data TYPE이다!
TYPES T_TYPE(10) TYPE C.
모든 ABAP 프로그램에서 사용할 수 있는 Global Data Type이다.
DATA : GV_CARRID TYPE SFLIGHT-CARRID.