====== Automatisches hinzufügen von Schlüssel-/Wert-Paaren ====== ===== Einführung ===== Häufig brauchen wir bei der Transformierung von ein- oder ausgehenden Dokumenten eine sog. Umschlüsselung oder Übersetzung von Eigen- oder Fremdschlüssel. Dafür werden i.d.R. Wertetabellen und Werteprovider angelegt. Im Normalfall macht das eine Händler bei dem Empfang von PRICATs((Preis und Katalog Informationen einer Handelsware.)). Hier werden dann z.Bsp. die Warengruppen, Farben und Größen Angaben des Liefaranten auf die eigenen Schlüssel übersetzt. Dafür wurde je Attribut i.d.R. ein Werteprovider angelegt welcher alle bekannten Schlüssel im Idealfall mit Bezeichnung beinhaltet. Dazu wurde dann auch eine Wertetabelle vorbereitet,welche je nach Anforderung Global oder Partnerspezifisch verwendet wird. All dies ist bereits im HowTo [[howtos:recoding#vorbereitung|]] ausführlich erklärt. ===== Vorgehen ===== Will man nun die Werteprovider und Wertetabelle automatisch mit Inhalten befüllen, brauch es noch folgende Vorbereitungen: - ein geeigneter [[prozessdefinition:repositorien:entitaetstyp:anlegen|Dokumenttyp]] für den Transfer der Schlüssel-Wert Paare - einen [[transformation:werteprovider:anlegen|Werteprovider]] - eine [[transformation:lookuptables:start|]] - eine geeigneten [[kommunikation:kanal:start#eingehende_kommunikationskanaele|Empfangskanal]] - einen Job A zum öffnen des Empfangskanals und delegieren an Job B - einen Job B zum Analysieren und selektieren des Dokumenttyps - ein Mapping mit dem Dokumenttyp als Quell und Zielobjekt((Dies braucht es eigentlich nur um die Vollständigkeit eines Mappings formal zu erfüllen.)) In diesem Mapping wird mit der Funktion **[[transformation:mappings:funktionen:abfragefunktionen:lookup:addlookupkeyvalue|AddLookupKeyValue()]]** der Werteprovider mit dem neuen Schlüssel((Der Wert welcher bei einer LookUp Funktion als Resultat zurückgegeben werden soll.)) und die Wertetabelle mit den zu übersetzenden Werten und deren Zuordnung zum Rückgabewert aus dem Werteprovider angelegt. - eine [[prozessdefinition:automatisierungen:automatisierungen|]] zum starten des Job A