GET_ENTITY 查询选择单个 table 行的 4 列

GET_ENTITY query for selecting 4 columns of a single table row

我正在为 oData 服务 EMPLOYEESET_GET_ENTITY(代码如下)编写 SELECT 查询,但我收到警告说:

The database field or the result type of the aggregate function NACHN and the component "PERNR" of "ER_ENTITY" are not compatible.

SELECT查询:

method EMPLOYEESET_GET_ENTITY.

    DATA: ls_keytab TYPE LINE OF /IWBEP/T_MGW_NAME_VALUE_PAIR,
          enteredPernr TYPE string.

    LOOP AT it_key_tab INTO ls_keytab.
      enteredPernr = ls_keytab-value.
    ENDLOOP.

    SELECT SINGLE pernr nachn vorna gbdat
      INTO er_entity
      FROM pa0002
      WHERE pernr = enteredPernr.

endmethod.

我基本上只是从 1 个名为 pa0002 的 table 中选择单行的 4 列。 PERNR 是关键,所以它应该不会真正干扰 NACHN。我已经检查了类型,所有这些属性都有 Edm.String 和 correspondig Max。长度。我的 SELECT 查询中所选列的顺序与我在创建实体类型 Employee 时指定的那些列的顺序相对应。

到底是什么问题?

使用INTO CORRESPONDING FIELDS OF er_entity如下。

method EMPLOYEESET_GET_ENTITY.

    DATA: ls_keytab TYPE LINE OF /IWBEP/T_MGW_NAME_VALUE_PAIR,
          enteredPernr TYPE string.

    LOOP AT it_key_tab INTO ls_keytab.
      enteredPernr = ls_keytab-value.
    ENDLOOP.

    SELECT SINGLE Pernr Nachn Vorna Gbdat
      INTO CORRESPONDING FIELDS OF er_entity
      FROM pa0002
      WHERE pernr = enteredPernr.

endmethod.