Show TOC Anfang des Inhaltsbereichs

VorgehensweisenEigene Filterobjekte über Business Add-Ins ermitteln  Dokument im Navigationsbaum lokalisieren

Sie erfahren, wie Business Add-Ins von SAP definiert sind und wie Sie ein Business Add-In implementieren, um Ihre selbst definierten Filterobjekte bei der Empfängerermittlung abzufragen.

Verwendung

Diese Beschreibung gilt nur für die Empfängerermittlung mit Business Add-Ins.

Sie ist nur für solche BAPIs relevant, für die ALE-Schnittstellen vorhanden sind und für die Business Add-Ins implementiert werden sollen.

Als Standard liefert die SAP-Anwendung für die Empfängerermittlung eine Reihe von Filterobjekttypen, die mit den von Ihnen zugeordneten Werten zur Laufzeit ausgewertet werden (z.B. Filterobjekt Werk 0001, 0002). Die voreingestellten Werte können Sie ergänzen.

Wenn Sie jedoch für die Abbildung Ihrer eigenen Geschäftsprozesse andere Filterobjekttypen verwenden möchten, um den asynchronen BAPI-Aufruf unter erweiterten Bedingungen durchzuführen, benötigen Sie dafür von SAP definierte Business Add-Ins, die Sie implementieren und aktivieren müssen. Business Add-Ins sind von SAP-Programmierern definierte Stellen im Quellcode, an denen Sie Ihren Code einfügen können, ohne das Originalobjekt zu modifizieren.

Welche Ihrer SAP-Anwendungen Business Add-Ins enthalten, erfahren Sie in Ihrer Anwendungsdokumentation.

Voraussetzungen

Folgende Voraussetzungen müssen erfüllt sein:

·         Ihre SAP-Anwendungen enthalten Business Add-Ins, die von SAP definiert wurden (über Werkzeuge ABAP Workbench Hilfsmittel Business Add-Ins ® Definition, siehe auch das Beispiel Aufbau eines Business Add-Ins in einer Form-Routine unten).

·         Sie haben im ALE-Entwicklungsumfeld einen Filterobjekttyp für die Empfängerermittlung definiert, z.B. FILTER, und dem entsprechenden BAPI zugeordnet (über das SAP-Menü: Werkzeuge IDoc-Schnittstelle / ALE ® Entwicklung Empfängerermittlung).

·         Sie haben das Business Add-In implementiert und aktiviert (über das SAP-Menü: Werkzeuge ABAP Workbench Hilfsmittel Business Add-Ins ® Implementierung).

·         Sie haben im Verteilungsmodell ein Filterobjekt mit bestimmten Bedingungen unter der Sender-Empfänger-Beziehung gepflegt (über den  Einführungsleitfaden (IMG): SAP Web Application Server IDoc-Schnittstelle / ALE).

Beispiel:

Sender
  Empfänger
     BUSOBJECT.METHOD

Empfängerermittlung
   Filtergruppe
        FILTER
            1010

Aufbau eines Business Add-Ins in einer Form-Routine

Die Empfängerermittlung für ein BAPI (BUSOBJECT.METHOD) kann in SAP-Anwendungen durch SAP-Entwickler beispielsweise mit einer Form-Routine (z.B. BUSOBJECT_METHOD_RECEIVERS) nach folgendem Ablauf aufgebaut werden:

Schnittstelle:

TABLES  receivers STRUCTURE bdi_logsys

USING      object TYPE swo_objtyp
     method TYPE swo_method
     parameters LIKE ...
     return_info LIKE syst.

 

In diesem Beispiel enthalten die Parameter parameters alle für die Empfängerermittlung notwendigen Filterobjekt­werte der Anwendung. Sie sind anwendungsabhängig.

Der Parameter receivers enthält als vorgegebenen Wert die gewünschten Empfänger (oder Initialwert), und als Rückgabewert die ermittelten Empfänger.

Variablen-Definition:

        t_filter_object_type    TYPE bdi_flttyp_tab
t_filter_object_value   TYPE  bdi_fobj_tab
receivers_output        LIKE bdi_logsys OCCURS 0 WITH HEADER LINE

Im Code einer SAP-Anwendung werden folgende Schritte durchgeführt. Es handelt sich um die gleichen Schritte wie bei der Ermittlung der von SAP definierten Filterobjekttypen mit dem Zusatzschritt (Schritt 3) für die Ermittlung Ihrer selbst definierten Filterobjekte.

1)       Filterobjekttyp für das BAPI mit dem Funktionsbaustein ALE_BAPI_GET_FILTEROBJECTS abfragen:

EXPORTING
object = busobject
method = method

TABLES
receiver_input = receivers
filterobjects = t_filter_object_type

EXCEPTIONS
error_in_ale_customizing

2)       Den von SAP ausgelieferten Filterobjekttypen in der Struktur t_filter_object_type die aktuellen Werte der Anwendung in Parametern parameters zuweisen.

3)       Das definierte Business Add-In aufrufen, um die von Kunden definierten Filterobjekttypen in der Ablauflogik der Anwendung auszuwerten:

EXPORTING
   object = busobject
   method = method
   parameters = ...
  
filterobjtype = t_filter_object_type

   CHANGING
   filterobjvalue = t_filter_object_value

4)       Die Empfänger für den asynchronen BAPI-Aufruf mit dem Baustein ALE_ASYNC_BAPI_GET_RECEIVER ermitteln:

        EXPORTING
   object = busobject
   method = method

   TABLES
   receiver_input = receivers
   receivers_output = receivers_output
   filterobject_values = t_filter_object_value

   EXCEPTIONS
   error_in_filterobjects
   error_in_ale_customizing

receivers[] = receivers_output[]

 

(Den Programmcode dieses Beispiels finden Sie unter Beispielprogramme mit asynchronem BAPI-Aufruf, Empfängerermittlung mit Business Add-In)

Vorgehensweise

Implementieren Sie die Objekt-Methode für das Business Add-In unter Verwendung Ihres selbst definierten Filterobjekttyps.

Ergebnis

Die Empfänger für den asynchronen BAPI-Aufruf wurden anhand der vorgegebenen Filterobjekte ermittelt.

 

 

 

Ende des Inhaltsbereichs