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 / 220 / 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 / 46 / 10 / 6 ) »
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 / 358 / 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 / 4117 / 130 / 953 ) »
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 / 358 / 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 / 220 / 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.
1715
Views
ALV Grid: Datenänderung AUSSERHALB des Grids
von Nordlicht » 16.04.2013 10:05 • Verfasst in ABAP Objects®
5
Antw.
2143
Views
ALV GRID ermitteln der selektierten Zeile
von SAP_ENTWICKLER » 30.11.2017 09:23 • Verfasst in ABAP® für Anfänger
3
Antw.
1527
Views
Name des aktuellen Grids
von cwinter » 17.05.2006 11:12 • Verfasst in ABAP Objects®
3
Antw.
1869
Views
Fragen zu ALV Grids
von Paul » 14.11.2018 19:14 • Verfasst in ABAP® für Anfänger
0
Antw.
1101
Views
Protokoll des ALV-Grids
von MNordlicht » 13.02.2006 12:17 • Verfasst in ABAP® Core

Ü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

Workflow-Datenfluss mit Multi-Line-Container
vor 2 Tagen von ewx gelöst 2 / 303
Mahnung erstellen
vor 2 Tagen von Sebastian82 4 / 357

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

Workflow-Datenfluss mit Multi-Line-Container
vor 2 Tagen von ewx gelöst 2 / 303
Mahnung erstellen
vor 2 Tagen von Sebastian82 4 / 357

Unbeantwortete Forenbeiträge

OPD Druck im SPOOL
vor 4 Tagen von Manfred K. 1 / 320
Export von Spools in XLSX
vor einer Woche von abapamateur 1 / 1494
Feldberechnung ME32K
vor 2 Wochen von ZF_SAPler 1 / 2007