简介:本人是一个刚入行的学生,暂时担任ABAP开发工作。因为我之前没有接触过ABAP编程,对此比较陌生,所以此博客用于自己的学习记录,也希望给观看此博客的人提供一些帮助。
一、ABAP简介
ABAP是一个SPA程序开发语言,它是三层架构组成,第一层是数据库层,第二层是服务器层,第三层是表示层,表示层通过服务器层对数据库进行交互。
暂时就介绍到这,我对ABAP了解也不算多,知道他是编程语言就可以了,接下来学习语法!
二、基本语法
1、基本类型
类型 | 默认值 | 长度区间 | 默认长度 | 描述 |
---|---|---|---|---|
C | 空 | 1~262143个字符 | 1字符 | 字符,如'ABAP' |
N | '00..00' | 1~262143个字符 | 1字符 | 0~9的数字组成的数字字符串 |
D | '00000000' | 8个字符 | 表示日期,格式为YYYYMMDD | |
T | '000000' | 6个字符 | 表示时间,格式为HHMMSS | |
I | '0' | 4bytes | 表示整数 | |
F | '0' | 8bytes | 表示浮点数,最对有17位小数 | |
P | '0' | 两个数字位压缩后才占一个字节,由于0-9的数字只需要4Bit位,所以一个字节实质上允许存储二位数字,这就是P数据类型为压缩数据类型的由来。并借用半个字节来存储小数点位置、正号、负号相关信息 | ||
X | '00' | 十六进制字符 0-9, A-F具体的范围为:00~FF 类型X是十六进制类型,可表示内存字节实际内容,使用两个十六制字符表示一个字节中所存储的内容。但直接打印输出时,输出的还是赋值时字面意义上的值,而不是Unicode解码后的字符 注:如果未在 DATA 语句中指定参数<length>,则创建长度为 1,如果值是字母,则一定要大写 |
对于此表,有以下解释:
1.n类型是可以有前导零的,它是字符串数字,i表示的是整数,它不具备前导零的功能。
2.P类型是一种压缩的定点数,其数据对象占据内存字节数和数值范围取定义时指定的整个数据大小和小数点后位数,如果不指定小数位,则将视为I类型。其有效数字位大小可以是从1~31位数字(小数点与正负号占用一个位置,半个字节),小数点后最多允许14个数字。
例如
DATA:P(16) TYPE P DECIMALS 14 VALUE '12345678901234567.12345678901234'.
读者在这里可能还对这种代码形式有些陌生,我先在这里介绍一下:
这是ABAP声明变量的一种方式,DATA的意思就是说我现在要声明变量了,P(16)这就是变量的名字后面(16)表示这个变量的大小,TYPE关键字就是说,我要指定这个变量是什么类型的,DECIMALS也就是小数的意思,decimals 14也即是表示指定小数14位。
3.这里类型很多,但是在编程的时候,大家会遇到的更多的是自定义的类型。
2.创建程序
在开始编程之前,我们需要创建一个程序,这需要用到SE38这个程序
我们在上面输入框中输入SE38,或者直接点击SE38进入程序
笔者也只是一个初学者,所以对这个程序的了解也不是很多,只能是就我学习到的一些知识做一个总结,这也是标题,日记的由来。
到这里我们输入自己需要的标题,一般由Z开头,加上相应模块名称,加序号,例如ZFIR014,FI就是财务,R014就是序号。
输入之后我们点击创建,跳出来下面界面
输入标题,类型点击保存,然后选择包,输入完成后就可以保存创建程序了。
3.编写第一个程序
创建完成后,会自动生成以下代码
REPORT ZFIR014.
自动生成,可以不用管,因为我暂时也不知道咋解释,哈哈哈。
注意,每条语句的结束必须由英文的句号“.”结尾。
然后我们写一下代码
WRITE:'这是我的第一个ABAP程序!'
写完过后,分别点击激活、运行,相当于编译、运行。
不出意外,第一个程序就完成啦!