获取一个字段中相同的数据

时间:2012-08-14 06:45:37

标签: colors sap abap

我想从内部表格中获取动态数据。

例如,内部表有两个字段:数字 - 名称

它充满了像:

这样的信息

enter image description here

如何才能获得相同的数据?我想获得数据的数据。我想给相同的数字着色。我的意思是keyid的1,2,6是红色的,3和4是蓝色的,5是黄色的。由于内部表是动态的,我不能确定总有1个数字。

1 个答案:

答案 0 :(得分:1)

我假设你的意思是你不知道你的动态表是否总是有你正在寻找的列。

使用运行时类型服务(RTTS)确定动态表的结构。以下数据将确定您的结构是否有一个名为“NUMBER”的字段。您可以使用表lt_component来检查需要阅读的组件(ASSIGN COMPONENT number OF STRUCTURE <fs_line> TO <fs_field>)。

DATA:
    lr_tabledescr TYPE REF TO cl_abap_tabledescr,
    lr_datadescr  TYPE REF TO cl_abap_datadescr,
    lr_structdescr  TYPE REF TO cl_abap_structdescr,
    lr_typedescr    TYPE REF TO cl_abap_typedescr,
    lt_component    TYPE TABLE OF abap_componentdescr.

DATA tab TYPE TABLE OF sflight.

lr_tabledescr ?= cl_abap_datadescr=>describe_by_data( tab ).
lr_typedescr ?= lr_tabledescr->get_table_line_type( ).
lr_structdescr ?= lr_typedescr.
lt_component = lr_structdescr->get_components( ).


READ TABLE lt_component WITH KEY name = 'NUMBER'.