1. 數據類型的分類:
SAP ABAP開發裏面的數據類型(data type)是指在程序中可以使用的數據的類型。
主要分爲三類:
- ABAP 基本數據類型
同C\JAVA中的常用數據類型一樣,是系統內部已定義的數據類型- 局部數據類型
在程序內部定義的局部數據類型,還可以定義包括多個數據類型的結構類型(structure)
定義語法:
TYPES dtype TYPE type.
TYPES dtype LIKE dobj.
TYPES: BEGIN OF t_struct,
col1 TYPE c,
col2 TYPE i,
col3 TYPE d,
END OF t_struct.- 全局數據類型
是所有程序都可以使用的額數據類型。
定義語法:
TYPES:types TYPE table.
TYPE-POOLS hktst... (聲明TYPE GROUP,將多個TYPE組合爲一組後使用)
2. 數據變量的分類:
數據變量(data variable)
這個也就是變量,可以存儲數據,而數據類型(data type)是不能存儲數據的。
- 參照基本數據類型定義的變量
DATA: gv_num TYPE i.- 參照局部數據類型定義的變量
這種變量只能在程序內部使用。
DATA: gs_struct TYPE t_struct,
gv_var LIKE gs_struct-col1.- 參照全局數據類型定義的變量
這裏主要是指利用ABAP數據字典(ABAP DICTIONARY)定義變量的方法,這種數據類型可以在所有程序中使用。
DATA: gv_carrid TYPE s_carr_id,
gv_connid TYPE sflight-carried,
gv_matnr TYPE mara-matnr.
3. DATA語句
DATA語句是用於定義數據變量。變量名可以包括"_",最長可以定義30位。
- TYPE 和 LIKE
定義變量的數據類型,可以跟TYPE指定特定的type,也可以跟LIKE指定某一變量相同的類型。
例如:
DATA: gv_num TYPE i.
DATA: gv_num1 LIKE gv_num.
- VALUE
VALUE用於賦予變量的初始值。
DATA: gv_num TYPE i VALUE 123.- LENGTH
用於指定字段的長度,但是僅僅只適用於C\N\P\X類型。
DATA: gv_num TYPE n LENGTH 2.- DECIMALS
用於定義小數位數,從1-14位小數,只適用於數據類型P(壓縮類型)
DATA: gv_num TYPE p DECIMALS 3.
小練習
定義一個數據類型、再根據數據類型定義一個數據變量,賦值後輸出。