Variantenwahl per Listbox
Wenn Anwender in einem Report häufig verschiedene Varianten verwenden müssen, so können Sie unsere Version der Variantenauswahl verwenden. Die Varianten werden in einer Listbox dargestellt und können einfach ausgewählt werden.
Auswahl der Selektionsbildvariante per Listbox |
Vielen Dank an Ralf Wenzel!
Beachten Sie auch das Programm “Variantenschnellauswahl“.
Coding
REPORT ZZ_VARIANT_LISTBOX.
PARAMETERS p1 TYPE char10.
PARAMETERS p2 TYPE char10.
*——————————————————————–*
* Listbox zur Auswahl der Selelektionsbild-Variante
*——————————————————————–*
SELECTION-SCREEN BEGIN OF BLOCK var WITH FRAME TITLE text-var.
PARAMETERS pa_selva TYPE raldb_vari AS LISTBOX
VISIBLE LENGTH 40
USER-COMMAND variant.
SELECTION-SCREEN END OF BLOCK var.
INITIALIZATION.
PERFORM set_values.
AT SELECTION-SCREEN.
PERFORM set_variant.
*&———————————————————————*
*& Form set_values
*&———————————————————————*
FORM set_values.
DATA lt_varit TYPE vrm_values.
*== Listbox mit Varianten füllen
SELECT variant vtext
FROM varit INTO TABLE lt_varit
WHERE langu = sy-langu
AND report = sy-repid.
CALL FUNCTION ‘VRM_SET_VALUES’
EXPORTING
id = ‘PA_SELVA’
values = lt_varit
EXCEPTIONS
id_illegal_name = 1
OTHERS = 2.
ENDFORM. “set_values
*&———————————————————————*
*& Form set_variant
*&———————————————————————*
FORM set_variant.
DATA lv_selva TYPE raldb_vari.
DATA ls_rkey TYPE rsvarkey.
CASE sy-ucomm.
WHEN ‘VARIANT’.
lv_selva = pa_selva.
ls_rkey-report = sy-repid.
ls_rkey-variant = lv_selva.
IF pa_selva IS INITIAL.
*== An dieser Stelle kann man das Selektionsbild zurücksetzen,
*== wenn man mag
ENDIF.
PERFORM %_import_vari_clnt
USING ls_rkey sy-subrc sy-mandt
CHANGING sy-subrc.
pa_selva = lv_selva.
ENDCASE.
ENDFORM. “set_variant
- 7. December: Excel Racing Simulation – Root Vole Race - 7. Dezember 2024
- 5. December: ABAPConf - 5. Dezember 2024
- 4. December: Only a lazy developer is a good developer - 4. Dezember 2024