SAP的内置基本数据类型

1,定长类型:C, N ,T ,D ,I ,F ,P ,X 定义数据对象在程序运行期间不能改变,其中T ,D ,I ,F 的数据存储长度是固定的,不能在程序中指定参照该类型生成的数据对象占用的内存字节数,而C ,N ,P ,X 生成数据类型在声明时需要指定其长度,因而他们也属于一般类型。

2,长度可变类型:String ,XString 生成的数据对象长度无需指定,在程序运行过程中可以随意改变。

3,定长类型的又可分成三类,字符类型(C ,N ,T ,D 主要用于值的显示与存储),数字类型(I ,F ,P用于运算),十六进制类型(X显示内存数据的未编码状态)。

    <1>,声明一个数据对象时,不指名其类型,则默认为C类型,ABAP中没有布尔类型,类似判断真假方式代码:

                DATAbool_ind TYPE c.
         bool_ind 'X'.
         IF bool_ind 'X'.
            WRITE 'True'.
         ElSE.
            WRITE 'False'.

         ENDIF.

    <2>,N的数据包含阿拉伯数字字符,  但不能当做数值类型来处理,不能用于精确计算。员工编号,公司代码,银行账号,邮编等是  典型的N字段。

                DATA: p_code TYPE n.

                 p_code = '78900'.

    <3>,T ,D 类型分别用于存储时间,日期,二者有固定的长度格式。T类型存储格式HHMMSS(即小时/分钟/秒),D类型存储格式YYYYMMDD(即年/月/日)

                  DATA: date TYPE d;

                 time TYPE t;

           date = '20151213'.

           time = '121520'.

           date = date + 1.  "新值为2006年1月1日

    <4>,I类型称为整形类型,一般声明索引值,计算器变量,用于算术运算。如果运算出现非整数,则进行四舍五入。

           DATA: index TYPE i,
                 n TYPE i VALUE 5

           index = 1.

           DO n TIMES.

           index = index +1.

           ENDDO.

    <5>,P用于声明小数位固定的压缩数,其数据对象占据内存字节数和数值范围取决于定义时指定的整个数据大小和小数点后位数,如果不指定小数位,则将P类型数据视为I类型数据。有效大小可以是从1~16字节的任意值,在小数点后最多允许14个数字。

    <6>,F类型为浮点数,就是指数字在内存中以字节形式表示。包括三部分:符号,尾数和指数。尾数仅包含数据中的数字部分,指数则决定小数点的位置。

          DATA: square_root TYPE f.

          square_root = sqrt(2).

    <6>,X是十六进制类型,可表示内存字节实际内容。每一个内存字节中都含有八个二进制位,每四个二进制位可以由一个十六进制(0,1,2,3,...9,A...F)来表示,因而X中的每一位代表四个二进制数。

     <7>,String可以看做长度可变的C类型,XString是长度可变的X类型。         

                  DATA: text_string TYPE string.

           text_string = 'Data Object'.

猜你喜欢

转载自blog.csdn.net/littlemangoyx/article/details/80061485