ABAP 基本数据类型


 第一个程序:Hello world

CLASS z_helloworld DEFINITION
  PUBLIC
  FINAL
  CREATE PUBLIC .

  PUBLIC SECTION.
*实现接口.
  INTERFACES IF_OO_ADT_CLASSRUN.
  PROTECTED SECTION.
  PRIVATE SECTION.
ENDCLASS.

CLASS z_helloworld IMPLEMENTATION.
METHOD IF_OO_ADT_CLASSRUN~MAIN.
*创建方法,打印Hello world.
OUT->WRITE('Hello world').
ENDMETHOD.
ENDCLASS.

首先要实现接口if_oo_adt_classrun

编写接口中的main方法,输出hello world

 

ABAP 中规范

命名时使用:Z或者Y开头

ABAP 不区分大小写

 

基本数据类型

 

数据类型按运行期间长度是否能改变可划分为两类

不可变数据类型:C、N、T、D、I、F、P、X

长度可变数据类型:String、XString

ABAP中的语言是可以自动转换的。

 

变量定义

  ①、Data   变量名(长度)  Type  数据类型   [精度(可选)]   [value  默认值(可选)]   —— csdn学堂(自己环境不能用)

data var_name(10) type c value 'aa'.

  ②、DATA <f> TYPE <type> VALUE <val>.   ——w3c

  ③、DATA <f> TYPE <type> LENGTH <len>.   ——w3c

 

C:默认长度为1,从前往后读取,如:var_c长度为1,值为ab,输出时只会输出a

N:默认长度为1,从后往前读取。可以对其进行运算,运算时不能直接使用 var_t = '2568' + 1,这个格式在ABAP中会被认为时两个字符相加

DATA var_n(3) type n.
var_n = '123'.
var_n = var_n + 1.
out->write( var_n ).

T:输出时会按照时间格式输出22:14:59,可以对其进行运算,运算规则会按照时间分秒60进1,在运算时不能使用如下格式:var_t = ‘232159’ + 1,

data var_t type t.
var_t = '221459'.
var_t = var_t + 1.
out->write( var_t ).

D:输出会按照格式输出yyy-mm-dd,利用加减运算,可以得到上个月最后一天的值

data var_d type d.
var_d = sy-datum."sy-datum系统服务器时间
var_d = var_d + 1.
out->write( var_d ).

I:ABAP会自动识别数据类型,所以I类型只会读取整数部分,同时会四舍五入

data var_i type i.
var_i = 100.
*var_i = '100.5'.abap语言中.为结束符号,所以在小数时,利用abap语言数据类型自动转换的特点,用单引号将字符转换为小数
out->write( var_i ).

F:浮点数输出时都是用科学计数法

data var_f type f.
var_f = '21.35'."2.1350000000000001E1
out->write( var_f ).

P:在使用时一定是要规定精度,否则只会输出整数部分,在SAP系统中基本上都是使用p类型,几乎不使用F类型

data var_p type p decimals 2.
var_p = '25.36'."未定义精度时,只会输出整数部分,同时也会遵守四舍五入
out->write( var_p ).

String:ABAP中拼接字符串不能使用加号

data var_s type string.
var_s = 'abc'.
concatenate 'sdf' 'sdae' into var_s."拼接字符串
out->write( var_s ).

 ABAP中没有boolean类型,怎么办,如下为标准型的代码代替方式

*abap中没有boolean类型数据,怎么办
data var_bool type c.
var_bool = 'x'.
if var_bool = ''.
    out->write('false').
endif.

 


免责声明!

本站转载的文章为个人学习借鉴使用,本站对版权不负任何法律责任。如果侵犯了您的隐私权益,请联系本站邮箱yoyou2525@163.com删除。



 
粤ICP备18138465号  © 2018-2025 CODEPRJ.COM