OData getEntity 方法仅获取第一个实体
OData getEntity method fetches only first entity
我有一个服务可以使用 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.
我不知道,为什么它只显示第一个实体。
您的关键字字段是 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.
我有一个服务可以使用 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.
我不知道,为什么它只显示第一个实体。
您的关键字字段是 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.