Falsche Rückgabe der Selektierten Zeile/ Fehler beim Refresh

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

Falsche Rückgabe der Selektierten Zeile/ Fehler beim Refresh

Beitrag von t0mt0m (ForumUser / 16 / 0 / 0 ) »
Hallo,

ich habe folgende Ausgangsituation:
Ich habe mir in einem Dynpro mit der Methode des ALV Objektes SET_TABLE_FOR_FIRST_DISPLAY ein ALV zusammengebaut. Nun soll es
dem User möglich sein 1 oder mehrere Einträge zu selektieren und für diese eine Folgeverarbeitung durchzuführen.

Das Ergebnis der automatischen Verarbeitung wird anschließend in einem neuen ALV in einem Popup angezeigt. Nachdem der Anwender die Informationen gelesen hat, soll er das Popup wieder schließen können und die nächsten Einträge in ALV markieren können um für diese eine weiterverarbeitung anzustoßen.

Nun mein(e) Problem(e):
1. Wenn ich das erste mal Einträge im ALV markiere und dann die weiterverarbeitung antriggere, gibt mir die ALV Methode get_selected_rows korrekt die Nummern der selektierten Zeilen zurück. Nachdem ich aber im Popup war und danach weiterarbeiten will, gibt mir die Methode (get_selected_rows) immer nur die Zeile 1 als Ergebnis zurück, egal was ich markitert habe.
2. Wenn ich das Popup mit der Ergebnissen der Verarbeitung ein zweites mal aufrufe, zeigt mir das ALV immer noch das Ergebnis des ersten Aufrufes an. Ich schätze mal, das es daran liegt, das die interne Tabelle nicht refresht wird, sondern jedesmal beim Aufruf des Dynpros die Methode set_table_for_first_display aufgerufen wird. Aber wie kann ich überprüfen ob meine ALV Object für das Popup schon erstellt wurde um beim zweiten mal einfach die refresh Methode aufzurufen?


Ich hoffe mir kann jemand einen Denkanstoss in die richtige Richtung geben, da ich leider im Sachen ABAP OO und ALV nicht sonderlich bewandert bin (aber willens es zu lernen :) ).

Gruß
Tom

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


Beitrag von BlackMail (ForumUser / 79 / 0 / 0 ) »
Hallo,

bin mir nicht sicher, woran das liegt, aber bei jedem PBO set_table_for_first_display aufzurufen ist sicherlich nicht gut.
Um das grid beim ersten PBO zu erzeugen und set_table_for_first_display aufzurufen, kannst Du Dich an der Gridreferenzvariable (if gx_grid is initial (oder besser: is bound)) orientieren.

Vielleicht musst Du auch ein cl_gui_cfw=>flush ausführen, nachdem du get_selected_rows aufrufst.

Probiers mal aus und berichte.

Gruß BlackMail.

Beitrag von t0mt0m (ForumUser / 16 / 0 / 0 ) »
ich weiß ehrlich gesagt, nciht ganz wie ich diese Variable abfrage :oops:

ich habe sowohl in der Klassendefinition des Containers(CL_GUI_CUSTOM_CONTAINER) in dem das ALV liegt als auch in der Klassendefinition des ALV selber (cl_gui_alv_grid) in den Attributen nach gx_grid gesucht. Hab es leider nirgends gefunden......

Beitrag von BlackMail (ForumUser / 79 / 0 / 0 ) »
Ok, vielleicht war das missverständlich. Mit "gx_grid" meinte ich die Referenzvariable in Deinem Programm, die auf die ALV-Klasse zeigt.
Beim ersten PBO wirst Du ja eine Instanz der ALV-Klasse erzeugen:

Code: Alles auswählen.

DATA: DeineVariable TYPE REF TO cl_gui_alv_grid.
...
PBO.

  IF DeineVariable IS INITIAL.   " Hier abfragen ob die Variable schon auf etwas zeigt.
    CREATE OBJECT DeineVariable
    ...
    CALL METHOD DeineVariable->set_table_for_first_display ...
  ELSE.
    CALL METHOD DeineVariable->refresh_table_display ...
  ENDIF.
Gruß BlackMail.

Beitrag von t0mt0m (ForumUser / 16 / 0 / 0 ) »
Vielen Dank,
genau das war die Lösung beider oben beschriebener Probleme.

Nachdem ich darauf achte nur noch beim Erstaufruf die Methode set_table for_first_display aufzurufen werden die werde korrekt aktualisiert und auch die Neuselektion von Zeilen klappt jetzt wunderbar. I


Also...vielen Dank nochmal Blackmail

Gruß
Tom

Seite 1 von 1

Vergleichbare Themen

5
Antw.
2054
Views
ALV GRID ermitteln der selektierten Zeile
von SAP_ENTWICKLER » 30.11.2017 09:23 • Verfasst in ABAP® für Anfänger
1
Antw.
1732
Views
Zahllauf / Scheckverwaltung / keine selektierten Posten
von capt_goerk » 19.04.2007 10:44 • Verfasst in Financials
2
Antw.
3068
Views
JCO - Rückgabe an SAP Dateiinhalt
von steffi_ma » 22.12.2004 14:40 • Verfasst in Java & SAP®
9
Antw.
5013
Views
Rückgabe von Datenreferenzen
von SaskuAc » 02.06.2017 11:01 • Verfasst in ABAP® Core
3
Antw.
4727
Views
Verbuchungsbaustein - Rückgabe?
von xJeNnYx » 21.09.2009 14:53 • Verfasst in ABAP® für Anfänger

Über diesen Beitrag


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

Aktuelle Forenbeiträge

Trennen Strasse und Hausnummer
vor 9 Stunden von msfox 18 / 10974
Dialog-Container mit Toolbar/Status
vor 12 Stunden von black_adept gelöst 27 / 4093
IT0024 Qualifikationen CP-ID
vor 13 Stunden von ArjenR 1 / 99

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

Trennen Strasse und Hausnummer
vor 9 Stunden von msfox 18 / 10974
Dialog-Container mit Toolbar/Status
vor 12 Stunden von black_adept gelöst 27 / 4093
IT0024 Qualifikationen CP-ID
vor 13 Stunden von ArjenR 1 / 99

Unbeantwortete Forenbeiträge

IT0024 Qualifikationen CP-ID
vor 13 Stunden von ArjenR 1 / 99
aRFC im OO-Kontext
vor 4 Wochen von ralf.wenzel 1 / 3033
Hilfe bei SWEC/SWE2
September 2024 von retsch 1 / 9624