第1章 ABAP编程语言概述 1
1.1 ABAP和Unicode 2
1.1.1 Unicode概述 2
1.1.2 Unicode和非Unicode程序之间的差异 4
1.2 ABAP内存组织概述 13
1.2.1 通用存储器组织 13
1.2.2 在内部会话中的程序 15
第2章 ABAP字典 18
2.1 ABAP字典中的经典对象 18
2.1.1 数据类型 20
2.1.2 数据库表 30
2.1.3 视图(View) 44
2.1.4 增强功能(Enhancements) 52
2.2 ABAP字典ABAP中的CDS 54
2.2.1 ABAP CDS的语法 54
2.2.2 ABAP CDS的视图 59
2.2.3 ABAP CDS的授权 101
2.3 ABAP字典中预定义的数据类型 110
2.3.1 使用预定义的数据类型 112
2.3.2 预定义数据类型的特殊属性 113
第3章 ABAP语法解析 120
3.1 语法结构 121
3.1.1 语法元素 121
3.1.2 连接相似语句 122
3.1.3 ABAP/4程序格式 123
3.1.4 插入已有结构 124
3.1.5 程序命名约定 124
3.2 程序声明 124
3.2.1 可执行程序(1) 124
3.2.2 屏幕编辑器屏幕的模块池(M) 125
3.2.3 函数组(F) 125
3.2.4 类别库(K) 126
3.2.5 接口池(J) 126
3.2.6 类型池(T) 126
3.3 程序结构化 126
3.3.1 事件块 127
3.3.2 宏 128
3.3.3 包含程序 129
3.3.4 子程序 129
3.3.5 函数 130
3.3.6 对话程序模块 130
3.3.7 面向对象方法 131
3.4 数据类型与数据对象 131
3.4.1 数据类型和数据对象概述 131
3.4.2 数据 134
3.4.3 数据对象 136
3.5 数据类型声明 137
3.5.1 TYPE-POOLS类型声明组 137
3.5.2 Types定义类型 138
3.5.3 Include嵌套已定义类型 142
3.6 数据对象声明 143
3.6.1 DATA一般变量声明 143
3.6.2 CLASS-DATA声明类中的静态属性 147
3.6.3 CONSTANTS常数定义 148
3.6.4 STATIC声明静态变量 148
3.6.5 INCLUDE STRUCTURE嵌套结构体变量 148
3.6.6 TABLES声明工作区 149
3.6.7 NODES结点 149
3.7 FIELD-SYMBOLS指针 150
3.7.1 定义 150
3.7.2 ASSIGN的用法 151
3.8 类和接口 155
3.8.1 Class类 155
3.8.2 Interface接口 157
3.8.3 方法实现 158
3.8.4 静态方法CLASS-METHODS 163
3.8.5 事件实现 166
3.8.6 接口的实现 166
3.9 对象建立 169
3.9.1 数据对象 169
3.9.2 实例化对象 174
3.10 程序单元调用 176
3.10.1 程序调用 176
3.10.2 程序块调用 182
3.10.3 程序单位退出处理 193
3.11 程序控制 196
3.11.1 逻辑表达式 196
3.11.2 控制逻辑 201
3.11.3 例外处理 203
3.12 赋值 206
3.12.1 赋值 206
3.12.2 参照赋值 210
3.12.3 清除变量内容 214
3.13 数据处理 215
3.13.1 计算 215
3.13.2 字符串数据处理 222
3.13.3 内部表处理 231
3.13.4 提取数据 249
3.13.5 数据项目属性 252
3.14 用户画面 256
3.14.1 Dynpro 256
3.14.2 选择画面(选择屏幕) 268
3.14.3 一览画面 282
3.14.4 消息 306
3.14.5 转换例程 310
3.15 数据编辑 310
3.15.1 ABAP数据库操作 310
3.15.2 数据类操作 348
3.15.3 文件操作 356
3.15.4 数据整合性 363
3.16 程序参数 367
3.16.1 SAP内存 367
3.16.2 语言环境 369
3.16.3 日期及时间信息 371
3.17 程序处理 373
3.17.1 程序检测 373
3.17.2 动态程序 377
3.18 ABAP数据及通信接口 390
3.18.1 远程函数调用 390
3.18.2 ABAP和XML 393
3.18.3 Ole接口 395
3.19 增强 398
3.19.1 源代码扩张 398
3.19.2 BADI使用增强 399
3.20 ABAP系统类和接口 400
3.20.1 RTTS——实时数据类型服务类 400
3.20.2 字符串处理用类 401
3.20.3 字符型赋值及数值型格式变换用类 401
3.20.4 算术用类 401
3.20.5 TimeStamp计算及转换的类 401
3.20.6 字符变量属性取得用类 402
3.20.7 报表格式设定用类 402
3.20.8 信息用对象 402
3.20.9 ABAP共享对象 402
3.20.10 弱参照类 402
3.20.11 数据集群用类 402
3.20.12 文件接口用帮助类 402
3.20.13 系统状态类 402
3.20.14 事物状态取得用类 403
3.20.15 内存分析用类 403
3.20.16 数据压缩用类 403
3.20.17 对象串行化接口 403
3.20.18 运行时间测定类 403
3.20.19 ABAP单位辅助类 403
3.21 无效关键字 403
3.21.1 编码 403
3.21.2 声明 404
3.21.3 局部对象实例化 405
3.21.4 程序调用 406
3.21.5 程序终了 406
3.21.6 程序流 407
3.21.7 赋值 409
3.21.8 计算命令 409
3.21.9 字符串处理 410
3.21.10 内部表处理 411
3.21.11 Context 412
3.21.12 Dynpro控制逻辑 412
3.21.13 一览处理 413
3.21.14 数据库访问 414
3.21.15 外部程序接口 415
3.21.16 文本编辑 416
附录 417
附录A ABAP对象命名规范 417
附录B ABAP编码规范 419
附录C ABAP正则表达式 429
附录D ABAP语言下的XML 443