Referenz im Report geht verloren

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

Referenz im Report geht verloren

Beitrag von msfox (Specialist / 364 / 56 / 74 ) »
Ich habe einen Report und dort ein globale Variabe (Referenz auf ein Interface) erstellt.
Im START-OF-SELECTION wird diese Variable instanziiert.
Nach der Selektion (gleiche Maske) führt der Anwender eine Aktion aus und landet damit im AT SELECTION-SCREEN. Dort ist die Instanziierung der Variablen jedoch weg. Die Variable ist initial.
Nach dem START-OF-SELECTION läuft der Report durch INITIALIZATION.

Warum?

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


Re: Referenz im Report geht verloren

Beitrag von MrBojangles (Specialist / 367 / 3 / 30 ) »
Hallo msfox,
ich glaube, Du sitzt einem Missverständnis auf... START-OF-SELECTION bedeutet sinngemäß "Am Anfang der Datenselektion". Dieser Zeitpunkt liegt nach dem Prozessieren des Selektionsbildschirms. Die Reihenfolge der Verarbeitungszeitpunkte in Reports ist - wenn ich mich recht erinnere - LOAD-OF-PROGRAM, INITIALIZATION, <SELECTION-SCREEN-stuff>, START-OF-SELECTION, END-OF-SELECTION. Du müsstest m.E. die Variable einfach "früher" instanziieren.

Folgende Benutzer bedankten sich beim Autor MrBojangles für den Beitrag:
msfox

Weiterhin viel Freude mit SAP...
Cheers
MrB.

Re: Referenz im Report geht verloren

Beitrag von DeathAndPain (Top Expert / 1936 / 256 / 412 ) »
Genau. Der richtige Zeitpunkt für solch Vorbelegung ist, wie der Name schon sagt, der Zeitpunkt INITIALIZATION. Und nach dem START-OF-SELECTION läuft er da nicht mehr durch; da bringst Du irgendwas durcheinander.

Folgende Benutzer bedankten sich beim Autor DeathAndPain für den Beitrag:
msfox


Re: Referenz im Report geht verloren

Beitrag von msfox (Specialist / 364 / 56 / 74 ) »
Bei mir ist aber aus irgendeinem Grund die Reihenfolge:
INITIALIZATION, <SELECTION-SCREEN-stuff>, START-OF-SELECTION, END-OF-SELECTION, INITIALIZATION
Für das Ausführen der Selektion gibt es ein Button über GUI-Status, der mit "ONLI" belegt wird. Der OK-Code wird aber nirgends abgefragt. Beim OK-Code ONLI ist der Funktionstyp <leer> also "Normale Anwendungsfunktion."

Irgendwie muss der Report also wieder ins INITIALIZATION kommen. Der OK-Code scheint es nicht zu sein.

Re: Referenz im Report geht verloren

Beitrag von a-dead-trousers (Top Expert / 4395 / 223 / 1182 ) »
Das ist das "Standardverhalten" in der Report-Prozessierung:
Nachdem das Ergebnis ausgegeben wurde (oder auch nicht, weil nichts gefunden wurde), wird der Report beendet und erneut aufgerufen. Die Referenz geht deshalb verloren, weil eigentlich ein neuer Prozess (Programmstack) gestartet wird. Eingaben auf dem Selektionsbild werden dabei per EXPORT TO/IMPORT FROM MEMORY an den erneuten Aufruf übergeben. Dadurch schaut es so aus, als ob man sich noch im selben Programmaufruf (Stack) befindet, in Wirklichkeit wurde aber das Programm neu gestartet und somit wird auch der INITIALIZATION Abschnitt erneut durchlaufen.

Der einzige Abschnitt, meines Wissens, der nur einmalig durchlaufen wird, wäre LOAD-OF-PROGRAM. Der macht aber für Initialisierungen nicht viel Sinn, weil durch den erneuten Aufruf des Reports nach dessen Beendigung, die dort gesetzten Variablen nicht mehr zur Verfügung stehen.

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

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: Referenz im Report geht verloren

Beitrag von msfox (Specialist / 364 / 56 / 74 ) »
OK, also wenn START-OF-SELECTION keine Ausgabe stattfindet, startet der Report automatisch wieder neu?
Hintergrund: Bei mir wird im START-OF-SELECTION eine Worddatei erzeugt.

Re: Referenz im Report geht verloren

Beitrag von a-dead-trousers (Top Expert / 4395 / 223 / 1182 ) »
Naja, nach dem END-OF-SELECTION wird eigentlich erst neu gestartet, aber ja, wenn man da drin nichts macht passierts im Grunde schon mit START-OF-SELECTION. ;)

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

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

Seite 1 von 1

Vergleichbare Themen

3
Antw.
3481
Views
Referenz-Tabelle UND Referenz-Feld f.BRGEW und NTGEW
von bohne » 22.02.2007 10:52 • Verfasst in ABAP® für Anfänger
2
Antw.
6561
Views
Referenz-Tabelle und Referenz-Feld
von dyv » 28.08.2014 15:25 • Verfasst in ABAP® für Anfänger
1
Antw.
1269
Views
Mengeneinheit geht verloren
von h1as » 12.03.2014 15:16 • Verfasst in ABAP® für Anfänger
1
Antw.
1941
Views
Fakturadruck durch Netzwerkfehler verloren
von vwaadenm » 28.04.2008 10:30 • Verfasst in Sales and Distribution
1
Antw.
1355
Views
LSMW Französische Sonderzeichen verloren!
von teerock » 26.10.2006 14:42 • Verfasst in ABAP® Core

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

Daten an Tabelle binden
vor 5 Stunden von Bright4.5 1 / 112
aRFC im OO-Kontext
vor 4 Wochen von ralf.wenzel 1 / 1753
Hilfe bei SWEC/SWE2
letzen Monat von retsch 1 / 8355