Show TOC Anfang des Inhaltsbereichs

Funktionsdokumentation Werte-Mappings ausführen Dokument im Navigationsbaum lokalisieren

Verwendung

Zur Konfigurations-Zeit können Sie im Integration Directory eine Werte-Mapping-Tabelle füllen. Semantisch gleichbedeutende Werte werden in dieser Tabelle in einer Gruppe zusammengefasst.

Die Mapping-Laufzeit stellt eine API zur Verfügung, um während eines Java-Mappings zu einem Ausgangswert einen Zielwert zu ermitteln.

Funktionsumfang

Ausgangs- und Ziel-Darstellung

Ein Objekt (beispielsweise eine Materialnummer) kann beim Empfänger anders identifiziert sein als beim Sender (siehe: Werte-Mapping-Tabelle); man sagt, das Objekt hat verschiedene Darstellungen. Eine Darstellung eines Objektes besteht aus:

·      Einem Werte-Mapping-Kontext, um Mappings aus verschiedenen Anwendungen voneinander abgrenzen zu können.

·      Einer Agentur, die ein Identifikationsschema verwaltet (beispielsweise eine Firma)

·      Dem verwendeten Identifikationsschema (beispielsweise das Schema „Kundennummer“)

·      Der Wert des Objekts, abhängig von dem Identifikationsschema, der vergebenden Agentur und dem Werte-Mapping-Kontext.

Das Paket com.sap.aii.mapping.value.api bietet die Interfaces IFIdentifier, IFRequest und IFResponse an, zu denen Sie sich Objekte anfordern können, um solche Darstellungen zu beschreiben. Ausgehend von IFIdentifier bauen Sie IFRequest auf, und bekommen nach der Ausführung des Werte-Mappings eine Objekt vom Typ IFResponse zurück:

Diese Grafik wird im zugehörigen Text erklärt

Um eine Werte-Mapping-Anfrage zu stellen, verwenden Sie ein Objekt vom Typ IFRequest. Die Anfrage bauen Sie aus Ausgangskennung, Zielkennung (beide sind Objekte vom Typ IFIdentifier) und dem Ausgangswert zusammen. Als Werte-Mapping-Ergebnis bekommen Sie ein Objekt vom Typ IFResponse, mit dem Sie zusätzlich zu den Informationen in der Anfrage ein oder mehrere Zielwerte abfragen können.

Hinweis

Alternativ können Sie ein Werte-Mapping auch ausführen, indem Sie der Methode executeMapping() alle notwendigen Werte in einem Aufruf übergeben (siehe unten).

Zum Stellen einer Anfrage und dem Ausführen eines Werte-Mappings verwenden Sie eine Faktory- und eine Service-Klasse, deren Methoden weiter unten beschrieben sind. Die Methoden der Interfaces bestehen nur aus Zugriffsmethoden für die jeweiligen Werte:

Methoden des Interface IFIdentifier

Methode

Rückgabewerte zur Kennung

public java.lang.String
getContext();

Werte-Mapping-Kontext

public java.lang.String
getAgency();

Agentur

public java.lang.String
getScheme();

Identifikationsschemas

Methoden des Interface IFRequest

Methode

Rückgabewerte der Werte-Mapping-Anfrage

public IFIdentifier getSourceIdentifier()

Ausgangskennung

public IFIdentifier getTargetIdentifier()

Zielkennung

public java.lang.String getSourceValue()

Ausgangswert

Methoden des Interface IFResponse

Methode

Rückgabewerte des Werte-Mapping-Ergebnis

public java.lang.String getSingleTargetValue()

Einzelner Zielwert. Wenn kein gültiger Zielwert gefunden wurde, gibt die Methode den null-Wert zurück. Wenn mehr als ein Ziel-Wert gefunden wurde, gibt die Methode den ersten (zufällig bestimmten) Wert zurück.

Um sicherzugehen, dass es nur einen Ziel-Wert gibt, verwenden Sie die Methode countTargetValues(). Null-Werte können Sie auch mit der Methode hasTargetValues() abfragen.

public java.lang.String[] getTargetValues()

Alle möglichen Ergebniswerte zur Anfrage

public int countTargetValues()

Anzahl der Ergebniswerte

public boolean hasTargetValues()

true, falls es mindestens einen Ergebniswert gibt,
false sonst.

public IFIdentifier getSourceIdentifier()

Ausgangskennung

public IFIdentifier getTargetIdentifier()

Zielkennung

public java.lang.String getSourceValue()

Ausgangswert

Mapping-Request

Das Paket com.sap.aii.mapping.value.api bietet folgende Klassen an:

·      XIVMFactory, um Objekte vom Typ IFIdentifier und IFRequest zu instanziieren

·      XIVMService, um das Werte-Mapping auszuführen

Methoden der Klasse XIVMFactory

Methode

Verwendung

public XIVMFactory()

Konstruktor

public static IFIdentifier newIdentifier(
java.lang.String context,
java.lang.String agency,
java.lang.String scheme)

Gibt eine Kennung zu den übergebenen Werten zurück.

public static IFRequest newRequest(
IFIdentifier sourceIdentifier,
IFIdentifier targetIdentifier,
java.lang.String sourceValue)

Gibt eine Werte-Mapping-Anfrage zu einer Ausgangskennung, Zielkennung und zu einem Ausgangswert zurück.

Methoden des Interface XIVMService

Methode

Verwendung

public XIVMService()

Konstruktor

public static java.lang.String executeMapping(
IFIdentifier sourceIdentifier,
IFIdentifier targetIdentifier,
java.lang.String sourceValue)
throws
 ValueMappingException

Gibt einen Ergebniswert zurück.

public static IFResponse executeMapping(IFRequest request)
throws ValueMappingException

Gibt ein Werte-Mapping-Ergebnis zu einer Werte-Mapping-Anfrage zurück.

public static IFResponse[] executeMapping(IFRequest[] requests)
throws ValueMappingException

Gibt die Werte-Mapping-Ergebnisse zu mehreren Werte-Mapping-Anfragen zurück.

public static java.lang.String executeMapping(
java.lang.String sourceContext,
java.lang.String sourceAgency,
java.lang.String sourceScheme,
java.lang.String sourceValue,
java.lang.String targetContext,
java.lang.String targetAgency,
java.lang.String targetScheme)

Gibt den Ergebniswert zurück.

Genau dann, wenn kein Ergebniswert existiert oder eine Ausnahme während der Ausführung des Werte-Mappings ausgelöst wurde, gibt die Method den null-Wert zurück.

Die Ausnahme ValueMappingException der Methode executeMapping() wird genau dann ausgelöst, wenn ein Fehler während der Ausführung des Werte-Mappings aufgetritt oder der Wert aus anderen Gründen nicht abgebildet werden kann.

 

 

 

Ende des Inhaltsbereichs