SAP传输系统TMS
典型的传输过程:开发系统 =>测试系统 =>生产系统就是通过TMS实现的
下面以两个SAP个人学习系统:
(Host=192.168.111.123作为开发系统;Host=192.168.111.124作为测试系统)为例,在两个系统之间描述TMS配置过程
(注:此实例是以 SAP R/3 4.71版本来演示,ECC高版本配置没有成功)
新建TMS传输域
使用SAP*或DDIC用户,在开发系统中登录Client 000配置(注:STMS要在Client 000 配置):
在命令框中输入TC:STMS,并为传输域输入描述
查看刚创建的传输域:
使用DDIC或SAP*登录SAP测试系统(SA4)的000,使用事务码STMS,进入传输管理系统界面:
用DDIC或SAP*登录域控(开发机)环境,用STMS进入“传输管理系统”界面,通过“Overview”中的“Systems”选项进入,”System overview”界面,这时应该可以看到测试机也被包含到了传输域中,并且状态为未激活状态。通过点击激活图标,激活测试系统:
同样在目标系统中登录Client 000配置:
开发机批准后,去测试机查看,发现也激活了:
(注:如果还有生产系统,请照上面的步骤,将生产系统(PRD)也添加到传输域中。在“目标主机”中依然填入域控(TST开发机)的IP地址,“系统号码”中填入域控(TST开发机)的系统号)
设置TMS传输路径
接下来就可以在开发机TST中创建传输路径了:
并切换到层次模式:
再重新进入“传输路径”:
从传输路径列表可以看到,通过域配置生成了SA4、TST两个传输系统,传输层SAP为系统默认生成。
点击按钮,切换到编辑模式,在主菜单中执行“配置”|“标准配置”命令,这里只有两个系统之间进行数据传输,所以选择“开发和生产系统”(如果是三个系统:开发、测试、生产,则需要选择“三个系统一组”):
保存后,则可以看到列表中新增了传输路径:
从上图可以看到,生成了传输层 ZTST,并且生成了两条传输路径:TST—(ZTST)àSA4、TST—(SAP)àSA4,传输层起到了一个中间桥梁的角色,以后在开发中所有的开发出来的资源都需要挂到相应的传输层上,挂到相应的传输层就相当于指定了某条传输路径了,这样就可以最终确定传到哪里去了
系统提示是否激活设置,点击“是”按钮,传输路径的配置会被同时分发到TST和SA4两个系统中
切换到图型模式,查看传输路径:
进入测试机查看刚创建的传输路径:
通过STMS系统,可以将开发机上开发的程序与配置以传输请求的方式传送到测试系统中,有开发机有新的请求传入时,会在测试机SA4的Requests栏位显示请求的数量,双击该行即可以进入传输入请求列表:
SAP仓库对象及开发类(包)
SAP仓库存储所有SAP系统开发过程中的相关对象,这些对象也称作仓库对象,包括:ABAP程序、数据表结构定义、系统数据类型等
所有用户定制的仓库对象都是通过ABAP工作台进行开发并存储于SAP数据仓库中,这些仓库对象以可以按照不同的应用进行组织,这些具体的应用我称之为“开发类”Development Class,相当于Java中的包。
每个仓库对象都属于一个特定的开发类别,系统中包含许多开发类,用户也可以按需求自行创建。如MM模组某项目创建新的开发类ZMM,该项目下又开发多个ABAP程序及数据表,通过该开发类,可以轻松地查到项目各程序的信息及状况。
通过开发类还可以方便地实现其包含的程序及数据在不同服务器之间的批量传输
通过事务码SE84(Repository Information System,信息存储系统)可以方便地对SAP中所存储的信息对象进行查询
创建开发包
输入表维护工具SM30,再输入视图名V_TDEVC:
上面的Software Component选择Home为客户定制,传输层选择TMS系统中创建的传输层,即该包下的所开发的数据可在此传输层所在的传输系统之间进行传输。并为此包创建传输请求:
传输请求的前三位为开发机系统实例号,如:TST
将新建程序绑定到开发包
开发包创建后,就可以正式在程序中使用了,比如在创建ABAP程序时,就可以为他分配上面创建的包了:
传输请求的前三位为开发机系统实例号,如:TST
修改程序的Package
如需要将本地程序传输到其他系统前,需要分配包
TMS传输请求的传输
此节将上面开发系统中创建的ZJZJ_PKG以及ZJZJ_HELLO程序传输到测试机
传输请求的管理
传输组织器相关事务码:SE01、SE09、SE10,三个事务码功能类似,下面以SE01为例来讲解。
Display而是根据传输请求号来查找,而Transports页签则是通过创建请求的用户来查找。在Transports页签上点击Display按钮,就可以看到SAPECC用户所创建的传输请求:
将光标定位在某个传输号上,单击直接释放:需要注意的是,传输号释放的必须从子节点到上层节点逐一释放,如本例中传输号STK900002包含子请求号STK900003,首先选中STK900003这行,单击“直接释放“按钮,再对请求行STK900002一样处理即可。
至此,已经在开发机TST中建立了开发包与程序,并将产生的传输请求释放掉了。介目前请
求对象还没有被传输到测试机SA4中,还需要到测试机中进一步确认后才能导入。
测试机TMS请求查看
登录测试机:
如果没有发现TSTK900002传输请求号,则需要更新一下配置,如下:
所有的传输请求号在SAP中都是顺序排列的,传输的实质是数据文件的传递,所以每个请求号会代表一个指定格式的文件。在发送方系统中产生请求后,会生成一个实质的文件,需要在接收方通过TMS确认是否接收该文件,接收完成再解析这个包,将相关程序及配置数据导入到接收系统中:
传输请求的导入
传输请求列表前面的图标代表该请求还待确认调整。单击此按钮可以一次性进行调整,所有请求文件将被暂存入接收系统。调整完后,此图标将会消失。
先使用按钮选中要导入的请求行,再点击按钮,可以将该行请求的对象(程序、PKG)导入,此时会输出以下输入界面:
上面的“目标客户系统”一般不用填,它代表对象将传到哪个Client。因为本次传输的为PKG与程序对象都是跨Client的(还有表、结构等也是跨Client的),所以上面的“目标客户系统”不填。但是,对于某些定制的数据,如用户权限、IMG配置等,每次都只能传到单一的Client,那时则需要指定“目标客户系统”。
执行完后需要手式刷新列表,其传输成功,则状态列表为绝色或黄色指示灯标识:
传输完成后,登录800Client验证一下:
通过验证,发现开发机TST上创建的ZJZJ_PKG与程序ZJZJ_HELLO都成功传递到了测试机SA4系统中了,到此,TMS传输测试成功结束
传输请求在系统内部的传输SCC1
比如Script Form就需要使用SCC1进行Client到Client的拷贝才能看到
将一个RuestInclude 到另一Ruest中
双击Request,并切换到编辑模式,然后再选择“请求/任务|对象列表|包含对象”:
将上面
结果就是将另一Reuqest Include进来了,这样就可以一起进行传输了: