Dynpro 0100 im Screenpainter definieren
Textfeld vom Typ Listbox einfügen
Variablendefinition im Top-Include des Reports/Modulpools
* globaler Bezeichner für Listbox definieren, dieser muss namensgleich dem * Bezeichner des Screenpainter-Elements (Listbox) sein * Über diesen Bezeichner erfolgt der Zugriff aus dem Code heraus * --> beim Programmstart wird dieser automatisch dem Screenpainter-Elements * (Listbox) zugeordnet DATA: lb_listbox TYPE char255. * globale Liste für Listboxwerte DATA: it_lb_values TYPE vrm_values.
Dynpro 0100 PBO -> Initialisierung der Listbox
PROCESS BEFORE OUTPUT. MODULE status_0100. ... MODULE status_0100 OUTPUT. * Werteliste für Listbox initialisieren it_lb_values = VALUE vrm_values( ( key = 'A' text = 'Wert1' ) ( key = 'B' text = 'Wert2' ) ( key = 'C' text = 'Wert3' ) ). * Werteliste der Listbox setzen CALL FUNCTION 'VRM_SET_VALUES' EXPORTING id = 'LB_LISTBOX' values = it_lb_values EXCEPTIONS id_illegal_name = 1 OTHERS = 2. * Vorauswahl für die Listbox treffen, entsprechenden Key setzen lb_listbox = 'A'. ENDMODULE.
Dynpro 0100 PAI -> Auslesen der Listbox-Auswahl
PROCESS AFTER INPUT. MODULE user_command_0100. ... MODULE user_command_0100 INPUT. DATA(lv_lb_text) = VALUE char255( ). * Text aus der Listbox anhand des Keys ermitteln TRY. lv_lb_text = it_lb_values[ key = lb_listbox ]-text. CATCH cx_root. ENDTRY. ... ENDMODULE.