CMOD

Posted springzt

tags:

篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了CMOD相关的知识,希望对你有一定的参考价值。

大致一看,界面基本一样,查看“对象组件”这个,comd多了“增强分配”这个项目,由此可见comd管理方面更规范。

cmod首先进入的是项目的编辑界面,要么创建一个新项目,要么修改原有的项目,然后将项目分配给增强文件rsap0001和激活出口函数以后,才能通过出口函数进入到function module界面进行abap代码编辑,而smod直接进入的就是增强文件rsap0001的输入界面,无需再次进行项目编辑,然后点进去以后可以双击相应的出口函数,直接进入到function module界面进行abap代码编辑,完成功能增强的操作。

 

二、权限不一样

smod的权限很大,通常情况下在项目上我们只有cmod的权限,而没有smod的权限,虽然smod和cmod都可以调用增强文件rsap0001,最终也都可以实现功能增强的操作,但是smod是对所有的出口函数的操作,而cmod只可以为部分特定的出口函数做一个项目,也就是说在一个建立好的项目中所用到的出口函数就不能再被另外一个项目用了,比如我再建立一个新项目,用到rsap0001的时候,就会提示一行德文,它的意思是已经被某某项目用掉了

一个bw系统的用户出口是定死的,rsap0001对应的就是数据源增强,rsr00001对应的就是变量增强,被用户分配到某个project以后,就不能再被其他project使用了

 

三、注意事项

ABAP程序员或者BI开发顾问,一般都会用到系统增强的CMOD,对于CMOD的增强使用有以下几点需要注意:

1.  CMOD与SMOD的区别:

CMOD用于字段增强,ABAP,BW都会用到。SMOD主要用于ABAP中的增强出口程序,BW中一般用不到

2.  CMOD中组件项目对应的增强内容:

EXIT_SAPLRSAP_001:交易数据信息增强出口

EXIT_SAPLRSAP_002:主数据信息增强出口

EXIT_SAPLRSAP_003:主数据中的文本信息的增强出口

EXIT_SAPLRSAP_004:hiberarchy信息增强出口

注意:在BI7.0,EXIT_SAPLRSAP_003,作为过时的出口,已经不在用了,文本可用于EXIT_SAPLRSAP_002。

3.完成增强程序后,绿色标记的为已激活的增强

 

四、管理方法上

SMOD是具体查找要在何处写入增强,找到相应的地方,就可放入CMOD下创建的工程进行管理。

之所以叫SAP增强是因为这里的每个加强都是经过SAP深思熟虑后才提供出来的用户开发接口,我们只

能拿来用,不能在此增加新的ENHANCEMENT;也可以说是SAP预留的enhancement的集合

CMOD是一种工程管理方法,例如一个项目有多个EXITS可组织成一个工程,便于传输便于激活管理。

是用户利用SAP提供的各个增强加上自己的处理程序(写在SAP指定的程序块)打包放在某个项目中以便日后的管理;也可以说是我们user去实现这些enhancement并以project的形式进行管理的

 

举一个例子:
MIGO这个transaction code的program(SAPLMIGO)中以call customer-function进行检索会有一个如001的出现,

它代表着该MIGO所要使用的一个FM EXIT,它的名称就是exit_saplmigo_001.

这时,得到了该FM exit。通过SMOD,检索component,可以得到它的enhancement名为MBCF0006。

ok,得到了该enhancement名,去CMOD中创建一个project,并assign该enhancement,

并对其component(也就是exit_saplmigo_001)按您需求进行实现。当然最后要激活。

 

技术分享图片

技术分享图片

技术分享图片

技术分享图片

技术分享图片

 


以上是关于CMOD的主要内容,如果未能解决你的问题,请参考以下文章

zookeeper集群中增加机器需要重启吗

apache 监控

SAPTCODE表

20170329 隐士增强问题

SAP记录用户登录信息

SAP 第四代增强-BTE