Ein Asynchron-Auftrag an eine Partner-Anwendung wird dort so behandelt, als sei er in einem Vorgang in der eigenen Anwendung erzeugt worden: Asynchron-Aufträge aus Vorgängen der lokalen Anwendung und Asynchron-Aufträge, die aus fernen Vorgängen abgesetzt wurden, stehen in einer gemeinsamen Message Queue, die dem Asynchron-TAC zugeordnet ist. Für jeden Auftrag wird, sobald er an der Reihe ist und die Betriebsmittel zur Verfügung stehen, ein entsprechender Asynchron-Vorgang gestartet. Am Eintrag im Feld KCTERMN im KB-Kopf kann der Asynchron-Vorgang erkennen, ob der Auftraggeber ein ferner Vorgang war.
Asynchron-Vorgänge für das Remote Queuing werden genauso aufgebaut wie beim Locale Queuing (siehe "Aufbau eines Asynchron-Vorgangs"). Bei verteilter Verarbeitung über OSI TP gibt es jedoch eine weitere Möglichkeit: Asynchron-Aufträge an Dialog-Vorgänge.
Asynchron-Aufträge an ferne Dialog-Vorgänge (nur über OSI TP)
Bei einem Asynchron-Auftrag, für den das OSI TP-Protokoll verwendet wird und für den beim APRO globale Transaktionssicherung vereinbart wurde, kann der Empfänger des Auftrags auch ein Dialog-Vorgang sein.
Nach Empfang eines Asynchron-Auftrags für einen Dialog-Vorgang wird der Vorgang in der Partner-Anwendung sofort gestartet und nicht wie ein Auftrag an einen Asynchron-Vorgang zunächst in eine Message Queue eingetragen. In der Anwendung des Auftraggebers wird der Auftrag erst dann aus der Message Queue gelöscht, wenn der Dialog-Vorgang beendet ist. Bei einem Nachrichten-Komplex wird dann - je nach Verarbeitungsergebnis der positive oder negative Quittungsauftrag gestartet.
Ein Dialog-Vorgang, der durch einen Asynchron-Auftrag gestartet wird, muss die Transaktion mit PEND FI beenden und darf keinen MPUT an den Auftraggeber enthalten (KCENDTA=F und KCSEND=N).