开发程序与事务 (★★★★)
#abap #abap-workbench
概览表
| Concept (概念) |
Key Point (要点) |
| 包 (Package) |
仓库对象的逻辑分组 |
| 程序类型 |
可执行程序(类型 1)、模块池等 |
| 事务 |
启动程序的入口点 |
| 激活 |
将非活动版本变为活动版本 |
| 传输 |
在系统之间移动对象 |
开发组织
1 2 3 4 5 6
| 包 (ZBC400_##) ├── 分配到应用组件(如 CA) ├── 分配到软件组件(如 HOME) └── 对象分配到变更请求 └── 任务(每个开发者一个) └── 开发者释放任务 → 项目经理释放请求
|
程序生命周期:活动与非活动
1 2 3 4 5
| 创建对象 → 保存(非活动版本存在) │ 激活 ──────────→ 语法检查 → 覆盖活动版本 → 生成运行时对象 (LOAD) │ └── F8(直接执行)→ 从非活动版本生成临时运行时对象
|
保存仅存储非活动版本。只有激活才能使更改在全系统范围内可见。传输请求中的所有对象在释放之前必须被激活。
创建事务
| Transaction Type (事务类型) |
Start Object (启动对象) |
Use Case (使用场景) |
| 报表事务 |
Program and Selection Screen |
可执行程序 |
| 对话事务 |
Program and Screen |
带屏幕的模块池 |
创建步骤:
- 程序的上下文菜单 → Create → Transaction
- 输入事务代码(客户命名空间:Y* 或 Z*)
- 选择事务类型和引用程序
- 设置 GUI 支持(SAP GUI for Windows)
- 保存并分配到包和变更请求
关键 ABAP 语法约定
| Convention (约定) |
Example (示例) |
| 链式语句 |
WRITE: 'Hello', name. |
| 注释 |
* 在行首或 " 行内注释 |
| 关键字文档 |
在语句上按 F1 或 i 按钮 |
传输流程
1 2 3 4
| 开发者创建/更改对象 → 分配到任务 → 释放任务 → 项目经理审核 → 释放变更请求 → 对象导出到传输目录 → 导入到目标系统 → 副本存储在版本数据库中
|
考试/测试模式
| Scenario/Keyword (场景/关键词) |
Answer (答案) |
| “更改何时在全系统范围内可见?” |
激活之后 |
| “传输何时触发?” |
请求被释放时 |
| “客户对象可以放在 SAP 包中吗?” |
不可以——必须放在客户包中 |
| “F8 运行的是哪个版本?” |
非活动版本(临时 LOAD) |
相关笔记