Zeilenwerte eines sortierten ALV-Grids über CL_GUI_ALV_GRID ermitteln

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).
7 Beiträge • Seite 1 von 1
7 Beiträge Seite 1 von 1

Zeilenwerte eines sortierten ALV-Grids über CL_GUI_ALV_GRID ermitteln

Beitrag von sapdepp (Specialist / 221 / 38 / 2 ) »
Hallo zusammen,

ich habe eine stinknormales ALV-Grid (CL_GUI_ALV_GRID) erzeugt und möchte die Grid-Tabelle nun z. B. nach Datum sortieren. Nach der Sortierung markiere ich eine Zeile und möchte die Werte der markierten Zeile für andere Zwecke übernehmen per Command-Button. Problem: Über GET_SELECTED_ROWS erhalte ich zwar den richtigen Zeilenindex, doch der passt nicht zur unsortierten Ursprungstabelle. Die Werte der sortierten Tabelle befinden sich im Protected Attribute MT_OUTTAB. Ich möchte also über den Zeilenindex die Werte der markierten MT_OUTTAB-Zeile erhalten und nicht der Ursprungstabelle. Leider finde ich keine passende Methode, um mit dem Zeilenindex auf die sortierte Tabelle (MT_OUTTAB) zugreifen zu können, um die Zeilenwerte auszulesen. Any ideas?

Besten Dank und viele Grüße

sapdepp

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


Re: Zeilenwerte eines sortierten ALV-Grids über CL_GUI_ALV_GRID ermitteln

Beitrag von Radinator (ForumUser / 73 / 12 / 7 ) »
Ich würde in die MT_OUTTAB noch irgendeinen Identifier mit reinpacken. Timestamp Feld welches nicht angezeigt wird. Oder ne ID die automatisch hochzählt. Damit kannst über den Zeilen Index aus GET_SELECTED_ROWS den Identifyer auslsen und dann in der unsortierten Tabelle die Zeile finden und weiter verarbeiten.

Re: Zeilenwerte eines sortierten ALV-Grids über CL_GUI_ALV_GRID ermitteln

Beitrag von gtoXX (Specialist / 214 / 44 / 37 ) »
Eine andere Möglichkeit auf geschützte Attribute wie MT_OUTTAB zuzugreifen findest Du bei Enno https://tricktresor.de/blog/if-you-wann ... s-konzept/ über IF_ALV_RM_GRID_FRIEND

Was ich gerade nicht im Kopf habe, ob die interne Tabelle mit sortiert wird, wenn Du sie als REF #( interne_tabelle ) übergibts.

Folgende Benutzer bedankten sich beim Autor gtoXX für den Beitrag:
sapdepp

"Code lügt nicht ^^"

Re: Zeilenwerte eines sortierten ALV-Grids über CL_GUI_ALV_GRID ermitteln

Beitrag von PeterPaletti (Specialist / 364 / 33 / 99 ) »
Du könntest dir auch vom ALV-Grid die Sortierkriterien liefern lassen (Methode GET_SORT_CRITERIA) und deine Inputtabelle entsprechend BY (otab) nachsortieren.

Re: Zeilenwerte eines sortierten ALV-Grids über CL_GUI_ALV_GRID ermitteln

Beitrag von black_adept (Top Expert / 4133 / 130 / 956 ) »
Hast du eigentlich mal geprüft, ob beim Sortieren nicht auch deine Ursprungstabelle mit sortiert wird. Denn m.E. wird doch die Tabelle via CallByReference übergeben und das ist auch der Grund, warum der ALV, wenn man eine sortierte Tabelle übergibt zwar angezeigt wird aber dann, wenn man anders sortiert dumpt, weil eben die Originaltabelle nicht verändert werden darf. Ich schreibe andauernd ALVs und lasse da hin- und her sortieren und greife immer über den Zeilenindex und auf die Originaltabelle zu. Welchen Sinn hätte sonst auch die Methode GET_SELECTED_ROWS wenn Sie dir nicht die Tabellenzeilen der Tabelle übergäbe, die du angegeben hast.

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

live long and prosper
Stefan Schmöcker

email: stefan@schmoecker.de

Re: Zeilenwerte eines sortierten ALV-Grids über CL_GUI_ALV_GRID ermitteln

Beitrag von PeterPaletti (Specialist / 364 / 33 / 99 ) »
black_adept hat natürlich völlig recht. Beim Sortieren wird die Ursprungstabelle mit sortiert.

Re: Zeilenwerte eines sortierten ALV-Grids über CL_GUI_ALV_GRID ermitteln

Beitrag von sapdepp (Specialist / 221 / 38 / 2 ) »
Vielen Dank für die vielen Rückmeldungen. Eine Nacht drüber geschlafen, und prompt den Fehler gefunden, auch in Anlehnung an den Hinweis von black_adept. Ich habe per set_table_for_first_display zwar die interne Originaltabelle ans Custom Control übergeben, aber etwas später per Tableconstructor "Tabelle B = CORRESPONDING #( Tabelle A)" diese nochmal auf eine Hilfstabelle B kopiert und diese in einem weiteren Control sortiert und wundere mich, dass die Originaltabelle nicht sortiert wird. Langer Tag gestern.

Nochmals besten Dank für die Hinweise, auch das mit Ennos Tricktresor.

VG
sapdepp

Seite 1 von 1

Vergleichbare Themen

2
Antw.
2026
Views
ALV Grid: Datenänderung AUSSERHALB des Grids
von Nordlicht » 16.04.2013 10:05 • Verfasst in ABAP Objects®
5
Antw.
2465
Views
ALV GRID ermitteln der selektierten Zeile
von SAP_ENTWICKLER » 30.11.2017 09:23 • Verfasst in ABAP® für Anfänger
0
Antw.
1470
Views
Protokoll des ALV-Grids
von MNordlicht » 13.02.2006 12:17 • Verfasst in ABAP® Core
5
Antw.
5588
Views
Tutorial für ALV Grids
von Senshi » 13.08.2007 08:29 • Verfasst in ABAP® für Anfänger
3
Antw.
1920
Views
Name des aktuellen Grids
von cwinter » 17.05.2006 11:12 • Verfasst in ABAP Objects®

Ü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

Aktuelle Forenbeiträge

FOR mit CORRESPONDING
Gestern von black_adept 9 / 926
SALV: Titel zu lang
Gestern von ralf.wenzel 3 / 144
Web Feature Services (WFS) im SAP
vor 4 Tagen von msfox 1 / 520
WM: Transportauftrag quittieren - drucken
vor einer Woche von JHM 4 / 2238

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

FOR mit CORRESPONDING
Gestern von black_adept 9 / 926
SALV: Titel zu lang
Gestern von ralf.wenzel 3 / 144
Web Feature Services (WFS) im SAP
vor 4 Tagen von msfox 1 / 520
WM: Transportauftrag quittieren - drucken
vor einer Woche von JHM 4 / 2238

Unbeantwortete Forenbeiträge

Web Feature Services (WFS) im SAP
vor 4 Tagen von msfox 1 / 520
Erweiterung in ME51N/ME52N:
vor 3 Wochen von ABAPlerv 1 / 2804
Erweiterung in ME51N/ME52N:
vor 3 Wochen von ABAPlerv 1 / 2681