Markierte Zeilen im ALV merken (REUSE_ALV_GRID_DISPLAY_LVC)

Die Frage ist als "gelöst" markiert. Den entsprechend Beitrag findest du hier.

Die Objektorientierung mit ABAP®: Vererbung, Dynamische Programmierung, GUI Controls (u.a. ALV im OO).
5 Beiträge • Seite 1 von 1
5 Beiträge Seite 1 von 1

Markierte Zeilen im ALV merken (REUSE_ALV_GRID_DISPLAY_LVC)

Beitrag von sapdepp (Specialist / 210 / 35 / 2 ) »
Hallo, Freunde,

der FB REUSE_ALV_GRID_DISPLAY_LVC hat einen Exportparameter I_CALLBACK_USER_COMMAND. Diesem übergebe ich ein Unterprogramm USER_COMMAND. In diesem UP reagiere ich auf Eingaben, die der Nutzer später im ALV tätigt. Dazu gehören auch Absprünge in andere Transaktionen. Vorher, zu Beginn des UP, lese ich die markierten Zeilen (sel_mode = 'A') mit Methode GET_SELECTED_ROWS unseres allseits beliebten ALV-Grid in eine ITAB des Typs lvc_t_row. Bis hierhin alles gut.
Kehrt der Nutzer aus seiner Transaktion zurück in den ALV, dann möchte ich, dass die vorher markierten Zeilen markiert bleiben. Dem ist nicht so. Okay, zünde ich halt am Ende des UP die Methode SET_SELECTED_ROWS mit den Zeilen aus meiner ITAB. Der ALV schert sich aber nicht darum und verliert die Markierungen. Doof. REFRESH_TABLE_DISPLAY bringt hier auch nüscht. Es gibt so einige Threads zu dem Thema, die mir hier aber nicht weiterhelfen.
Wie merkt sich der ALV nach Nutzeraktionen die markierten Zeilen?

Es dankt und grüßt
sapdepp

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


Re: Markierte Zeilen im ALV merken (REUSE_ALV_GRID_DISPLAY_L

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

probier im USER_COMMAND nach Rückkehr zum ALV aus der Ansprungtransaktion folgenden Befehl abzusetzen

rs_selfield-row_stable = 'X'.
schöne Grüße
Alexander

ECC 6.0 EHP 7

Re: Markierte Zeilen im ALV merken (REUSE_ALV_GRID_DISPLAY_L

Beitrag von sapdepp (Specialist / 210 / 35 / 2 ) »
Gruß, Alexander D.,

ich habe im UP USER_COMMAND bei jedem Transaktionsabsprung schon ein ls_selfield-row_stable = 'X' drinstehen. Aber ich habe halt auch die Anweisung ls_selfield-refresh = 'X' eingebaut, die mir hier die Karten legt, wie ich gerade bemerkt habe. Ohne diese Anweisung klappt alles, mit dem Nachteil, dass Änderungen, die ich in den Absprungtransaktionen gemacht habe, im ALV nicht mehr automatisch übernommen werden und ich die Liste manuell refreshen muss.

Code: Alles auswählen.

FORM USER_COMMAND USING ls_ucomm LIKE sy-ucomm
                        ls_selfield TYPE slis_selfield.

  REFRESH: lt_sel_rows.

  CALL FUNCTION 'GET_GLOBALS_FROM_SLVC_FULLSCR'
    IMPORTING
      e_grid = rt_grid.

  CALL METHOD rt_grid->GET_SELECTED_ROWS
    IMPORTING
      ET_INDEX_ROWS = lt_sel_rows.
*    ET_ROW_NO     = lt_row_no.

  CASE LS_UCOMM.

    when 'BACK' OR 'CANCEL'.
      exit.

    when 'REFR'.

      PERFORM SELECTION.

      ls_selfield-refresh    = 'X'.
      ls_selfield-col_stable = 'X'.
      ls_selfield-row_stable = 'X'.

    WHEN ...

  ENDCASE.
...

  CALL METHOD rt_grid->SET_SELECTED_ROWS
    EXPORTING
      IT_INDEX_ROWS = lt_sel_rows.

ENDFORM.
Ich muss nun noch eine Möglichkeit finden, den ALV automatisch zu aktualisieren, ohne dabei die Zeilenmarkierung zu verlieren. Ich hatte halt gehofft, das die Methode SET_SELECTED_ROWS am Ende des UP genau das bewerkstelligt.

VG
sapdepp

Re: Markierte Zeilen im ALV merken (REUSE_ALV_GRID_DISPLAY_L

Beitrag von a-dead-trousers (Top Expert / 4271 / 213 / 1140 ) »
Methode CL_GUI_ALV_GRID=>REFRESH_TABLE_DISPLAY

Folgende Benutzer bedankten sich beim Autor a-dead-trousers für den Beitrag:
sapdepp

Theory is when you know something, but it doesn't work.
Practice is when something works, but you don't know why.
Programmers combine theory and practice: Nothing works and they don't know why.

ECC: 6.18
Basis: 7.50

Re: Markierte Zeilen im ALV merken (REUSE_ALV_GRID_DISPLAY_L

Beitrag von sapdepp (Specialist / 210 / 35 / 2 ) »
Und schon geht's.

Gracias!

Seite 1 von 1

Vergleichbare Themen

6
Antw.
4889
Views
Checkbox-Inhalt bei REUSE-ALV-GRID-DISPLAY-LVC
von Ucke » 19.11.2006 21:18 • Verfasst in ABAP® Core
0
Antw.
1370
Views
ALV-Grid: markierte Zeilen und Spalten
von dmyrb5 » 15.02.2006 15:17 • Verfasst in ABAP Objects®
2
Antw.
2715
Views
REUSE _ ALV _ LIST _ DISPLAY - Zeile nicht markieren
von Gast » 12.09.2005 08:42 • Verfasst in ABAP® Core
4
Antw.
5136
Views
ALV markierte Zeilen auslesen
von bob_sheknowdas » 13.09.2014 21:15 • Verfasst in Web-Dynpro, BSP + BHTML
2
Antw.
2305
Views
Markierte Zeilen aus einem ALV löschen
von meier0815 » 23.04.2004 13:25 • Verfasst in ABAP® für Anfänger

Über diesen Beitrag


Die Frage ist als "gelöst" markiert. Den entsprechend Beitrag findest du hier.

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

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.

Unbeantwortete Forenbeiträge

Zwischensumme Adobe Forms
vor 4 Tagen von Lucyalison 1 / 71
Group Items auf einer Filterbar
vor einer Woche von Bright4.5 1 / 111
tRFC Transaktionen SM58
vor 4 Wochen von A6272 1 / 141