通过RTTS获取数据库表键

2020-09-22 13:41发布

点击此处---> 群内免费提供SAP练习系统(在群公告中)加入QQ群:457200227(SAP S4 HANA技术交流) 群内免费提供SAP练习系统(在群公告中)嗨, 我无法...

         点击此处--->   EasySAP.com群内免费提供SAP练习系统(在群公告中)

加入QQ群:457200227(SAP S4 HANA技术交流) 群内免费提供SAP练习系统(在群公告中)


嗨,

我无法通过RTTS技术获得表键。 我使用以下代码:

 DATA:the_table TYPE REF TO数据。
     创建数据the_table TYPE TABLE OF('MARA')。
     数据类型说明TYPE REF到cl_abap_tabledescr。
     类型说明?= cl_abap_tabledescr => describe_by_data_ref(the_table)。
     数据键类型为abap_table_keydescr_tab。
     键= typedescription-> get_keys()。

它总是返回完整列表字段,不仅是我不想要的主键。

我还尝试了从静态内部表中检测键,但是得到了相同的结果。

数据:itab像mara的OCCURS 0,带有标题行,
       lt_tabdescr类型TYPE abap_keydescr_tab,
       ref_table_descr类型参考cl_abap_tabledescr。

 ref_table_descr?= cl_abap_typedescr => describe_by_data(itab [])。
 lt_tabdescr [] = ref_table_descr-> key []。

通过 describe_by_name()检测关键字段也不起作用。

有什么建议吗? 系统版本为SAP ECC 7.40 SP09