Show TOC

Services rund um die Automation QueueLocate this document in the navigation structure

Verwendung

Zur Unterstützung bei der Verwendung von Controls in Anwendungen werden unterschiedliche Services zur Verfügung gestellt:

  • Debugger: Lokalisieren von Fehlern

  • Performance-Anzeige: Performance-Optimierungen

  • Automation Trace: Lokalisieren von Synchronisationszeitpunkten

Funktionsumfang

Debugger

Wenn Sie mit gepufferten Operationen bei der Kommunikation mit Controls arbeiten, werden Fehler bei einem Methodenaufruf erst bei der Synchronisation der Automation Queue sichtbar. Daher ist es sinnvoll, beim Debuggen eines Programms nach jeder Methode die Automation Queue zu synchronisieren. Dazu können Sie im Debugger die Option Automation Controller: Aufträge immer synchron verarbeiten auswählen. Dadurch wird dann nach jeder Automation-Methode die generische Methode CALL METHOD cl_gui_cfw=>flush aufgerufen.

Tritt bei direkter Ausführung der Operationen kein Fehler mehr auf, dann wurde die Methode CL_GUI_CFW=>FLUSH zum falschen Zeitpunkt in Ihrem Programm aufgerufen.

Hinweis

Fügen Sie nach jedem Methodenaufruf eine entsprechende Fehlerbehandlung hinzu (Abfrage des SY-SUBRC-Werts). Beachten Sie aber, dass diese Fehlerbehandlung in der Regel nur im Debugging durchlaufen wird.

Performance-Anzeige

Wenn Sie die Anzahl der Roundtrips innerhalb Ihres Programms überprüfen wollen, haben Sie zwei Möglichkeiten:

  • Schalten Sie die Anzeige der Roundtrips in der Statuszeile ein:

  • Aktivieren Sie die Performance-Anzeige. (Wählen Sie dazu Anfang des Navigationspfads System Nächster Navigationsschritt Hilfsmittel Nächster Navigationsschritt Performance-Anzeige Ende des Navigationspfads.)

Automation Trace

Sie können einen Trace über die Automation Queue erstellen. Dazu wird in den SAPGUI Einstellungen in der Gruppe Trace das Ankreuzfeld Automation ausgewählt. Danach werden alle Aufrufe mit ihren Parametern (create object, call method, set/get property, free object) der Automation Queue in einer Tracedatei protokolliert.

Tritt ein Fehler auf, wird dieser in der Tracedatei protokolliert ( HRESULT error_code).

Zusätzlich kann nachverfolgt werden, wieviele Flushes pro PBO/PAI Roundtrip benötigt werden. Überflüssige Flush können dadurch eliminiert werden.

Beim Mitverfolgung der Methodenaufrufe der Control-Verschalung im Trace ist zu beachten, dass die ABAP-Methodennamen in der Regel nicht mit den Methodennamen im Trace übereinstimmen. Die Methodennamen im Trace entsprechen den Namen der Automation-Aufrufe an das Control. Weiterhin ist zu beachten, dass der Aufruf einer ABAP-Methode den Aufruf mehrerer Automation-Methoden nach sich ziehen kann.

Beispiel

Das Laden eines Bildes in das SAP Picture hat im ABAP-Programm folgende Form:

CALL METHOD picture->load_picture_from_url
        EXPORTING url = 'http://www.sap-ag.de/germany/images/sapag.gif'

            

Im Automation Trace entspricht dies folgenden Zeilen:

Achtung

Enhält der Automation Trace keine Einträge, trat der Fehler am Backend auf.