Es gibt immer mal wieder die Anforderung einen ALV im PopUp anzeigen zu lassen. Oft wird hier dann auf die alten nicht objektorientierten ALV's zur├╝ckgegriffen. Hierf├╝r besteht aber gar keine Notwendigkeit.

Das folgende Coding zeigt wie einfach das PopUp mit Hilfe der Klasse cl_salv_table erzeugt werden kann.

DATA: lo_popup_alv TYPE REF TO cl_salv_table,
      lo_functions TYPE REF TO cl_salv_functions_list,
      lt_usr02     TYPE TABLE OF usr02.

SELECT * FROM usr02 INTO TABLE lt_usr02.

cl_salv_table=>factory(
   IMPORTING
     r_salv_table   = lo_popup_alv
  CHANGING
    t_table        = lt_usr02 ).
*
lo_functions = lo_popup_alv->get_functions( ).
lo_functions->set_default( 'X' ).
*
* ALV as Popup
lo_popup_alv->set_screen_popup(
  start_column = 30
  end_column   = 140
  start_line   = 3
  end_line     = 20 ).

* Display
lo_popup_alv->display( ). 

Das Ergebnis sieht dann so aus: