【ABAP】第一章-基础
1. ABAP语法基础
1.1 基本数据类型
C、N、D、T、I、F、P、X、string、Xstring
P:默认为8字节,最大允许16字节。最大整数位:16*2 = 32 - 1 = 31 -14(允许最大小数位数) = 17位整数位
|
类型 |
最大长度(字符数) |
默认长度 |
说明 |
|
C |
1~262143个字符 |
1 字符 |
|
|
N |
1~262143个字符 |
1 字符 |
0到9之间字符组成的数字字符串 |
|
D |
8 个字符 |
日期格式必须为 YYYYMMDD |
|
|
T |
6 个字符 |
格式为 24-hour的 HHMMSS |
|
|
I |
4 bytes |
-2.147.483.648 to +2.147.483.647 |
|
|
F |
8 bytes |
小数位最大可以到17位,即可精确到小数点后17位 |
|
|
P |
1 to 16 bytes |
8 bytes |
两个数字位压缩后才占一个字节,由于0-9的数字只需要4Bit位,所以一个字节实质上允许存储二位数字,这就是P数据类型为压缩数据类型的由来。并借用半个字节来存储小数点位置、正号、负号相关信息 |
|
X |
1~524,287 bytes |
1 byte |
十六进制字符 0-9, A-F具体的范围为:00~FF 类型X是十六进制类型,可表示内存字节实际内容,使用两个十六制字符表示一个字节中所存储的内容。但直接打印输出时,输出的还是赋值时字面意义上的值,而不是Unicode解码后的字符 如果未在 DATA 语句中指定参数<length>,则创建长度为 1 注:如果值是字母,则一定要大写 |
1.1.1 数据申明
定义变量
DATA < f > [(< length >)] < type> [< value>] [< decimals>].//<f>指变量名;<length>变量长度;<type>变量类型;<decimals>小数的位数
DATA: p(9) TYPE p DECIMALS 2 VALUE '-123456789012345.12'.
DATA :
W_CHAR TYPE C, "1位长度的字符变量
W_MULCHAR() TYPE C, "20位长度的字符变量
W_INTERGER TYPE I VALUE , "整型变量,并赋上了初值10
W_FLOAT TYPE F VALUE ,2E-10, "浮点数
W_DATE TYPE D VALUE '', "日期
W_TIME TYPE T VALUE '', "时间
W_NUMBER TYPE N, "1位数字变量
W_MULNUM() TYPE N, "10位数字变量
W_QUAN TYPE P, "缺省有3位小数的变量
W_CURR TYPE P DECIMALS . "固定2位小数的变量
DATA :
W_CHAR_REF LIKE W_CHAR, "和上面定义的W_CHAR一样
W_MATNR LIKE MARA-MATNR. "和标准表MARA中字段MATNR一样
定义常量
CONSTANTS < c>[< length>] < type> < value> [< decimals>].
CONSTANTS: BEGIN OF < fstring>,
< component declaration>,
…
END OF < fstring>.//字符串定义为常量
定义结构
DATA / TYPES:
BEGIN OF <结构名>, <项目1>, <项目2>, …… <项目n>,
END OF <结构名>.
DATA : <结构名> TYPE|LIKE <结构|表>.
.直接声明
DATA:
BEGIN OF TYP_STUDENT,
NAME() TYPE C,
BIRTH_DATE TYPE D,
BIRTH_TIME TYPE T,
HEIGHT TYPE P,
WEIGHT TYPE I,
END OF TYP_STUDENT. .使用like
DATA :
TYP_STUDENT_REF LIKE TYP_STUDENT,
TYP_MARA LIKE MARA. .特殊的用法中,在自己的结构中包含别的结构
DATA:
BEGIN OF TYP_STUDENT2.
INCLUDE STRUCTURE TYP_STUDENT.
DATA:CLASS()
TYPE N,
DIRECTOR() TYPE C,
END OF TYP_STUDENT2.
【ABAP】第一章-基础的更多相关文章
- .net架构设计读书笔记--第一章 基础
第一章 基础 第一节 软件架构与软件架构师 简单的说软件架构即是为客户构建一个软件系统.架构师随便软件架构应运而生,架构师是一个角色. 2000年9月ANSI和IEEE发布了<密集性软件架构建 ...
- Laxcus大数据管理系统2.0(2)- 第一章 基础概述 1.1 基于现状的一些思考
第一章 基础概述 1.1 基于现状的一些思考 在过去十几年里,随着互联网产业的普及和高速发展,各种格式的互联网数据也呈现爆炸性增长之势.与此同时,在数据应用的另一个重要领域:商业和科学计算,在各种新兴 ...
- Linux系统shell编程自学_第一章基础
第一章 基础shell的优势在于处理操作系统底层的业务,Python,php的优势在于开发运维工具,web界面的管理工具以及web业务开发.处理一键安装.优化.报警脚本shell又叫命令解释器,它能识 ...
- wpf(第一章 基础知识)
wpf第一章基础知识:通过vs2015创建wpf程序会在引用里面多出3个核心程序集PresentationCore.PresentationFramework.WindowsBase.并且会在解决方案 ...
- 《openssl编程》:第一章基础知识
第一章 基础知识 1.1 对称算法 对称算法使用一个密钥.给定一个明文和一个密钥,加密产生密文,其长度和明文大致相同.解密时,使用读密钥与加密密钥相同. 对称算法主要有四种加密模式: (1) 电子密码 ...
- Python第一章-基础知识
第一章:基础知识 1.1 安装python. 直接官网下载最新的python然后默认安装就可以了,然后开始菜单里找到pyhton *.*.* Shell.exe运行python的交互shell ...
- TypeScript学习指南第一章--基础数据类型(Basic Types)
基础数据类型(Basic Types) 为了搭建应用程序,我们需要使用一些基础数据类型比如:numbers,strings,structures,boolean等等. 在TypeScript中除了Ja ...
- 快学Scala习题解答—第一章 基础
1 简介 近期对Scala比较感兴趣,买了本<快学Scala>,感觉不错.比<Programming Scala:Tackle Multi-Core Complexity on th ...
- Laxcus大数据管理系统2.0(3)- 第一章 基础概述 1.2 产品特点
1.2 产品特点 Laxcus大数据管理系统运行在计算机集群上,特别强调软件对分布资源可随机增减的适应性.这种运行过程中数据动态波动和需要瞬时感知的特点,完全不同与传统的集中处理模式.这个特性衍生出一 ...
随机推荐
- JDK 下载相关资料
所有版本JDK下载地址: http://www.oracle.com/technetwork/java/archive-139210.html 下载账户密码: 2696671285@qq.com Or ...
- Java为什么没有指针
为了摒弃指针带来的风险(当然了,也就放弃了指针带来的效率). 1.C/C++为什么有指针? 这个很简单,程序都是在内存中运行的,只要有内存,就有内存地址,有地址,就必然有指针,只是C++对内存地址的访 ...
- 【cf补题记录】A. Hotelier
思考之后再看题解,是与别人灵魂之间的沟通与碰撞 A. Hotelier 题意 给出长度为n的字符串,字符串由'L'.'R'以及数字0~9组成.旅馆有10间房子,L代表客人从左边入住,R代表客人从右边入 ...
- css文字两行或者几行显示省略号
做这个省略的问题,突然发现显示省略号是有中英文区分的 我做两行的时候用的是以下代码,在是中文的情况下是么得问题,到了英文下发现不起作用了 width: 250px; overflow: hidden; ...
- 【pytorch 代码】pytorch 网络结构可视化
部分内容转载自 http://blog.csdn.net/GYGuo95/article/details/78821617,在此表示由衷感谢. 此方法需要安装python-graphviz: con ...
- go 牛顿法开平方
func main() { fmt.Println(sqrt(3)) } func sqrt(x float64)float64{ z := x for i := 0; i < 10 ; i++ ...
- 剑指offer:链表中环的入口结点
题目描述: 给一个链表,若其中包含环,请找出该链表的环的入口结点,否则,输出null. 思路分析: 这道题首先需要判断链表是否存在环,很快就能想到用快慢指针来判断. 由于快慢指针的相遇位置并不一定为链 ...
- 利用lsof命令查找已经删除的文件来释放磁盘空间
测试环境一台服务器/目录空间使用率达到97%,但是通过du -sh *发现实际空间没用到那么多,初步怀疑,之前删除的文件,有运行中的进程一直占用,导致空间没有释放,如图通过du -sh *发现共实际使 ...
- JVM常用命令和性能调优建议
一.查看jvm常用命令jinfo:可以输出并修改运行时的java 进程的opts. jps:与unix上的ps类似,用来显示本地的java进程,可以查看本地运行着几个java程序,并显示他们的进程 ...
- Flutter中管理路由栈的方法和应用
原文地址:https://www.jianshu.com/p/5df089d360e4 本文首先讲的Flutter中的路由,然后主要讲下Flutter中栈管理的几种方法. 了解下Route和Navig ...