SAP副本传输--一个不需要释放传输请求的请求传输方式

本文介绍了SAP系统中如何利用副本传输功能实现不释放主请求即可传输更改的配置或程序到不同服务器的目标系统,有效避免了多次释放TR带来的麻烦。


背景:

传输请求(Transport Request )或者叫更改请求(Change Request),是SAP修改生产机的后台配置及程序的方式。相对于其他系统,SAP这个方式能够非常方便的更改系统程序,帮助程序升级。很多系统如果要升级、打补丁等,都需要系统停机等,但SAP不需要。

SAP系统中,一般TR传输方式:在SLM系统(Solution Manager)中创建一个TR号,在配置开发系统中完成配置开发,可以在不释放TR的情况下,传输到同一服务器不同客户端的测试系统中。

然而,作为SAP顾问,大家很遇到这种情况:客户的测试系统环境都不一样,往往存在一个所谓正式的测试机,经常和开发配置系统不在同一个服务器。那我们每做一次配置更改,或者程序调整,都需要释放TR,这样岂不是很麻烦?项目上线的时候,也容易因为TR太多,传输顺序容易混乱,导致一些不必要的麻烦。

那么,问题来了:能不能不释放TR,直接将更改的配置或程序,传输到不同服务器的系统上?

答案当然是肯定的。下来,我们就介绍副本传输功能。


一、副本传输的主要原理:


SAP副本传输的主要原理是:仅释放你传输请求的子请求,然后把你的这个子请求,包到另外一个主请求下。这个主请求,也就是我们所说的副本请求了。然后,我们把这个副本请求进行传输至目标系统。这样就在不释放主请求的情况下,把修改内容直接传输至这目标系统。就是副本传输的主要原理。


二、副本传输的操作方法:


1.      释放你所要传输请求的子请求

  • 在你的配置开发系统中,使用SE09打开你需要传输的请求。
  • 选中你需要传输请求的子请求,点击小车进行释放。如下图所示。


当你释放成功后,系统会有如下图提示,并在你的子请求后面打上一个对勾标记,如上图未选中的条目。



2.      创建传输副本:

  • 接下来,进入到SLM系统,使用事务码SCMA。
  • 在相应项目下,找到创建副本传输,右键“创建副本传输”->“执行”,如下图所示。


  • 点击执行后,系统会弹出一个显示TR列表清单的界面,如下图所示,在这里选中你自己要传输的主请求号,点击对勾。(此处要注意,系统会默认把所有没释放的主请求都选中,请注意取消,小心把别人的TR也做了副本传输)



3.      副本传输请求号的查看

当你完成副本创建时,系统会如下图,提示你副本已经创建成功。


此时双击上图中的“创建副本传输”这条记录。

系统会弹出如下图的界面,在红框的位置能够看到,你的新副本传输请求号。把这个号码交给你们Basis进行传输就好了。

~~~~~~~~~~~~~

才疏学浅,能力有限

如果看到文中有任何问题,还请大家留言,批评指正。

谢谢,愿大家的学习,轻松且愉快。

另外,后续将更多将内容更新至我的公众号,欢迎大家扫描关注。谢谢。



### 创建和处理 ABAP 传输副本请求 #### 使用标准功能创建副本请求SAP 系统中,为了确保项目的传输一致性以及减少工作量,通常会使用传输副本请求来管理同环境之间的对象同步。通过特定的事务码或自定义程序可以实现这一目的[^2]。 对于常规的需求来说,SAP 提供了一个简单的机制用于复制现有的传输请求Transport Request)。这可以通过 SE09 或 STMS 中的功能完成,在这里可以选择要拷贝的目标系统,并指定新请求的名字和其他属性。然而这种方式相对手动且够灵活。 #### 自动化脚本辅助创建 针对更复杂场景下的高效操作,则可能涉及到编写ABAP代码来自动生成这些副本请求一个典型的应用案例就是开发一段程序让用户输入源传输编号后自动为其建立新的实例并准备就绪待发送至其他环境如测试服务器等地方[^4]。 这种自动化过程仅限于单个任务号;实际上它还允许同时处理多条记录——即一次提交多个原版transport ID给函数模块,之后由后者负责打包成一个新的整体进行后续步骤比如发布、导入等工作流程[^3]。 ```abap DATA: lt_trkorr TYPE TABLE OF trkorr, ls_trkorr LIKE LINE OF lt_trkorr. SELECT-OPTIONS s_trkorr FOR trkorr-trkorr OBLIGATORY. CALL FUNCTION 'RS_TR_REQUEST_READ' EXPORTING client = sy-mandt * IMPORTING * RESULT_SET = TABLES result_set = lt_trkorr[] EXCEPTIONS OTHERS = 1. IF sy-subrc <> 0. " Handle error... ENDIF. LOOP AT lt_trkorr INTO ls_trkorr. CALL FUNCTION 'C_TRTI_COPY_TRANSPORT' EXPORTING source_client = sy-mandt target_client = 'TARGET_CLIENT' " Specify the target system's mandant here transport_number_src = ls_trkorr-trkorr new_transport_type = 'K' " K for customer transports, S for standard ones etc. IMPORTING transport_number_tgt = DATA(lv_new_req). ENDLOOP. ``` 上述代码片段展示了如何读取选定范围内的运输请求列表,并逐一调用 `C_TRTI_COPY_TRANSPORT` 函数模块为每一个原始请求创建对应的副本来简化跨系统的部署作业。
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值