SAP数据类型与数据变量

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.


小练习

定义一个数据类型、再根据数据类型定义一个数据变量,赋值后输出。
SAP数据类型与数据变量
SAP数据类型与数据变量

發表評論
所有評論
還沒有人評論,想成為第一個評論的人麼? 請在上方評論欄輸入並且點擊發布.
相關文章