1

我有一个工作getEntitySet方法的服务。输出如下所示:

列集

但是当我尝试用/ColumnSet(1)我的输出只获取一个实体时,只获取第一个实体ColumnSet(0)

method COLUMNSET_GET_ENTITY.

 data: ls_key_tab type /iwbep/s_mgw_name_value_pair,
      lv_columnid type string,
      ls_column type zst_column.

 loop at it_key_tab into ls_key_tab.
  if ls_key_tab-name = 'COLUMNID'.
    lv_columnid = ls_key_tab-value.
    endif.
    endloop.

 select single * from zst_column into ls_column where id_num = lv_columnid.


   er_entity-id_num = ls_column-id_num.
   er_entity-id = ls_column-id.
   er_entity-posi = ls_column-posi.
   er_entity-data_id = ls_column-data_id.
   er_entity-headertext = ls_column-headertext.
   er_entity-ui_element_typ = ls_column-ui_element_typ.
   er_entity-enable = ls_column-enable.
   er_entity-enable_ref = ls_column-enable_ref.

   endmethod.

我不知道,为什么它只显示第一个实体。

4

1 回答 1

2

您的关键字段是 IDNUM,而不是 COLUMNID。

 loop at it_key_tab into ls_key_tab.
  if ls_key_tab-name = 'IdNum'.
    lv_columnid = ls_key_tab-value.
  endif.
 endloop.
于 2018-04-20T13:55:20.863 回答