doc: SAP ADT 错误知识库(LLM WIKI格式) - set_source 500 + NW740 @转义一致性
This commit is contained in:
@@ -0,0 +1,60 @@
|
||||
---
|
||||
title: "ADT set_source 500 — 传输请求无对象导致写入失败"
|
||||
created: 2026-08-05
|
||||
updated: 2026-08-05
|
||||
type: error
|
||||
tags: [adt, sap, error, transport, nw740]
|
||||
adt_endpoint: /sap/bc/adt/programs/programs/<name>/source/main
|
||||
adt_method: PUT
|
||||
---
|
||||
|
||||
# ADT set_source 500: 传输请求无对象导致写入失败
|
||||
|
||||
## 症状
|
||||
|
||||
```
|
||||
✓ 锁定成功(传输请求: DEVK901326)
|
||||
✓ 解锁成功
|
||||
✗ set_source → HTTP 500 Server Error
|
||||
```
|
||||
|
||||
- Lock 返回成功
|
||||
- 写入源码时 500
|
||||
- `transport objects --corr_nr DEVK901326` 返回「传输请求中无对象」
|
||||
|
||||
## 根因
|
||||
|
||||
ADT 的 lock API 会创建锁句柄(返回 lockHandle),但**不一定将对象真正绑定到传输请求**。
|
||||
NW 7.40 系统上,对象写入前必须先通过 SE09/SE10 手动将对象(如 `R3TR PROG ZIDTR_AI_ASSISTANT`)加入传输请求任务列表。
|
||||
|
||||
Lock 成功 ≠ 传输绑定成功。
|
||||
|
||||
## 解决方案
|
||||
|
||||
1. **SE09 手动操作**:打开传输请求 DEVK901326 → 添加对象 `R3TR PROG <program_name>`
|
||||
2. 重新执行 `sync` 或 `upload + activate`
|
||||
|
||||
## 验证
|
||||
|
||||
```bash
|
||||
python main.py transport objects --corr_nr DEVK901326
|
||||
# 应显示包含目标对象
|
||||
```
|
||||
|
||||
## 代码示例
|
||||
|
||||
```
|
||||
# 错误流程(会 500)
|
||||
python main.py sync --name ZXXX --type report --path ./xxx.abap --corr_nr DEVK901326
|
||||
# → lock OK, write 500
|
||||
|
||||
# 正确流程
|
||||
# 1. SE09 → 手动添加 R3TR PROG ZXXX 到 DEVK901326
|
||||
# 2. 重新 sync
|
||||
python main.py sync --name ZXXX --type report --path ./xxx.abap --corr_nr DEVK901326
|
||||
# → lock OK, write OK, syntax-check OK, activate OK
|
||||
```
|
||||
|
||||
## 相关错误
|
||||
|
||||
- [[adt-nw740-open-sql-consistency]] — NW 7.40 @ 转义一致性错误
|
||||
Reference in New Issue
Block a user