Standardisierte BAPIs 

Verwendung

Es gibt BAPIs und Methoden, die für die meisten der SAP-Business-Objekttypen angelegt werden können, da sie bestimmte Grundfunktionen bereitstellen. Es handelt sich hierbei um die "standardisierten" BAPIs.

Funktionsumfang

Bei Objektmethoden und insbesondere bei BAPIs kann zwischen Instanzmethoden und Klassenmethoden unterschieden werden. Instanzmethoden beziehen sich genau auf eine Instanz (d.h. ein bestimmtes Vorkommen) eines SAP-Business-Objekttyps, beispielsweise auf eine explizit angegebene Bestellung. Im Gegensatz hierzu sind Klassenmethoden instanzunabhängig.

BAPIs zum Lesen von Daten

Folgende BAPIs bieten Lesezugriff auf die Daten des zugehörigen Business-Objekttyps:

GetList()

Das BAPI GetList() dient zur Selektion einer Menge von Objektschlüsselwerten, z.B. Buchungskreisen und Materialnummern. Das BAPI GetList() ist eine Klassenmethode.

Weitere Informationen finden Sie unter Programmieren von GetList()-BAPIs.

GetDetail()

Mit dem BAPI GetDetail() werden Detailinformationen zu einer Instanz eines Business-Objekttyps gesammelt, die über einen Schlüssel identifiziert wird. Anschließend werden diese Informationen an das aufrufende Programm zurückgegeben. Das BAPI GetDetail() eine Instanzmethode.

Weitere Informationen finden Sie unter Programmieren von GetDetail()-BAPIs.

GetStatus()

Das BAPI GetStatus() wird verwendet, um den Status einer Business-Objektinstanz abzufragen, beispielsweise den Bearbeitungsstatus eines Kundenauftrages. Dieses BAPI dient im wesentlichen nur der Statusanzeige und bietet nicht die Fülle an Informationen wie das BAPI GetDetail(). Das BAPI GetStatus() ist eine Instanzmethode.

Weitere Informationen finden Sie unter Programmieren von GetStatus()-BAPIs.

ExistenceCheck()

Mit dem BAPI ExistenceCheck() wird geprüft, ob zu einer Business-Objektinstanz ein Eintrag existiert, z.B. ob der Kundenstamm angelegt ist. Das BAPI ExistenceCheck() ist eine Instanzmethode.

Weitere Informationen finden Sie unter Programmieren von ExistenceCheck()-BAPIs.

BAPIs zum Erstellen oder Verändern von Daten

Folgende BAPIs erstellen, ändern oder löschen Instanzen eines Business-Objekttyps:

Create() oder CreateFromData()

Das BAPI Create() oder CreateFromData() legt eine Instanz zu einem SAP-Business-Objekttyp an, z.B. eine Bestellung. Diese BAPIs sind Klassenmethoden.

Weitere Informationen finden Sie unter Programmieren von Create()-BAPIs.

Change()

Mit dem BAPI Change() wird eine bestehende Instanz eines SAP-Business-Objekts geändert, z.B. eine Bestellung. Das BAPI Change() ist eine Instanzmethode.

Weitere Informationen finden Sie unter Programmieren von Change()-BAPIs.

Delete() und Undelete()

Das BAPI Delete() löscht eine komplette Instanz eines SAP-Business-Objekts von der Datenbank, z.B. eine Bestellung, oder setzt eine Löschvormerkung.

Das BAPI Undelete() nimmt eine Löschvormerkung zurück.

Diese BAPIs sind Instanzmethoden.

Weitere Informationen finden Sie unter Programmieren von Delete()-BAPIs.

Cancel()

Im Gegensatz zum BAPI Delete() wird mit dem BAPI Cancel() eine Instanz eines Business-Objekts storniert, d.h. die zu stornierende Instanz bleibt auf der Datenbank erhalten und als Storno wird eine zusätzliche Instanz erzeugt.

Das BAPI Cancel() ist eine Instanzmethode.

Weitere Informationen finden Sie unter Programmieren von Cancel()-BAPIs.

Add<Teilobjekt>() und Remove<Teilobjekt>()

Das BAPI Add<Teilobjekt>() fügt ein Teilobjekt zu einer existierenden Objektinstanz hinzu; analog hierzu entfernt das BAPI Remove<Teilobjekt>() ein Teilobjekt von einer Objektinstanz. Diese BAPIs sind Instanzmethoden.

Weitere Informationen finden Sie unter Programmieren von Methoden auf Teilobjekten.

Bei der Implementierung von BAPIs, die Daten erstellen bzw. verändern sollten Sie eine Pufferung in Erwägung ziehen. Weitere Informationen finden Sie unter Pufferung bei Schreibenden BAPIs.

BAPIs für die Massenverarbeitung

Die unter "BAPIs zum Erstellen oder Verändern von Daten" gelisteten BAPIs (siehe oben) können auch für die Massenverarbeitung eingesetzt werden. In diesem Fall werden bei einem Aufruf des BAPIs gleichzeitig mehrere Business-Objektinstanzen behandelt.

Bei BAPIs für die Massenverarbeitung erhält der Methodenname den Zusatz "Multiple", z.B. ChangeMultiple(), CreateMultiple(), DeleteMultiple(). Es handelt sich hierbei immer um Klassenmethoden.

Es wird dringend empfohlen, statt Multiple()-BAPIs instanzabhängige BAPIs mit Pufferung anzulegen. Weitere Informationen finden Sie unter Pufferung bei Schreibenden BAPIs.

BAPIs für die Replikation von Business-Objektinstanzen

Folgende BAPIs werden für die Replikation von Business-Objektinstanzen verwendet:

Replicate() und SaveReplica()

Die BAPIs Replicate() und SaveReplica() werden als Methoden von replikationsfähigen Business-Objekttypen implementiert. Sie ermöglichen es, bestimmte Instanzen eines Objekttyps zusätzlich auf ein oder mehreren anderen Systemen zur Verfügung zu stellen. Diese BAPIs werden vorwiegend für die Datenübertragung zwischen verteilten Systemen im Rahmen von Application Link Enabling (ALE) eingesetzt. Diese BAPIs sind Klassenmethoden.

Weitere Informationen finden Sie unter Programmieren von Replicate()/SaveReplica()-BAPIs.