码迷,mamicode.com
首页 > 其他好文 > 详细

ABAP运行时类型服务 Runtime Type Services (RTTS)

时间:2017-06-18 12:07:59      阅读:178      评论:0      收藏:0      [点我收藏+]

标签:ini   tps   _id   rac   nbsp   -name   sbo   htm   mask   

 

RTTS (RunTime Type Services)允许获得变量的定义,或者在程序运行期间创建它们。RTTS由2个组件组成:

  • RTTI(RunTime Type Identification)用于获取已存在类型或已存在变量的定义。
  • RTTC(RunTime Type Creation)用于使用定义创建新的变量;需要创建的变量必须通过ABAP语句CREATE DATA ... TYPE HANDLE创建。

RTTI和RTTC可以通过使用类CL_ABAP_*DESCR中的方法访问。每个类都有RTTI和RTTC方法。(下面的表格效果太差,建议直接看英文原文

Class

RTTI methods

RTTC methods  

Attirbutes

Comments

 

CL_ABAP_TYPEDESCR
  |
  |
  |
  |
  |

 

describe_by_data
describe_by_data_ref
describe_by_object_ref
describe_by_name

absolute_name
type_kind
length
decimals
kind

describe_by_name 可以获得DDIC对象的定义.
kind代表通用类型(元素,结构,表,引用,类,接口),而type_kind代表详细类型(character, string, flat structure, 等)

 

  |??CL_ABAP_DATADESCR
  |   |
  |   |
  |   |
  |   |
  |   |

 

 

is_instantiatable
is_read_only
applies_to_data
applies_to_data_ref
get_data_type_kind

 

 

  |   |??CL_ABAP_ELEMDESCR
  |   |
  |   |
  |   |
  |   |
  |   |
  |   |
  |   |
  |   |
  |   |
  |   |
  |   |

 

get_n
get_c
get_string
get_xstring
get_i
get_f
get_d
get_t
get_x
get_p

edit_mask
help_id
output_length

 

 

  |   |??CL_ABAP_REFDESCR
  |   |
  |   |
  |   |

get_referenced_type
get_ref_to_data
get_ref_to_object

create

 

对应"type ref to data"的变量,和"type ref to object"的对象

 

  |   |??CL_ABAP_COMPLEXDESCR

 

 

 

 

  |       |??CL_ABAP_STRUCTDESCR
  |       |
  |       |
  |       |

get_components

create

struct_kind
components
has_include

 

 

  |       |??CL_ABAP_TABLEDESCR
  |
  |
  |
  |
  |

get_table_line_type

create

key
initial_size
key_defkind
has_unique_key
table_kind

 

 

  |??CL_ABAP_OBJECTDESCR
      |
      |
      |
      |
      |

 

 

interfaces
types
attributes
methods
events

 

 

      |??CL_ABAP_CLASSDESCR
      |
      |
      |
      |

get_super_class_type
get_friend_types
get_class_name
is_shared_memory_enabled

 

class_kind
create_visibility

 

 

      |??CL_ABAP_INTFDESCR

get_interface_type
get_type
get_attribute_type
get_method_parameter_type
get_event_parameter_type

 

intf_kind

 

SAP Training : ABAP351

 

原文标题:Runtime Type Services (RTTS)

本文链接:http://www.cnblogs.com/hhelibeb/p/7043550.html

参考文章:动态编程

 

ABAP运行时类型服务 Runtime Type Services (RTTS)

标签:ini   tps   _id   rac   nbsp   -name   sbo   htm   mask   

原文地址:http://www.cnblogs.com/hhelibeb/p/7043550.html

(0)
(0)
   
举报
评论 一句话评论(0
登录后才能评论!
© 2014 mamicode.com 版权所有  联系我们:gaon5@hotmail.com
迷上了代码!