# ABAP基础知识 传输请求(二 管理)
原创 无峰 [ ABAP 技巧与实战 ](javascript:void\(0\);)
__ _ _ _ _
**点击蓝字** 关注我们
一
前言
传输请求是ABAP开发的一个很重要的工具,主要负责把开发的对象或配置的内容从源系统(开发系统)传输到目标系统(测试/生产系统).
按照传输请求的生命周期,把相应的功能分为以下几组
• **记录** (把开发的对象或配置的内容记录在特定的传输请求中)
• **管理** (管理传输请求中的相关内容)
• **传输** (把传输请求中记录的内容传递到目标系统)
**本文主要介绍传输请求管理的相关功能**
二
传输请求处理事务代码
SE01 传输组织者 (扩展的)
SE03 传输组织器工具
SE09 传输组织器
SE10 传输组织器
_**01** _
**SE03**
传输组织器工具,
传输组织器工具中系统给出了几组和传输请求相关的功能,通过选中节点, 查看文档,可以看看到SAP对该功能的详细描述.
这个工具集中的有些工具通过文档也无法看出用途. 暂时不做详细的介绍. 在介绍其它功能点时,涉及到的工具再单独说明
_**02** _
**SE10**
传输组织器
SE01/SE10/SE09 这三个事务代码最终进入的都是传输组织器. 不同的人可能习惯了不同的事务代码进入传输组织器. 后文统一使用SE10称呼传输组织器
传输组织器是管理传输请求的一个最主要的工具,涉及到传输请求的大部分管理功能都在这里实现.
三
传输请求管理功能介绍
传输请求管理相关的功能基本都在SE10中实现, 因为涉及到的内容比较多. 这里只能按照经验把一些基本的,有价值的功能说明一下.
大部分功能进入SE10稍加琢磨其实就能理解了.
四
传输请求与集团
大部分项目中在开发系统会创建三个集团(100 配置 200 开发 300 测试). 实际应用中,
100作为配置集团是很有必要的,因为集团属性需要设置配置集团相关的配置自动记录传输请求. 但是开发实在没有必要单独出一个集团. 只会制造一些麻烦,
不会添加任何好处. 所以建议开发系统使用两个集团(100 配置 300 开发/测试)
_**01** _
**设置集团选择**
SE10的初始界面 设置->更多的设置 ,可以设置SE10的集团选择标记
勾选 SE10将显示所有集团的传输请求
不勾选 SE10只显示当前集团的传输请求
_**02** _
**变更集团属性**
只有工作台请求才可以变更集团属性
SE10进入显示传输请求后, 双击一个其它集团的工作台请求,再点击修改按钮.
工作台请求在300集团中尝试修改200集团的传输请求时, 系统会提示自动把工作台请求调整到300.
五
传输请求与项目
当开发系统中同时有多个项目在开展的时候, 可以为传输请求分配一个项目.以便通过项目分组管理传输请求
_**01** _
**项目创建**
SPRO->转到->项目管理
点击创建,可以创建一个新的项目
_**02** _
**激活CTS功能**
_**03** _
**分配传输请求**
传输请求创建时可以分配给这个项目,也可以在SE10中随后分配项目 实用程序->重组->分配到项目
分配了项目的传输请求
_**04** _
**设置用户的默认项目**
表CTSCURPRJ中可以为用户设置一个默认项目,该默认项目的设置在SE10创建项目时不会自动分配, 但是在用户创建新的资源库对象时.
触发创建传输请求时会自动分配.
_**05** _
**项目中查看传输请求**
在项目中可以集中查看所有相关传输请求
项目也可以在SE10中通过特定节点查看
_**05** _
**STMS中看到的项目**
STMS是传输请求导入的事务代码, 进入导入界面后, 可以看到项目内容.
_**06** _
**项目名称与CTS项目名称**
项目中激活CTS后,系统会给项目生成一个特殊的传输请求号 S4D_P<NNNNN>. 后续传输请求中看到或使用这个编号.
<NNNNN>获取规则:最大号+1.
如果希望项目编号和对应的特殊请求编号一致, 可以使用该规则给项目编号.项目编号与特殊请求编号对应关系表 CTSPROJECT.
也可以考虑通过增强调整项目产生的特殊传输请求的命名规则,以达到二者一致,如果尝试把模块维护成项目,有含义的项目名称就比较重要了.
六
传输请求与任务
传输请求与任务存在主从管理.
一般可以由开发组长创建传输请求,把相应的开发人员添加进来(生成一个任务),构成主从关系. 后续由开发人员释放任务,组长释放请求.传输到目标系统.
一般项目前期建议使用这种方式统一管理一个项目的开发任务, 以便第一次庞杂的开发内容集中统一传输 ,避免因漏传导致相关资源库对象缺失.
后续琐碎的需要立即传输的开发则由开发人员自行创建传输请求.
七
传输请求描述命名
很多项目的命名规范中约定传输请求描述中需要写出日期和用户名
<模块>:<描述>:<日期>:<用户名>
其实个人觉得日期和用户名无需加入传输请求描述的命名规范中. 调整为
<模块>:<描述> 即可. 可以通过设置给SE10添加日期显示,用户名显示. STMS则通过双击条目显示SE10中的日期
通过SE10的设置功能可以显示用户及日期.
八
默认传输请求
每个对象新建或释放后第一次修改的时候,系统都会给出一个选择传输请求或者创建传输请求的弹窗(如图一). 系统会默认填上你最后一次使用的传输请求.
如果修改的对象已经存在于传输请求中, 系统不会出现图一的弹窗.
如果你不想每次都确认这个弹框, 可以通过设置标准请求来实现系统自动记录到默认传输请求,如图二.
还可以为这个默认传输请求设置一个有效期.在有效期内,系统都会自动把你新建或修改的对象写入这个标准传输请求.
设置标准请求的传输请求颜色会出现变化(如图三)
可以通过图二的重置功能取消标准请求
图一
图二
图三
九
锁定传输请求对象
一般情况下, 传输请求会锁住包含的资源库对象. 如果资源库对象被其它开发人员再次编辑, 会提示用户该对象已经存在于某个请求,
新的修改只能在这个请求下创建新的任务(如图四).
这是系统的一种保护机制, 确保同一个对象的修改只能放在一个请求中.
如果确实需要把程序放入多个请求.可以通过SE03->解锁对象(专家工具). 如图五
这个工具会解除传输请求/任务锁定资源库对象.
可以使用SE10->对象列表->锁对象 再次加锁(如图六)
图四
图五
图六
十
传输请求重组
把多个传输请求内容合并到一起. 最终只会保留一个传输请求(合并目标). 源传输请求中的任务和资源库对象会被并入目标传输请求. 如图七
一个特殊的合并是把定制请求并入一个工作台请求(目的是为了让一个包含开发和配置内容的程序可以同时传输到目标系统). 如图八
重新分配任务是把一个请求中的任务转移到另外一个请求中
图七
图八
十一
传输请求中删除对象
已经包含在传输请求或任务的资源库对象可以删除掉. 有以下三种方式可以删除对象.
_**01** _
**方式一**
选中对象删除
_**02** _
**方式二**
双击请求或任务,显示明细内容时,删除
_**03** _
**方式三**
直接从表E071中删除(SE16N或其它表处理工具).
如果要删除配置表的条目内容, 需要处理表 E071K
十二
传输请求保护
如果不希望别人在传输请求中添加新的任务, 可以设置传输请求保护.此时SE10中还是可以继续添加任务的,
只是其它开发人员无法在修改请求中锁定对象的时候自动添加任务.
传输请求保护后, 锁定的内容除了请求中已包含的人员, 其它人将无法编辑(因为锁定的请求其他人无法在里面添加新的任务)
十三
传输请求检查
可以通过这些工具在释放传输请求之前检查传输请求的内容是否存在问题.(释放的时候,系统也会执行这些检查动作).
十四
操作日志
SE10进入后-转到->操作日志
显示所有对该传输请求的操作记录.
十五
变更所有者
传输请求的有些操作会检查当前用户是否是任务或传输请求的所有者, 在碰到这些检查报错时, 可以通过变更所有者功能让你拥有这个任务或传输请求.
以便继续执行该操作
十六
传输请求清单显示
SE10进入后-转到->显示为列表
也可以用如下表关联显示传输请求内容
• E070 更改 & 运输系统: 请求/任务的抬头
• E070C CTS: 请求/任务的源/目标集团
• E071 更改 & 的传输系统: 请求/任务的对象条目
• E071K 更改 & 传输系统: 请求/任务的代码条目
• E07T 更改 & 传输系统: 请求/任务的短文本
十七
总结
上述传输请求的管理功能. 有些功能是经常使用的, 有些则是为了完整本文,突击琢磨理解的(这些功能使用概率较低, 比如分配项目).
基于认知的局限性, 肯定无法涵盖所有传输请求的所有功能.
从本文也可以看出, SAP系统中的传输请求相关的管理功能是相当完善的.
有些功能(比如标准请求,项目分配).在一些项目中也有实用价值. 可以更好的管理传输请求.
** THE **
** END **
**约定**
如果你对这篇文章感兴趣,请帮忙点赞,在看,分享.
( **如果你真的喜欢这篇文章,请记得回来打个赏,作为支持我继续下去的动力,这是一个正反馈过程.
越多的人打赏,作者越有动力分享,读者就能享受更多的福利.毕竟打赏的金额富不了我,穷不了你,却能支持这个公众号长久发文.** )
.textContent = new Date().getFullYear();