feat(v2.4.0): 开发铁律——DDIC 先行(依赖顺序+实测判定) + 强制闭环(本地改→同步→语法检查→循环至0错→激活→测试);补 2026-09-10 S4T 事故问题总结与自检清单
This commit is contained in:
@@ -92,6 +92,32 @@ python main.py show-table --name ZSAPILOT_OBJ
|
||||
python main.py read-table --name ZSAPILOT_OBJ --max-rows 50
|
||||
```
|
||||
|
||||
## 🚫 规则 7:DDIC 未完成禁止开发引用它的代码(依赖顺序)
|
||||
|
||||
代码引用的每个 DDIC 对象(域/数据元素/表/结构/表类型)必须先完成「上传 → 语法检查通过 → 激活成功」三关,才能开始写引用它的代码。
|
||||
|
||||
- 落地顺序:`domain → dataelement → table/structure → tabletype → interface → class → function → report`
|
||||
- 是否完成**以实测为准**:结构查 `DD02L`(`AS4LOCAL = 'A'`)、表类型查 `DD40L`、其余查 `info` / `TADIR`;**不采信会话自述**
|
||||
- 违反后果:后续每个引用对象语法检查报「类型/结构 XXX 未知」,整批返工
|
||||
|
||||
## 🚫 规则 8:强制开发闭环(不得跳步)
|
||||
|
||||
```
|
||||
1. 本地编写/修改源码 → 2. 同步 SAP(upload/sync) → 3. 语法检查(syntax-check)
|
||||
↑ │
|
||||
└──────────────── 有错则回到第 1 步 ←───────────────────┘
|
||||
4. 语法检查 0 错误 → 激活(activate) → 5. 激活成功后才允许执行测试(run-program/unit-test)
|
||||
└── 测试不过 → 回到第 1 步
|
||||
```
|
||||
|
||||
禁止:
|
||||
|
||||
- ❌ 跳过语法检查直接 activate
|
||||
- ❌ 未激活就 run-program / unit-test(跑旧版本或报对象不存在)
|
||||
- ❌ 把「语法检查通过」当「功能正常」—— syntax-check 不校验被调对象存在性与签名(见 `abap-coding-rules.md` E04/E05)
|
||||
- ❌ 把「S4T 演示机通过」表述为「CEM/生产验证通过」
|
||||
- ❌ 多会话并发操作同一批对象(派下一会话前先确认前一个已退出)
|
||||
|
||||
## 自检清单
|
||||
|
||||
每次执行 SAP 操作前,确认:
|
||||
@@ -101,3 +127,7 @@ python main.py read-table --name ZSAPILOT_OBJ --max-rows 50
|
||||
3. ✅ 我操作的是 Z* 开头的自定义对象吗?
|
||||
4. ✅ 我没有 INSERT/UPDATE/DELETE 系统表吗?
|
||||
5. ✅ sync 命令带了 `--corr_nr` 吗?
|
||||
6. ✅ 我引用的 DDIC 对象都已激活(实测确认)了吗?
|
||||
7. ✅ 我按「本地改 → 同步 → 语法检查 → 循环至 0 错误 → 激活 → 测试」执行了吗?
|
||||
8. ✅ 我核实过被调函数/结构的存在性与签名了吗(E04/E05)?
|
||||
9. ✅ 同一任务只有一个开发者会话在跑吗?
|
||||
|
||||
Reference in New Issue
Block a user