ALV grid mit Auswahlmöglichkeit?

Getting started ... Alles für einen gelungenen Start.
7 Beiträge • Seite 1 von 1
7 Beiträge Seite 1 von 1

ALV grid mit Auswahlmöglichkeit?

Beitrag von Basler84 (ForumUser / 60 / 31 / 0 ) »
Hallo :)

Habe ne Frage zu ALV Grid. Nutze den Baustein "Reuse_ALV_GRID_Display zur anzeige eines Reports. Wie schaffe ich es denn jetzt, dass für meine angezeigte Liste eine Selektion verschiedener Zeilen zur Weiterverarbeitung möglich ist?

Grüße

gesponsert
Stellenangebote auf ABAPforum.com schalten
kostenfrei für Ausbildungsberufe und Werksstudenten


Re: ALV grid mit Auswahlmöglichkeit?

Beitrag von Alexander D. (Expert / 682 / 30 / 84 ) »
hallo Basler84,

das Selektieren der Zeilen wird im Layout über den Schalter SEL_MODE gesteuert, siehe dazu z.B. http://help.sap.com/saphelp_dimp50/help ... ontent.htm

Nach der Selektion benötigst du einen Auslöser auf den du in der FORM USER_COMMAND reagierst. Die selektierten Zeilen bekommt man mit get_selected_rows ausgelesen

hier ein Beispiel

Code: Alles auswählen.

*&---------------------------------------------------------------------*
* Layout zum ALV definieren
*----------------------------------------------------------------------*
form prepare_layout changing ps_layout type lvc_s_layo.

  ps_layout-sel_mode = 'A'. "Spalten- und Zeilenselektion

endform.                    " prepare_layout


*---------------------------------------------------------------------*
*       FORM USER_COMMAND                                             *
*---------------------------------------------------------------------*
form user_command using r_ucomm     like sy-ucomm
                       rs_selfield type slis_selfield.

  data:
  go_grid type ref to cl_gui_alv_grid,
  i_irows type lvc_t_row, "Tabelle mit Indizes selektierter Zeilen
  wa_irows like line of i_irows,
  l_lines type i.

 case r_ucomm.
    when '&GO'. "<--- Funktion die selektierte Zeilen verarbeitet
      " selektierte Zeilen ermitteln

      "Werte aus dem ALV lesen
      call function 'GET_GLOBALS_FROM_SLVC_FULLSCR'
        importing
          e_grid = go_grid.

      "Indizes der selektierten Zeilen lesen
      call method go_grid->get_selected_rows
        importing
          et_index_rows = i_irows.

      describe table i_irows lines l_lines.
      if l_lines = 0.
        call function 'POPUP_TO_DISPLAY_TEXT'
          exporting
            textline1 = 'bitte mindestens eine Zeile wählen'.
        exit.
      endif.

      "ausgewählte Zeilen Verarbeiten
      loop at i_irows into wa_irows.
        read table gt_stpo into wa_stpo index wa_irows-index.

      endloop.
   ...
endcase.

Folgende Benutzer bedankten sich beim Autor Alexander D. für den Beitrag:
Basler84

schöne Grüße
Alexander

ECC 6.0 EHP 7

Re: ALV grid mit Auswahlmöglichkeit?

Beitrag von black_adept (Top Expert / 4159 / 136 / 960 ) »
Hallo Basler,

es gibt auch eine alternative Möglichkeit.

Du hängst an deine Ausgabetabelle ein Markierfeld an gibst dies im Übergabeparameter is_layout mit ( entweder is_layout-box_fieldname oder is_layout_lvc-box_fname ).
Damit kannst du dann leicht steuern welche Zeilen angekreuzt sein sollen bzw. bei der User-Command-Callbackroutine sind genau diejenigen Felder mit "X" belegt, die auch in der ALV-Liste markiert worden waren.

Folgende Benutzer bedankten sich beim Autor black_adept für den Beitrag:
Basler84

live long and prosper
Stefan Schmöcker

email: stefan@schmoecker.de

Re: ALV grid mit Auswahlmöglichkeit?

Beitrag von Basler84 (ForumUser / 60 / 31 / 0 ) »
Hab da doch noch so nbisschen meine Probleme.

Also wenn ich das richtig verstehe ist ja das form USER_COMMAND der Auslöser für die Verarbeitung, Wenn ich jetzt mit meiner Funktion 'REUSE_ALV_GRID_DISPLAY_LVC' meine Liste ausgeben lasse wird über User_Command auf meine weiteren Eingaben reagiert oder? Im Prinzip kann ich dieses Beispiel dann für jede Liste verwenden?

