Ansicht
Dokumentation

CRMXIF_PRODUCT_IP_REL_SAVE - Interface-Baustein für Interface-Typ:CRMXIF_PRODUCT_IP_REL_SAVE

CRMXIF_PRODUCT_IP_REL_SAVE - Interface-Baustein für Interface-Typ:CRMXIF_PRODUCT_IP_REL_SAVE

SUBST_MERGE_LIST - merge external lists to one complete list with #if... logic for R3up   CL_GUI_FRONTEND_SERVICES - Frontend Services  
Diese Dokumentation steht unter dem Copyright der SAP AG.
SAP E-Book

Vorbemerkung

Die Schnittstelle kann nur Produkte vom Typ "Beziehungen Intellectual Property" (IP) mit externen Systemen austauschen. Produkte des Typs Material, Service oder andere Beziehungen werden über eigene Schnittstellen realisiert.

Funktionalität

Der Funktionsbaustein definiert die Schnittstelle des CRM Servers für das Produkt (IP Beziehungen) für externe Systeme.

Die Schnittstelle ist als Adapter der CRM Middleware realisiert (XIF) und stellt eine IDOC Verarbeitung und eine Verarbeitung für XML/SOAP Calls zur Verfügung. Der entsprechende IDOC Nachrichtentyp ist CRMXIF_PRODUCT_IP_REL_SAVE.

Der CRM Ausgangsbaustein (für ALE/IDoc: CRMXIF_PRODUCTIPREL_IDOC_SEND für SOAP/XML: CRMXIF_PRODUCTIPREL_XML_SEND) versendet dabei das Produkt vom Typ IP in Form eines komplexen Datentyps der Struktur COMXIF_PRODUCT_IP_REL, der die externe Struktur repräsentiert.

Produkte vom Typ "IP Beziehungen" können innerhalb der CRM Server Anwendungen angelegt oder bearbeitet werden. Die neu angelegten oder geänderten Produkte vom Typ "IP Beziehungen" werden durch die CRM Middleware und die externe Produkt (Service Beziehungen) Schnittstelle (XIF) an Fremdsysteme über IDocs oder über SOAP/XML Format versendet.

Mapping (Inbound)

Im Inbound wird der komplexe Datentyp auf das Business Document (BDoc) für IPs abgebildet, d.h. alle Felder des komplexen Datentyps werden in die entsprechenden Felder des BDocs gemappt.

Ein Produkt wird in der Schnittstelle entweder durch die Übergabe der GUID oder durch die Angabe der Produkt-ID und des Logischen Systems (= Originalsystem) oder der Alternative-ID identifiziert. Der Typ ist in jedem Fall IP. Diese Information ist implizit in der Schnittstelle enthalten.

Aufgrund des unterschiedlichen Aufbaus beider Strukturen müssen einige Felder gesondert behandelt werden. So werden in der komplexen Datenstruktur die Schlüsselfelder des Produktes nur auf Header Ebene gehalten. Verkaufsorganisation und Vertriebslinie werden nur in einer Zwischenebene gehalten und von dort aus an die darunter liegenden Strukturen im logischen Sinne vererbt.

Das Mapping wird innerhalb des Funktionsbausteins CRMXIF_PROD_IPREL_MAP_FROM_INT ausprogrammiert. Der Kunde hat die Möglichkeit, das Mapping durch ein BADI zu beeinflussen.

Aufruf des CRM Middleware Flows

Der CRM Middleware Flow ruft die Methode VALIDATE auf. Dieses Verhalten kann jedoch durch ein BAdI in der Art verändert werden, dass im XML- Fall die Methode PERS_VALIDATE gerufen wird, d.h. das Fehlerhandling dann in der CRM Middleware stattfindet.

Fehlerbehandlung

Fehlermeldungen können an drei verschiedenen Stellen innerhalb des Datenaustauschprozesses entstehen:

  • im Mapping (zum Beispiel, wenn ein Produkt nicht identifiziert werden kann)
  • in der CRM Middleware
  • in der Verbuchung des Produktstammes (zum Beispiel, wenn ein Produkt gesperrt ist)

Entweder können alle Produkte eines Blocks oder gar kein Produkt verbucht werden. Sobald in einem Block ein fehlerhaftes Produkt enthalten ist, wird ein ROLLBACK WORK ausgelöst. Eine teilweise Verarbeitung ist nicht möglich. Dies sollte bei der Wahl der Blockgröße beachtet werden (siehe Abschnitt Performance).

Die Fehlerbehandlung erfolgt abhängig vom verwendeten Eingang der Schnittstelle an unterschiedlichen Stellen:

  • SOAP-Call
    Die Behandlung von Fehlern aus der CRM Middleware oder der Verbuchung des Produktstammes erfolgt direkt nach dem Aufruf des Flows.
  • ALE-Eingang
    Die Behandlung aller Fehler erfolgt in der ALE-Schicht. Für jedes IDOC wird ein entsprechender Status fortgeschrieben. Auch die Transaktionssteuerung erfolgt in der ALE-Schicht, entweder wird hier ein COMMIT WORK oder ein ROLLBACK WORK ausgeführt.

Die Konvertierung der Fehlerstruktur der CRM Middleware auf die Fehlerstruktur des ALE wird innerhalb des Funktionsbausteins CRMXIF_PRODUCTIPREL_FILLERR durchgeführt.

Mapping (Outbound)

Im Outbound wird das BDoc für Service auf den neuen komplexen Datentyp gemappt. D.h. alle Felder des BDocs werden in die entsprechenden Felder des neuen komplexen Datentyps gemappt. Durch den unterschiedlichen Aufbau beider Strukturen müssen einige Felder gesondert behandelt werden oder sind für den komplexen Datentyp nicht notwendig, wie beispielsweise Mandant und Produkt GUID auf Objektebene im BDoc.

Das Mapping wird innerhalb des Funktionsbausteins CRMXIF_PROD_IP_REL_MAP_TO_INT ausprogrammiert.

Beispiel

Hinweise

Die Kommunikation mit dem CRM Server erfolgt über Messaging-BDocs des Typs COMT_PROD_IP_BDOC. Technisch gesehen erfolgt eine Abbildung der Daten im komplexen Datentyp COMXIF_PRODUCT_IP_REL auf den komplexen Datentyp COMT_PROD_IP_BDOC des BDocs, wobei allerdings nur Daten zu den Substrukturen HEADER und INTERLINK weitergegeben werden.

Zusätzliche Felder in der Schnittstelle oder Änderungen an den Eingangsdaten können vorgenommen werden durch Anlegen von Implementierungen für das Business Add In in CRMXIF_PRODUCT_IP_REL_SAVE.

Weiterführende Informationen

Informationen zum Datenformat können der Dokumentation zum komplexen Datentyp COMXIF_PRODUCT_IP_REL entnommen werden.

Informationen zu den externen Schnittstellen allgemein finden Sie unter

Weitere Informationen zur Integration von CRM und zu den externen Schnittstellen finden Sie im SAP Service Marketplace unter dem Alias CRM-CI.





Parameter

DATA
RETURN

Ausnahmen

Funktionsgruppe

CRMXIF_PRODUCTIPREL_GEN

General Data in Customer Master   Addresses (Business Address Services)  
Diese Dokumentation steht unter dem Copyright der SAP AG.

Length: 6492 Date: 20240523 Time: 142024     sap01-206 ( 129 ms )