1-包与变更传输系统(CTS)
2019-01-18 本文已影响0人
扇动蝴蝶的翅膀
- ERP(Enterprise Resource Planning):企业资源计划系统,是一种系统化的管理思想,是以信息技术为基础,为企业决策层及员工提供决策运行手段的管理平台
前言
- SAP:System Application and Products in Data Processing,是一套ERP系统。SAP一词来源于在服务器上处理所有事件的主机环境。
- ABAP:Advanced Business Application Programming。之所以使用单词Advanced(高级),是因为ABAP语言不仅能从数据库中取出简单数据,而且首次实现了程序和数据库逻辑清晰结合的上层数据库结构(LDB:Logical Database)。ABAP语言主要用于开发符合项目及运维人员要求的CBO程序。
- R/1系统:以财务会计为主的RF系统。
- R/2:是二层结构,这两层结构分别是终端和系统(应用层+数据库层)。
-
R/3“是三层结构,会话层,应用层,数据库层。(R/2和R/3不仅是版本上的升级,同时体系结构也从二层变为三层)
SAP GUI
T-CODE
包
- 在ABAP中,每一个开发对象(程序和类等)都要隶属于一个包,包一般隶属于某一个模块,作用是对开发对象进行归类,便于归类,除此之外,每一个包还拥有一个CTS号,CTS号用于在系统间传输程序。系统间传输程序时是以CTS号作为基本单位进行传递的。
- 包也称做开发类,是为了将程序等对象根据功能划分,进行区分和管理。当创建ABAP数据字典的R/3存储对象时,一定要把这些对象添加到包里进行管理。
- 包具有以下功能:
- 对象(程序等)的结构化(Structure)。
- 对象功能模块化(Encapsulate,Modularize)
- 对象按照功能区分(Classify)
在实际业务中,为了根据模块区分程序,用开发类分组进行管理。
- 在包中最重要的2项为传输层(Transport Layout)和分配软件组件(Software Component)。
软件组件
-
软件组件是将包集中在一起成套进行管理的上级组织软件组件根据版本进行管理并且也被应用于SAP升级和补丁(通过事物码SXMB_IFR创建)。
软件组件的种类
创建包的步骤见《SAP+ABAP开发从入门到精通》P7
- 在T_CODE:SE21或SPACKAGE中输入包名,点击创建
包的名字由Y、Z开头并由30位以内的字符组成
A~ S、X~U是SAP系统本身使用的字母
T:私有测试类(Private Test Class)
$:本地类(Local Class) - 指定包的属性
- 设定包的详细属性。指定包中允许包含的对象类型。
- Use access。若要使用其他数据元素,则要设定Use access选项卡。在包里创建接口,然后把对象加入到接口里,这样就可以通过Use access选项卡把此包加入到其他包中。
- Package Interface。可以将包对象(程序,数据库表等)放在包接口里进行分组管理
-
Package included,追加子包。
包的属性 - 传输管理系统(Transport Management System)提供了可以在不同系统分别管理开发和测试系统的环境。开发系统的包可以构成一个传输层(Transport Layout)组。
变更传输系统
-
CTS是将开发系统的变更事项传递给运营系统时或者设置用户自定义时使用的工具。SAP服务器一般由下面图中的三个独立的系统构成。
CTS传递步骤 - DEV系统是通过ABAP工作区生成/变更程序及进行单元测试的开发系统
- QAS系统是传递给运营系统之前进行最终结合测试的测试系统
- PRD系统是用户正常使用的运营系统,也称做正式系统
- CTS管理Repository(程序、表等)的版本还可以当做结构管理工具来使用。CTS号代表程序代码版本,下面是代码版本管理的步骤P10
传输组织
-
传输组织是集合管理ABAP工作区与用户自定义请求的程序(Customizing Request)。SAP开发系统中有配置用户主数据的客户端500、工作区客户端600。
传输组织 - 工作区请求(Workbench Request)
- 独立于客户端属性的对象
- ABAP Repository对象(程序、表、函数等)
- Cross-specific Table的系统变更事项
- 用户自定请求(Customizing Request)
- 依赖于客户端属性的对象
- Client-specific Table的系统变更信息
-
应用程序的数据库表数据(IMG也起到修改数据库表数据的作用)
IMG
- 可以利用T-CODE:SCC4设置客户端且只允许拥有S_CTS_ADMIN权限的BC进行修改(除此之外严禁使用)
创建变更请求号
- CTS提供一个能把系统的变更内容反映到其他客户端或者系统的机制。在实际业务中变更请求号(Request No)与CTS号视为一种。
- CR(变更请求)可以将变更内容从一个客户端传递给另一个客户端
- CR(变更请求)可以将变更内容从一个系统传递给另外一个系统。
- 向运营系统传递变更号时最好利用中午休息时间或者傍晚(即用户不使用系统的时候),以免影响系统的正常运作。这是因为传递成功会发生覆盖原有对象的情况,另外,当导入修改请求结束时,如果该对象正在使用,会发生结果不一致或发生预期外的事务终止现象。其中,最坏的情况是会终止运营系统,因此传递CTS号时要谨慎处理。
创建变更号见/释放变更请求号
-
《SAP+ABAP开发从入门到精通》P12、P14
注意
变更请求号属性
变更请求号的属性将一个包里的全部对象一次性传递给另一个包的方法 P16