Code: Alles auswählen.

case r_ucomm.
    when '&GO'. "<--- Funktion die selektierte Zeilen verarbeitet
      " selektierte Zeilen ermitteln
Der Teil hier ist der Auslöser zur Weiterverarbeitung oder?

Sorry für die blöden fragen.. Aber das macht mir grad n bissl Probleme... :roll:

Re: ALV grid mit Auswahlmöglichkeit?

Beitrag von Alexander D. (Expert / 682 / 30 / 84 ) »
Basler84 hat geschrieben:Also wenn ich das richtig verstehe ist ja das form USER_COMMAND der Auslöser für die Verarbeitung, Wenn ich jetzt mit meiner Funktion 'REUSE_ALV_GRID_DISPLAY_LVC' meine Liste ausgeben lasse wird über User_Command auf meine weiteren Eingaben reagiert oder? Im Prinzip kann ich dieses Beispiel dann für jede Liste verwenden?
das ist korrekt. Die Voraussetzung dafür ist, dass die Routine USER_COMMAND dem ALV als Zuständige für die Verarbeitung bekannt ist. Dies erreichst du bei dem ALV-Aufruf:

Code: Alles auswählen.

* ALV Listausgabe mit Verarbeitung der Benutzereingaben
  CALL FUNCTION 'REUSE_ALV_GRID_DISPLAY_LVC'
    EXPORTING
      i_callback_program      = g_repid
      i_callback_user_command = 'USER_COMMAND'  "<----------------
      it_fieldcat_lvc         = gt_fieldcat
      i_save                  = 'A' 
      i_grid_title            = g_alvtitle
      is_variant              = variante
    TABLES
      t_outtab                = gt_itab.

Folgende Benutzer bedankten sich beim Autor Alexander D. für den Beitrag:
Basler84

schöne Grüße
Alexander

ECC 6.0 EHP 7

Re: ALV grid mit Auswahlmöglichkeit?

Beitrag von Basler84 (ForumUser / 60 / 31 / 0 ) »
Super, danke! :)

Und wie bekomme ich es jetzt hin, dass z.B. beim drücken des 'Weiter' Feldes das User Command ausgeführt wird?

Re: ALV grid mit Auswahlmöglichkeit?

Beitrag von Alexander D. (Expert / 682 / 30 / 84 ) »
mach an der Stelle case r_ucomm in USER_COMMAND einen Break-Point. Starte das Programm und klicke auf "Weiter". Das Programm sollte nun bei dem Break-Point stehenbleiben, in der r_ucomm findest du den Befehl, welcher mit der Weiter-Schaltfläche verknüpft ist
schöne Grüße
Alexander

ECC 6.0 EHP 7

Seite 1 von 1

Vergleichbare Themen

2
Antw.
1306
Views
Auswahlmöglichkeit ohne Dynpro
von Svenson » 05.12.2006 13:41 • Verfasst in ABAP® Core
4
Antw.
9357
Views
ALV Grid Sortierung aktualisieren im grid 1 und grid 2
von c oco » 06.02.2012 10:09 • Verfasst in ABAP Objects®
5
Antw.
9593
Views
2
Antw.
2679
Views
ALV Grid
von lisa » 08.09.2008 16:17 • Verfasst in ABAP® Core
4
Antw.
4094
Views
ALV Grid
von daf » 27.01.2019 15:23 • Verfasst in ABAP Objects®

Über diesen Beitrag


Unterstütze die Community und teile den Beitrag für mehr Leser und Austausch

Aktuelle Forenbeiträge

Stücklisten
vor 8 Stunden von Selma.schwarz 1 / 43
Belege
vor 8 Stunden von Selma.schwarz 1 / 38
Belege
vor 8 Stunden von Selma.schwarz 1 / 42

Newsletter Anmeldung

Keine Beiträge verpassen! Wöchentlich versenden wir lesenwerte Beiträge aus unserer Community.
Die letzte Ausgabe findest du hier.
Details zum Versandverfahren und zu Ihren Widerrufsmöglichkeiten findest du in unserer Datenschutzerklärung.

Aktuelle Forenbeiträge

Stücklisten
vor 8 Stunden von Selma.schwarz 1 / 43
Belege
vor 8 Stunden von Selma.schwarz 1 / 38
Belege
vor 8 Stunden von Selma.schwarz 1 / 42

Unbeantwortete Forenbeiträge

Stücklisten
vor 8 Stunden von Selma.schwarz 1 / 43
Belege
vor 8 Stunden von Selma.schwarz 1 / 38
Belege
vor 8 Stunden von Selma.schwarz 1 / 42