Show TOC

Dokumentation zur VorgehensweiseVerteilungsmodell abfragen Dieses Dokument in der Navigationsstruktur finden

Voraussetzungen

Im Verteilungsmodell werden die potentiellen Empfänger eines BAPI-Aufrufs definiert. Da die Verteilung der Daten zusätzlich an Bedingungen geknüpft sein kann, ist es möglich, bestimmte Abhängigkeiten zwischen BAPIs oder zwischen BAPIs und Nachrichtentypen als Empfängerfilter zu definieren.

Für jeden dieser Empfängerfilter wurde vor der Pflege des Verteilungsmodells zunächst ein Filterobjekt angelegt, dessen Wert zur Laufzeit darüber entscheidet, ob die Bedingung erfüllt ist oder nicht.

Vorgehensweise

Das Abfragen des Verteilungsmodells untergliedert sich folglich in die beiden Teilphasen Ermittlung der Filterobjekte und Durchführung der Empfängerermittlung.

Ermittlung der Filterobjekte

Bevor die Empfängerermittlung durchgeführt werden kann, müssen die dem BAPI zugeordneten Filterobjekte bestimmt werden. Falls Filterobjekte zur Laufzeit bekannt sind, können diese bei der Empfängerermittlung direkt angegeben werden. Andernfalls wird der Funktionsbaustein ALE_BAPI_GET_FILTEROBJECTS zur Verfügung gestellt, der zu einem bestimmten BAPI die zugehörigen Filterobjekte ausliest.

Durchführung der Empfängerermittlung

Für die Ermittlung der Empfänger eines synchronen BAPIs wird vom Anwendungsprogramm der Funktionsbaustein ALE_SYNC_BAPI_GET_RECEIVER aufgerufen. Dieser Baustein liefert eine Tabelle mit allen Empfängern zurück. Diese Tabelle enthält neben dem logischen System auch die RFC-Destination. Falls die Empfängerermittlung an Bedingungen geknüpft ist, müssen dem Funktionsbaustein die Werte der Filterobjekte mitgegeben werden, die zuvor ermittelt wurden.

Die Empfängerermittlung für ein aufzurufenes Remote-BAPI aus dem ALE-Verteilungsmodell sieht dabei prinzipiell wie folgt aus:

Syntax Syntax

  1. call function 'ALE_SYNC_BAPI_GET_RECEIVER'
    	exporting
    		object= 'TESTFH01'
    		method= 'GETDETAIL'
    	tables
    		receivers= receivers
    		filterobject_values= 
    		filterobject_values
    	exeptions
    		error_in_filterobjects=1
    		error_in_ale_customizing=2
    		no_rfc_destination_maintained=3.
Ende des Codes

Wenn genau ein Empfänger für ein synchrones BAPI ermittelt werden soll, dann wird vom Anwendungsprogramm der Funktionsbautein ALE_BAPI_GET_UNIQUE_RECEIVER aufgerufen.