Enter und ALV Daten nachladen

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

Enter und ALV Daten nachladen

Beitrag von dkast (Specialist / 117 / 7 / 1 ) »
Hallo zusammen,

ich bracuhe ein bisschen Hile in Sachen Grundlagen. Ich habe bei meinem ALV im Status (der auch als PF-Status gesetzt ist) beim Grünen Enter Button den Fcode 'ENTR'. Sonst ist beim Button nichts hinterlegt
Wenn ich aber in meinem ALV Eingaben mache und diese mit Druck der Entertaste bestätige passiert nichts. Nichmal ein Aufruf des PAI.

Die 2. Problematik dreht sich darum die Daten "nachzuladen". Ein einfacher Refresh reicht mir nicht, da ich Daten in Tabellen ändere. Die Frage ist wie bekomme ich die Einträge aus meinem ALV die geändert wurden und wie lasse ich diese auf die aktuellen Daten nachlesen?

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


Re: Enter und ALV Daten nachladen

Beitrag von black_adept (Top Expert / 3950 / 105 / 886 ) »
ad 1) CL_GUI_ALV_GRID->REGISTER_EDIT_EVENT. Und Eventhandler auf Event DATA_CHANGED und dort "manuell" ein PAI auslösen wenn du es via PAI machen möchtest
ad 2) CL_GUI_ALV_GRID->CHECK_CHANGED_DATA aufrufen. Danach sind die Daten vom Frontend in deiner internen Tabelle und du kannst sie ändern/ergänzen und via Refresh dann wieder ausgeben
live long and prosper
Stefan Schmöcker

email: stefan@schmoecker.de

Re: Enter und ALV Daten nachladen

Beitrag von 4byte (Specialist / 124 / 37 / 35 ) »
Hallo dkast,

du hast also ein editierbares ALV?? Ein Druck auf die Entertaste wird als Event auf dem ALV registriert:

Code: Alles auswählen.

* Edit-Event(Enter Druck) extra registrieren
    CALL METHOD me->lo_alv->register_edit_event
      EXPORTING
        i_event_id = cl_gui_alv_grid=>mc_evt_enter.
Die Änderungen vom ALV werden durch das Ereignis DATA_CHANGED abgefangen.

Ich habe eine Methode HANDLE_ALV_DATA_CHANGED die ein Eeignisbehandler für die Klasse/Interf. CL_GUI_ALV_GRID
Ereignis DATA_CHANGED ist. Das legst du bei einer Methode fest(unter den Attributen) Als Import hat die Methode dann die IT ER_DATA_CHANGED mit den Ändeurngen auf dem ALV
Es gibt 10 Menschen die binär verstehen :)

Re: Enter und ALV Daten nachladen

Beitrag von 4byte (Specialist / 124 / 37 / 35 ) »
black_adept hat geschrieben:ad 2) CL_GUI_ALV_GRID->CHECK_CHANGED_DATA aufrufen. Danach sind die Daten vom Frontend in deiner internen Tabelle und du kannst sie ändern/ergänzen und via Refresh dann wieder ausgeben
bekomme ich hier nicht Prüfung ob die Daten valide auf dem Frontend sind ?? 8)
Es gibt 10 Menschen die binär verstehen :)

Re: Enter und ALV Daten nachladen

Beitrag von black_adept (Top Expert / 3950 / 105 / 886 ) »
Jein - das passiert im durch die Methode getriggerten Event DATA_CHANGED. Aber für den Otto-Normalprogrammierer reicht es zu wissen, dass nach CHECK_CHANGED_DATA die Daten in der Datentabelle zur Verfügung stehen.

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

live long and prosper
Stefan Schmöcker

email: stefan@schmoecker.de

Re: Enter und ALV Daten nachladen

Beitrag von 4byte (Specialist / 124 / 37 / 35 ) »
Achso stimmt. Änderungen auf dem ALV werden ja dann in der internen Tabelle umgesetzt :D die Methode DATA_CHANGED verwendet man, wenn ich explizit die geänderten Daten aus dem Frontend haben möchte 8)
Sprich welche Daten ein INSERT MODIFY oder DELETE sind.

Aber angenommen dkast möchte die Änderungen auf der DB speichern. Wäre es da nicht besser, nur die tatsächlichen Änderungen auf dem ALV per DATA_CHANGED zu holen und diese dann per INSERT UPDATE DELETE auf die DB zu schreiben?????
Es gibt 10 Menschen die binär verstehen :)

