Empfänger für ein BAPI ermitteln
Verwendung
Die Verteilung von Daten durch eine Objekt-Methode kann an Bedingungen geknüpft sein, die im Verteilungsmodell über Filter festgelegt werden (über den Einführungsleitfaden (IMG): SAP Web Application Server → IDoc-Schnittstelle / ALE → Geschäftsprozesse modellieren und implementieren → Verteilungsmodell pflegen).
Die Voraussetzung dafür ist, dass dem entsprechenden BAPI Ihrer SAP-Anwendung ein Filterobjekttyp zugeordnet ist. Für manche BAPIs wurden durch SAP bereits Filterobjekttypen definiert und diesen zugeordnet. Sie können auch eigene
Filterobjekttypen definieren und einem BAPI zuordnen.Vor dem Aufruf eines BAPIs bzw. einer generierten BAPI-ALE-Schnittstelle müssen deren Empfänger ermittelt werden. Bei der Empfängerermittlung wird geprüft, ob die Filterobjekte die vorgegebenen Bedingungen erfüllen und die erlaubten Empfänger zurückgegeben.
Im ALE-Verteilungsmodell können folgende Abhängigkeiten abgebildet werden:
Solche Abhängigkeiten müssen von Seiten der Anwendung in einem Funktionsbaustein implementiert werden. In der ALE-Entwicklung muss der Funktionsbaustein dem entsprechenden Objekttyp zugeordnet werden (über Abhängigkeiten → Funktionsbaustein für abhängiges Business-Objekt pflegen).
Falls eine Abhängigkeit im ALE-Verteilungsmodell als eine Bedingung definiert ist, so wird der Empfänger des referenzierten BAPIs bzw. Nachrichtentyps bestimmt.
Beispiel einer Abhängigkeit eines BAPIs von einem Nachrichtentyp:
Die Verteilung von Organisationsadressen wurde in die Objektpflege zum Lieferanten integriert. Über ALE werden diese Adressdaten dann zusammen mit den Objektdaten verteilt. Die Adressdaten stehen in Abhängigkeit zu den Objektdaten und werden mittels BAPI verteilt. Die Objektdaten werden über den Nachrichtentyp CREMAS verteilt.
Es existiert also eine Abhängigkeit zwischen einem BAPI und einem Nachrichtentyp.
Im Verteilungsmodell ist dem BAPI zur Verteilung von Organisationsadressen (AddressOrg.SaveReplica) ein aktiver Empfängerfilter zugewiesen. Über das Attribut abhängige Verteilung in der Filteranzeige wurde die Abhängigkeit aktiviert.
Aufgrund der Empfängerermittlung werden die Objektdaten mit den BAPI-Adressdaten nur dann verteilt, wenn die Filterbedingung für CREMAS erfüllt sind.
ALE stellt Ihnen für die Empfängerermittlung mit der Funktionsgruppe BDAPI eine Reihe von Funktionsbausteinen zur Verfügung.
Funktionsumfang
Die Funktionsbausteine der Funktionsgruppe BDAPI haben folgenden Funktionsumfang:
Funktionsbaustein |
Funktionsumfang |
ALE_BAPI_GET_FILTEROBJECTS |
Filterobjekte eines BAPIs abfragen |
ALE_ASYNC_BAPI_GET_RECEIVER |
Empfänger für asynchrone BAPIs ermitteln |
ALE_SYNC_BAPI_GET_RECEIVER |
Empfänger für synchrone BAPIs ermitteln |
ALE_BAPI_GET_UNIQUE_RECEIVER |
Einzigen Empfänger für synchrone BAPIs ermitteln |
Folgende Beispielprogramme stehen Ihnen für die Empfängerermittlung zur Verfügung: