abap--全局类信息读取的过程分析
来源:互联网 发布:魔爪淘宝 编辑:程序博客网 时间:2024/05/22 17:35
一、读取该类的所有信息
call function 'SEO_CLASS_TYPEINFO_GET'
* - get attributes
call function 'SEO_ATTRIBUTE_READ_ALL'
* get all attribute originals from db(seocompo/seoo_cmptype_attribute)
* fetch attribute definitions(seocompodf)
* fetch texts(seocompotx)
* care of attributes without description in modification language
* if not found logon language,return DE language
*extract aliases from attributes
*-Get Method
call function 'SEO_METHOD_READ_ALL'
* get all method originals from db(seocompo/seoo_cmptype_method)
* fetch method definitions(seocompodf)
* fetch texts(seocompotx)
* care of method without description in modification language
* if not found logon language,return DE language
*extract aliases from methods
*- Get Events
call function 'SEO_EVENT_READ_ALL'
* get all attribute originals from db(seocompo/seoo_cmptype_event)
* fetch event definitions(seocompodf)
* fetch texts(seocompotx)
* care of event without description in modification language
* if not found logon language,return DE language
*extract aliases from event
*- Get Events
call function 'SEO_EVENT_READ_ALL'
* get all attribute originals from db(seocompo/seoo_cmptype_event)
* fetch event definitions(seocompodf)
* fetch texts(seocompotx)
* care of event without description in modification language
* if not found logon language,return DE language
*extract aliases from event
=================================================
*- Get event and method's subcomponents
=================================================
*- Get Types
call function 'SEO_TYPE_READ_ALL'
* get all type originals from db(seocompo/seoo_cmptype_type)
* fetch type definitions(seocompodf)
* fetch texts(seocompotx)
* care of event without description in modification language
* if not found logon language,return DE language
*- Get parent class
call function 'SEO_INHERITANC_READ'
* get inheritance(iseometarel/seor_reltype_inheritance)
* fetch redefinitions(seoredef)
*- Get interface implementations
call function 'SEO_IMPLEMENTG_READ_ALL'
* get implementings(iseometarel/seor_reltype_implementing)
* fetch implementing detail(seoredef)
*- Get typegroup usages
call function 'SEO_TYPEPUSAGE_READ_ALL'
* get typegroup usages(seotypepls/seot_tputype_typepusage 0)
*- Get class deferreds
call function 'SEO_CLSDEFERRD_READ_ALL'
* get implementings(seotypepls/seot_tputype_classdeferred 1)
*- Get interface deferreds
call function 'SEO_INTDEFERRD_READ_ALL'
* get implementings(seotypepls/seot_tputype_interfacedeferred 2)
=================================================
* explore inheritance if requested
'SEO_CLASS_TYPEINFO_GET'
* explore interfaces if requested
call function 'SEO_INTERFACE_TYPEINFO_GET'
=================================================
二、读取该类的所有父类(abap是单类继承)的信息,并添加到相关数据内表
call method explore_relations
*Get Superclass and all implement interfaces's attribute(attribute,Method,event,types,implement.alias....)
* inherited components
call function 'SEO_CLASS_RESOLVE_INHERITANCE'
call function 'SEO_CLASS_INHERITANCE_PATH_GET'
loop
×取父类的所有信息
call function 'SEO_CLASS_TYPEINFO_GET'
×删除私有不可见的属性
delete atts where exposure = seoc_exposure_private.
delete mets where exposure = seoc_exposure_private.
delete mets where cmpname = seok_mtdname_constructor.
delete mets where cmpname = seok_mtdname_class_constructor.
delete mets where cmpname = seok_mtdname_destructor.
delete eves where exposure = seoc_exposure_private.
delete typs where exposure = seoc_exposure_private.
delete alis where exposure = seoc_exposure_private.
×将可见的属性添加合并到类信息内表
insert lines of:
atts into attributes index 1,
mets into methods index 1,
eves into events index 1,
typs into types index 1,
imps into implementings index 1,
alis into aliases index 1.
endloop.
三、读取该类所有实现类的信息,并添加到相关数据内表
* implemented interfaces
call function 'SEO_CLASS_RESOLVE_IMPLEMENTGS'
×取所有的实现接口
call function 'SEO_CLASS_TYPEINFO_GET'
exporting
clskey = clskey
version = version
state = state
importing
implementings = implems.
×循环提取所有的实现接口的信息
loop implems.
call function 'SEO_INTERFACE_TYPEINFO_GET'
×将可见的属性添加合并到类信息内表
insert lines of:
atts into attributes index 1,
mets into methods index 1,
eves into events index 1,
alis into aliases index 1,
pars into parameters index 1,
excs into exceps index 1.
endloop.
相关函数和数据表信息参见:http://blog.csdn.net/CompassButton/archive/2007/12/07/1922844.aspx
Trackback: http://tb.blog.csdn.net/TrackBack.aspx?PostId=1924043
- abap--全局类信息读取的过程分析
- abap--全局类信息读取的过程分析
- ABAP--关于存储全局abap类的信息数据表
- ABAP--关于存储全局abap类的信息数据表
- ABAP--如何读取地址信息
- ABAP--如何读取地址信息
- ABAP-读取应用服务器目录信息的函数代码摘抄
- ABAP-读取应用服务器目录信息的函数代码摘抄
- 全局局部new_delete_malloc_free的调用过程分析
- 读取信息分析
- linux文件的读取过程分析
- 【abap】abap读取透明表的读取速度问题BSEG
- 关于JavaScript从CSS读取样式信息的一些过程
- 读取串口过来的GPS信息并分析其中内容
- iOS 关于图片地理位置隐私信息的分析和读取
- 全局class和interface和特殊的ABAP OO技术
- abap 读取文件的Function Model
- 关于abap中长文本的读取
- 最好的测试工具
- 测试的革命
- 测试方法的辩证统一 (1)
- abap--关于在REUSE_ALV_GRID_DISPLAY将单元或行标识不同的颜色的处理收集
- abap--select screen运行跟踪纪录供大家参考
- abap--全局类信息读取的过程分析
- ABAP--关于存储全局abap类的信息数据表
- abap--REUSE_ALV_GRID_DISPLAY事件子过程和cl_gui_grid类的事件对应关系
- ABAP--如何使选择屏幕的初始化事件再次触发
- sd--salea process in sd
- SD--Enterprise Structure Configuration
- MM--A List of Tables and Tcodes about MM
- abap--如何获取sap标准表的相关的锁(lock)
- abap--关于集(set)的读取(如读取成本中心组下的所有成本中心)