ABAP 前言
安装客户端时,推荐完全安装以避免出现问题
做推广项目的只是初级阶段人员
ABAP开发人员阶段
前两年 开发报表
后期 功能开发
Abap 分为三层
1. presentation server layer(表现层)
2. application server layer(应用层)
3. database (数据库)
Abap 版本
Sap R/3 (旧名称)
mySAP.com (新名称)
ECC 5.0 IDES (当前东软系统) IDES 表示学习系统
ECC 6.0 (较新版本)
BSP作用
将程序转换成脚本
ABAP服务器
通常有三个服务器
1. 开发服务器
2. 测试服务器
3. 生产服务器
ABAP包的建立
1. 选择package 输入包名(用户创建 应以Z开头)
2. appl.component 选择 CA
3. Software component 选择home
4. 包的类型 非重要包类型
Request 号
规范: 通过选项 create request 创建 request 号
服务器进行传送时,实质上传送的是请求号,如果请求号相同,则传送时会出现错误.
se10 查看请求号
/ose10 另启一页
/nse10 不另启 直接跳转
传送前 需要释放
建立Program
With TOP INCL. 选项取消
Type 选项:
1. executable program 常用选项
2. Include program不可以单独运行,将定义的属性写到Include program然后插入到程序中
Status 选项:
通常选择 customer production program (用户程序) 或者 test program(测试程序)
然后将程序放到相应的包下
新建一个请求号
保存或者激活
激活程序包括保存并且其他用户也可以看到程序.
定义20个字符的变量 初值如果是40 会出错吗?
数据字典
1. 单个数据
2. 结构体
3. 嵌套结构体
4. 表
5. 嵌套表
数据要先在数据字典中定义,然后再存入数据库
Domain
Domain 是一个范围
为防止直接对数据库进行操作而引入内表的概念.
创建表
1.创建字典对象
2.创建数据库表
3.以Z开头对表命名
4.输入相应的描述
5.选项卡delivery and maintenance中的 delivery class选项 选择 C(用户表) Data browser选项中选择 display/maintenace(允许维护)
6.保存在包下
7,request 号
8,field选项卡
9,data type 修改需要 点predefined type
10,建立data element 并且激活 创建DOMAIN 或者选择类型
11.创建domain 并且激活
12.domain中的Fix.val 决定data elements 范围
左上角 enter 数据自动现实
在使用数量类型而没有给出单位时,会出现错误
数量字段QUAN 要引用单位字段 UNIT
货币字段CURR 要引用单位字段CUKY
Technical settings 选项
Data class 选项 user
Size category 存储多少数据
*mm 模块 以及pp 模块 需要用到的表 EKKO(公共信息—编号,日期) EKPO(公共信息 明细信息 ---编号,日期,明细编号)
SE11 打开有结构 或是有内容的对象
SE16 只打开有内容的对象
SE11 功能 可以 查看,创建,修改 domain
快速粘贴功能 (右上的彩电按钮)quick cut and paste
创建结构
- 在包下创建 structure
- 在component type 中加入 data element
在表的字段中插入结构 在字段中插入 .include Data Element 中插入 结构名
Type group 跨包 (所有人都能用)
1. 建立TYPE GROUP
2. 根据data elements 建立相应类型
3. 激活
4. 在程序中使用type group 需要在程序中加入type-pools [TPname]
5. 建立type group 的名字为 ztzsy
6. 在type group 中所有变量名 都要在前面加上 type group 的名字 例如:za01_abc 定义的类型 要根据data element 定义
TYPE-POOL ztzsy .
TYPES ztzsy_sex TYPE ztzsyesex.(data element)
Parameter p type ztzsy_sex value check.
WRITE P.
如果za01_abc 参照的 date element 中的domain拥有 fix value 使用此语句可以提示输入正确数据.
改变输出的信息 P
Goto-----text-elements---texts-symbols
Append增强
一个结构只能 append 到一个表中~ 而不能append 到多个表中
一个表可以append 多个结构
视图 view (不推荐 速度太慢)
- 多数用 database view
- table 中输入表名
维护表
制作维护的界面
1. function group
2. 进入维护界面 U – T M G
3. A G 和 F G
4. 系统建议屏幕号左上角
维护 tcode --Sm30
显示出的字段 有时会出现”+”
“+” 代表 没有data element 有值的代表有data element
Data element 是自己的还是系统的?
维护界面是干什么用的?
可以直接创建维护界面
外键约束
外键表 check 表
Sirch help(了解)
- 先做一个sirch help
- selection method 中填写表
types myp(3) type p decimals 2.
Myp一共是几位
Debug
在程序 运行后 输入 /h 进入debug
单步执行
查看输入 直接双击
设置断点 点第三个 直接跳到断点
函数一般用第二个
如果是没有屏幕的断点
先选择断点 然后运行
定义结构
Data: begin of wa,
AA type I,
BB(2) type C,
End of wa.
内表是虚拟的表
拥有三种方式
1. standard table
2. sorted table
3. hashed table
Read table itab into wa with key (条件)
With key 相当于 where ??
Z_BOBO Z_try5