В ABAP «раскрывающийся список на экране выбора» относится к раскрывающемуся списку или полю выбора, которое используется для предоставления пользователю набора опций для выбора на экране выбора. Есть несколько способов добиться этого, и ниже я приведу несколько примеров:
-
Использование классического экрана выбора:
PARAMETERS p_dropdown TYPE spfli-cityfrom.
При этом создается параметр экрана выбора с именем «p_dropdown» типа «SPFLI-CITYFROM», который будет отображаться в виде раскрывающегося списка на экране выбора. Параметры в раскрывающемся списке будут заполнены значениями поля «SPFLI-CITYFROM».
-
Использование оператора экрана выбора:
SELECTION-SCREEN BEGIN OF BLOCK b1 WITH FRAME TITLE text-001. PARAMETERS: p_dropdown TYPE spfli-cityfrom. SELECTION-SCREEN END OF BLOCK b1.
Этот метод создает блок экрана выбора с именем «b1» с заголовком и помещает параметр раскрывающегося списка «p_dropdown» внутри блока. Параметры в раскрывающемся списке будут заполнены значениями поля «SPFLI-CITYFROM».
-
Использование раскрывающегося списка:
DATA: lt_dropdown TYPE TABLE OF spfli-cityfrom, ls_dropdown TYPE spfli-cityfrom. SELECT cityfrom INTO TABLE lt_dropdown FROM spfli. ls_dropdown-cityfrom = 'All'. " Add additional options if needed APPEND ls_dropdown TO lt_dropdown. PARAMETERS: p_dropdown TYPE spfli-cityfrom AS LISTBOX VISIBLE LENGTH 20 DEFAULT 'All' USER-COMMAND ucomm1. LOOP AT lt_dropdown INTO ls_dropdown. p_dropdown = ls_dropdown-cityfrom. MODIFY SCREEN. ENDLOOP.
Этот метод использует раскрывающийся список, созданный с помощью параметра
AS LISTBOX
. Параметры заполняются путем чтения значений из поля «SPFLI-CITYFROM» и добавления дополнительных параметров при необходимости.