Drop-Down-Listfelder

Die Drop-Down-Listfelder können in einem einfachen Report programmiert werden. Wenn zu dem  Datenelement, auf das der PARAMETER referiert, in der Domäne Festwerte hinterlegt sind, dann belegt das System die Wertfelder automatisch mit den Festwerten. Auch Datenelemente, an denen eine explizite Suchhilfe angebunden ist, werden entsprechend befüllt.

Auf den Wechsel in einem Drop-Down-Listfeld kann reagiert werden, indem man die Option “USER-COMMAND” mit gibt.


Die folgenden Funktionsbausteine können Sie verwenden, um die Wertelisten in den Drop-Down-Feldern zu modifizieren:

ID’s ermitteln      VRM_GET_IDS
Werte setzen        VRM_SET_VALUES
Werte lesen         VRM_GET_VALUES
Werte löschen       VRM_DELETE_VALUES
Werte auffrischen   VRM_REFRESH_VALUES

Ein Demoprogramm von der SAP: DEMO_DYNPRO_DROPDOWN_LISTBOX


REPORT zzdropdown.

TYPE-POOLS vrm.

DATA:
  lt_values  TYPE vrm_values,
  ls_value   TYPE vrm_value,
  lv_key(40) TYPE n.

PARAMETERS:
  p_list  TYPE NUM02 AS LISTBOX VISIBLE LENGTH 30 USER-COMMAND list,
  p_spras TYPE spras AS LISTBOX VISIBLE LENGTH 30.

INITIALIZATION.

*-- Hier wird die Liste mit Werten gefüllt:
  PERFORM add_value USING:
     'Deutschland',
     'Italien    ',
     'Dänemark   ',
     'Schweden   ',
     'Holland    '.

*-- Setzen der Werte für das Feld P_LIST
  CALL FUNCTION 'VRM_SET_VALUES'
       EXPORTING
            id     = 'P_LIST'
            values = lt_values.

AT SELECTION-SCREEN.

  IF sy-ucomm = 'LIST'.
*** Ausgabe des ausgewählten Parameters
    READ TABLE lt_values INTO ls_value INDEX p_list.
    MESSAGE S000(OO) with ls_value-text.
  ENDIF.

*---------------------------------------------------------------------*
*       FORM add_value                                                *
*---------------------------------------------------------------------*
FORM add_value USING f_text.

  STATICS lv_key.
  ADD 1 TO lv_key.
  ls_value-key = lv_key.
  ls_value-text = f_text.
  APPEND ls_value TO lt_values.

ENDFORM.

Ergebnis

Und so sieht’s aus:


Die Drop-Down-Listboxen in Aktion

 

Enno Wulff

COMMENTS

Leave a Comment