Show TOC

Automation QueueLocate this document in the navigation structure

Verwendung

Die Kommunikation zwischen Automation Controller und OO Control Framework findet über GUI-RFC-Aufrufe statt:

Um die Netzlast zwischen dem Backend und dem Frontend gering zu halten, werden Aufrufe vom Backend an das Frontend gepuffert und zu definierten Synchronisationspunkten an das Frontend gesendet. Der Synchronisationspunkt wird durch nicht gepufferte Methodenaufrufe oder durch expliziten Aufruf einer generischen Synchronisationsmethode ( CALL METHOD cl_gui_cfw=>flush) erreicht. Weitere Informationen siehe Synchronisation der Automation Queue.

Die Kommunikation basiert auf einem RFC-Aufruf. Der Aufruf erfolgt synchron, was bedeutet, dass bei jedem Synchronisationspunkt ein RFC-Aufruf erfolgt. Aufgrund der Architektur des SAP-Systems dürfen diese RFC-Aufrufe eine bestimmte Dauer nicht überschreiten, da sonst die Verbindung zwischen Präsentationsserver und Anwendungsserver automatisch beendet wird.

Die Pufferung von Operationen erhöht die Performance erheblich, da jede ungepufferte Operation eine RFC-Kommunikation mit dem Frontend auslöst. Allerdings sind gepufferte Operationen im Allgemeinen und gepufferte Lesezugriffe auf ein Control im Besonderen mit größter Vorsicht zu behandeln, da eine falsche Verwendung zu Laufzeitfehlern führen kann. Lesen Sie dazu Fehlerbehandlung.

Performance-Hinweise

Bei der Analyse der Performance sind vor allem die Anzahl der Synchronisationspunkte zu beachten. In der Dynproablauflogik wird die Automation Queue immer nach dem PBO synchronisiert.

Da allerdings eine Fehlerbehandlung von Methoden erst nach dem Synchronisationspunkt möglich ist, ist ein Kompromiss zwischen optimaler Performance und adequater Fehlerbehandlung zu finden.

Weiterhin ist bei großen Datenmengen zu beachten, dass die Verbindung zwischen Anwendungss- und Präsentationsserver wegen Zeitüberschreitung nicht unterbrochen wird. In einem solchen Fall müssten dann zusätzliche Synchronisationspunkte eingefügt werden.

Werkzeuge zur Unterstützung bei der Performaceoptimierung finden Sie unter Services rund um die Automation Queue.

Voraussetzungen

Es gibt drei Arten von Control-Verschalungsmethoden:

  • Methoden, die immer vor dem Beenden eine Synchronisation der Automation Queue ausführen.

  • Methoden, bei denen nie eine Synchronisation der Automation Queue ausgeführt wird. Hier ist der Anwender für die Synchronisierung des Puffers verantwortlich.

  • Methoden, bei denen die Synchronisation über einen Parameterwert gesteuert werden kann.

Funktionsumfang

Gepufferte Operationen werden in der Automation Queue gesammelt. Ein interner Modus verfügt über eine einzige Automation Queue für alle Custom Controls des internen Modus. Durch Synchronisation der Automation Queue wird deren Inhalt zum Frontend gesendet und dort ausgeführt. Das Ergebnis wird dann an das Backend zurückgemeldet:

Beispiel

Sie rufen eine Methode des SAP Tree Controls, um den selektierten Knoten zu setzten (ohne Flush).

Die Methode stellt zwei Operationen in die Automation Queue: Op_Tree_1 und Op_Tree_2.

Dann rufen Sie eine Methode eines TextEdit Controls auf, um den ausgewählte Text anzuzeigen (ohne Flush). Die Methode stellt die Operation Op_TextEdit_1 in die Queue.

Die Queue sieht nun aus wie folgt:

Op_Tree_1

Op_Tree_2

Op_TextEdit_1

Wenn Sie jetzt die Automation Queue synchronisieren, wird sie zum Frontend übertragen und die Methodenaufrufe werden auf den passenden Controls ausgeführt.