SELECT FROM @itab вызывает синтаксическую ошибку в SAP 752?
Я пытаюсь использовать
SELECT FROM @itab
как объяснено здесь: sap docs
Я никогда не использовал эту функцию, но думаю, что это здорово. Вы можете запросить внутреннюю структуру данных, которая просто существует в оперативной памяти интерпретатора, как если бы она была реальной таблицей в базе данных. Я впечатлен.
Вот код ABAP:
data: lt_get_auth_values TYPE STANDARD TABLE OF US335.
CALL FUNCTION 'GET_AUTH_VALUES'
EXPORTING
OBJECT1 = 'Z:FOO'
USER = sy-uname
TABLES
VALUES = lt_get_auth_values
.
IF SY-SUBRC <> 0.
MESSAGE |GET_AUTH_VALLUES() failed. Table: { IV_TABLE_NAME }| TYPE 'E'.
ENDIF.
SELECT highval from @lt_get_auth_values as mytab WHERE field = 'WERKS'
INTO TABLE @DATA(static_perm_filter_fields).
Я не могу активировать функцию, потому что "from @lt_get_auth_values" является синтаксической ошибкой в соответствии с моей системой.
Что не так с этой строкой?
Версия SAP: 740 (извините, сначала я подумал, что это 752)
1 ответ
Решение
SELECT ... FROM @itab появился в 7.52, поэтому он должен работать.
В моей системе 7.52 это работает, но вы должны указать псевдоним таблицы. В документации ABAP есть пример (см. Первую ссылку выше).