Re: Enter und ALV Daten nachladen

Beitrag von black_adept (Top Expert / 3950 / 105 / 886 ) »
Die übliche Antwort: "Kommt drauf an". Es gibt immer Situationen wo man den einen oder anderen Weg bevorzugen sollte.

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

live long and prosper
Stefan Schmöcker

email: stefan@schmoecker.de

Re: Enter und ALV Daten nachladen

Beitrag von dkast (Specialist / 117 / 7 / 1 ) »
black_adept hat geschrieben:ad 1) CL_GUI_ALV_GRID->REGISTER_EDIT_EVENT. Und Eventhandler auf Event DATA_CHANGED und dort "manuell" ein PAI auslösen wenn du es via PAI machen möchtest
ad 2) CL_GUI_ALV_GRID->CHECK_CHANGED_DATA aufrufen. Danach sind die Daten vom Frontend in deiner internen Tabelle und du kannst sie ändern/ergänzen und via Refresh dann wieder ausgeben
Danke erstmal für eure Antworten. Wie funktioniert den das ganze für das Reuse ALV?

Und ncoh eine Frage die mir gerade eingefallen ist. Kann ich wenn ich mir die "Headerpage" (slis_t_listheader) mit der Anzahl der Einträge im ALV fülle und dann einen Filter setze diese Anzahl auch quasi mit setzen des Filter mit "aktualisieren lassen"? Als Bsp.: Ich starte mein Programm ahbe 20 Einträge darin dann setze ich einen Filter für nur 5 Materialien dann soll aus den 20 5 werden.

Nachtrag: Aktuell behelfe ich mir nach dem ich miene Änderungen an der Datenbank vorgenommen habe einfach meine get_data methode neu aufzurufen. Das möchte ich aber eignetlich vermeiden da ja dann alle Daten nachselektiert werden und ich das ja eignetlich nur bei den veränderten Daten machen möchte.

Re: Enter und ALV Daten nachladen

Beitrag von black_adept (Top Expert / 3950 / 105 / 886 ) »
Hallo,

welchen REUSE-ALV verwendest du denn ( da gibt es ja auch mehrere )

Du kannst auf nach dem Ausführen des Filterkommandos die Programmkontrolle erhalten. Siehe dazu die Doku zum Parameter "IT_EVENT_EXIT". ( Beim REUSE-FuBa )
live long and prosper
Stefan Schmöcker

email: stefan@schmoecker.de

Seite 1 von 1

Vergleichbare Themen

0
Antw.
1302
Views
"Nachladen" von Altdaten in Infostrukturen?
von migro » 20.11.2007 08:49 • Verfasst in Sales and Distribution
1
Antw.
1898
Views
per Enter aktualisieren
von L0r3n2 » 13.03.2017 07:42 • Verfasst in ABAP® für Anfänger
5
Antw.
4912
Views
ALV - ENTER-Ereignis
von Nadine_2706 » 19.09.2012 09:47 • Verfasst in ABAP® für Anfänger
3
Antw.
1775
Views
Enter im ALV-Grid
von ralle » 04.12.2006 10:09 • Verfasst in ABAP® Core
5
Antw.
3429
Views
OK_CODE und [Enter]
von m.schwertle » 13.12.2007 15:05 • Verfasst in Dialogprogrammierung

Über diesen Beitrag


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

Aktuelle Forenbeiträge

Artikel automatisch in va01
vor 5 Stunden von wreichelt 2 / 21
langtexte beim Fertigungsauftrag
vor 13 Stunden von ByteMeBaby 7 / 6404
Updates der Daten, Fehlermeldung
Gestern von Egzon gelöst 1 / 59
Wie benutze ich COMMIT WORK richtig
vor 3 Tagen von msfox 17 / 443

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

Artikel automatisch in va01
vor 5 Stunden von wreichelt 2 / 21
langtexte beim Fertigungsauftrag
vor 13 Stunden von ByteMeBaby 7 / 6404
Updates der Daten, Fehlermeldung
Gestern von Egzon gelöst 1 / 59
Wie benutze ich COMMIT WORK richtig
vor 3 Tagen von msfox 17 / 443

Unbeantwortete Forenbeiträge

Zwischensumme Adobe Forms
letzen Monat von Lucyalison 1 / 271
Group Items auf einer Filterbar
letzen Monat von Bright4.5 1 / 323