CL_GUI_ALV_TREE Flush Error

Die Frage ist als "gelöst" markiert. Den entsprechend Beitrag findest du hier.

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

CL_GUI_ALV_TREE Flush Error

Beitrag von Aba ( / / 0 / 3 ) »
Hallo zusammen,

ich habe ein Programm, bei dem ein Tree über die Klasse CL_GUI_ALV_TREE angezeigt wird. In diesem Programm gibt es eine selbst implementierte Funktion, die über einen Button ausgelöst wird, welche den vollständigen Tree mitsamt seiner ganzen Hierarchiestufen (insgesamt 4) expandiert. Wenn diese Funktion direkt nach dem Aufrufen des Programmes ausgelöst wird, funktioniert sie einwandfrei. Wenn jedoch vorher schon einmal manuell ein Knoten expandiert wurde, erzeugt das System immer folgenden Dump:
ControlFrameWork : Fehler bei der Ansteuerung eines Controls!
Langtext der Fehlermeldung:
Diagnose
Bei der Abarbeitung der Befehle aus der Automation-Queue am
Frontend ist ein Fehler aufgetreten.
Als Ursachen kommen in Frage:
- fehlerhafte oder veraltete Installation des SAPGUI Frontends
- Fehler im Anwendungsprogramm
- Fehler im SAPGUI bzw. eines integrierten Controls
Das ganze geschieht anscheinend im " CL_GUI_CFW=>FLUSH". Im Aufrufstack davor kommt "CL_GUI_TOOLBAR=>DISPATCH, CL_GUI_CFW=>DISPATCH und CONTROL_END". Bevor der Dump ausgelöst wird, sieht man aber noch, dass die Hierarchie vollständig und richtig expandiert angezeigt wird.

Hat jemand eine Idee, woran das liegen könnte?
Aba

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


Re: CL_GUI_ALV_TREE Flush Error

Beitrag von a-dead-trousers (Top Expert / 4271 / 213 / 1140 ) »
Damit die Kommunikation mit dem SAPgui so effizient wie möglich abläuft, werden die Methodenaufrufe in einer Queue gebündelt. Dein Kurzdump sagt dir jetzt nur, dass irgendwo im zuletzt übermittelten Paket ein Fehler drinnen war aber nicht genau wo.
Du musst daher die "Autom.Queue synchrone Verarbeitung" ausschalten.
(Menü->System->Hilfsmittel)
Wenn du dann die gleichen Schritte die zum Kurzdump führen wiederholst, bekommst du einen aussagekräftigeren Kurzdump und siehst auch genau bei welchem (Teil-)Befehl der Tree tatsächlich abstürzt.
Aber Achtung: Der GUI wird dadurch auch extrem verlangsamt.
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: CL_GUI_ALV_TREE Flush Error

Beitrag von Aba ( / / 0 / 3 ) »
Hallo a-dead-trousers,
danke für deine Antwort! Gilt diese Einstellung dann nur für meinen User und das geöffnete Fenster oder ist das noch übergreifender, sodass es an anderer Stelle dadurch zu Problemen führen kann?

Re: CL_GUI_ALV_TREE Flush Error

Beitrag von ewx (Top Expert / 4784 / 294 / 628 ) »
Zusätzlich kannst du auch den Trace für den Tree-Control einschalten:
SNAG-00786.png

Re: CL_GUI_ALV_TREE Flush Error

Beitrag von a-dead-trousers (Top Expert / 4271 / 213 / 1140 ) »
Aba hat geschrieben:
14.10.2020 14:02
Gilt diese Einstellung dann nur für meinen User und das geöffnete Fenster oder ist das noch übergreifender, sodass es an anderer Stelle dadurch zu Problemen führen kann?
Das gilt nur für die aktuelle Session des gerade angemeldeten Benutzers.
(Also für alle Fenster mit derselben Anmeldung)
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: CL_GUI_ALV_TREE Flush Error

Beitrag von Aba ( / / 0 / 3 ) »
Ich habe die Funktion "Automation Controller verarbeitet Aufträge immer synchron" im Debugger jetzt eingeschalten. Jetzt erhalte ich immer folgende Informationen:
Kurztext der Fehlermeldung:
Control Framework: Unzulässige Bearbeitung eines ABAP-Objects-Controls

Langtext der Fehlermeldung:
Diagnose
Ein Control, das mit ABAP-Objects-Mitteln (klassenbasiertes Control
Framework) erzeugt wurde, soll über einen Funktionsbaustein
(funktionsbausteinsbasiertes Control Framework) bearbeiten werden.
Diese Mischform ist nicht unterstützt.
Die Class-Id des Controls ist SAP.TableTreeControl.1.

Der Abbruch trat im ABAP-Pro
"SAPLCNTL" auf, und zwar in "CHECK_OO".
Laut SAP-Note 373437 könnte das Problem sein, dass sowohl OO als auch Funktionsbausteine im Kontext mit dem Control verwendet werden. Das verstehe ich aber nicht so Recht, da es über "CREATE OBJECT" erzeugt wird und das Expand über "GO_TREE->EXPAND_NODES.." aufgerufen wird. Zudem tritt der Fehler ja auch nur auf, wenn der Tree vorher schon teilweise manuell expandiert wurde.

Kann mir dazu jemand weiterhelfen?

Re: CL_GUI_ALV_TREE Flush Error

Beitrag von a-dead-trousers (Top Expert / 4271 / 213 / 1140 ) »
Schau dir im Debugger (oben im Kurzdump solange du noch im Programm bist) deinen Aufrufstack an. Dann weißt du bei welchem Befehl der Fehler genau aufgetreten ist.

EDIT: Hab mir gerade deine Antwort nochmal durchgelesen.
Welche Knotennamen übergibst du bei EXPAND_NODES?
Doch hoffentlich nur die, die noch zu Öffnen sind und nicht die die schon offen sind.
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.
3733
Views
Doku über ALV Tree / SAP Tree
von SkyHobbit » 14.06.2005 11:56 • Verfasst in ABAP® für Anfänger
6
Antw.
9135
Views
ALV Tree / List Tree?
von wega83 » 02.04.2012 16:06 • Verfasst in ABAP® Core
2
Antw.
5040
Views
RFC communications error
von ratoshuan » 21.03.2006 23:31 • Verfasst in Exchange Infrastructure
19
Antw.
6108
Views
DBIF_RSQL_INVALID_RSQL Error
von ABAP_User » 25.09.2012 12:58 • Verfasst in ABAP® Core
7
Antw.
3847
Views
Error: ITAB_DUPLICATE_KEY
von AnnaNRW » 16.02.2016 18:41 • Verfasst in ABAP® für Anfänger

Ü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

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.