Sie können eine spezielle Extraktionsklasse verwenden, um Tabellen, die Zellen mit Schlüssel-/Wertspalten enthalten, zu extrahieren. Es wird ein neues Event-Attribut für jeden extrahierten Schlüssel eines Ereignisses erstellt.
Das folgende Beispiel zeigt eine Tabelle im Quellsystem, die Schlüsselwertattribute für ein Ereignis enthält.
Tabelle "WF_ITEMS" (System-Event-Tabelle, Kopftabelle für Workitems)
ID (Schlüssel) |
TYPE |
TEXT |
CREATOR |
STAT |
… |
---|---|---|---|---|---|
000000532657 |
F |
Erstellen Sie einen ArbgLeistung Anpassungsgrund für Mitarbeiter 00001448 aufgrund eines Ereignisses. |
Erstellt wird ein Anpassungsgrund aufgrund des Ereignisses ... |
COMPLETED |
… |
… |
… |
… |
… |
… |
… |
Für jedes dieser Workitems (d. h. für jede Zeile in der Tabelle "WF_ITEMS") gibt es beliebige Attribute, die in der Tabelle "WF_ITEM_ATTRIBUTES" als Schlüssel/Wert gespeichert sind:
Tabelle "WF_ITEM_ATTRIBUTES"
ID (Schlüssel) |
ATTRIBUTE (Schlüssel) |
VALUE |
… |
---|---|---|---|
000000532657 |
DATEOFVALIDITY |
20020101 |
… |
000000532657 |
EMPLOYEENUMBER |
00001448 |
… |
000000532657 |
EVENT |
CREATED |
… |
000000532657 |
OBJECTTYPE |
FAMILY |
… |
000000532657 |
_WF_INITIATOR |
USWF-BATCH |
… |
000000532657 |
_WF_PRIORITY |
5 |
… |
… |
… |
… |
… |
Extraktionsklasse
com.idsscheer.ppm.xmlextractortools.extractor.sap2ppm.ZTableKeyValueFieldsToAttributes_sap2ppm
Diese Extraktionsklasse erstellt aus jedem gefundenen Schlüsselwert ein neues Attribut für das Quellsystemereignis. Der Wert wird zum Wert des Attributs. Für diese Klasse müssen Sie die Namen der Schlüssel- und Wertespalte als Parameter getrennt durch "#-#" eingeben.
Alle Schlüssel- und Wertefelder müssen als zu lesende Felder angegeben werden (XML-Element fieldtoread). Zusätzliche zu lesende Felder sind nicht erlaubt.
Die folgende Konfiguration bezieht sich auf die oben erwähnte JDBC-Extraktionsklasse:
Das folgende Beispielereignis wurde mit der obigen Konfiguration ausgelesen:
<event>
<attribute type="WF_ITEMS-ID">000000532656</attribute>
<attribute type="WF_ITEMS-CREATOR">Creating an adjustment reason due to event...</attribute>
<attribute type="WF_ITEMS-STAT">COMPLETED</attribute>
<attribute type="WF_ITEMS-TEXT">Create a benefit adjustment reason for employee
00001448 due to any event.</attribute>
<attribute type="WF_ITEMS-TYPE">F</attribute>
‘ <attribute type="WF_ITEM_ATTRIBUTES-DATEOFVALIDITY ">20020101</attribute>
<attribute type="WF_ITEM_ATTRIBUTES-EMPLOYEENUMBER ">00001448</attribute>
<attribute type="WF_ITEM_ATTRIBUTES-EVENT ">CREATED</attribute>
<attribute type="WF_ITEM_ATTRIBUTES-OBJECTTYPE ">FAMILY</attribute>
<attribute type="WF_ITEM_ATTRIBUTES-_WF_INITIATOR ">USJOSWIGT</attribute>
<attribute type="WF_ITEM_ATTRIBUTES-_WF_PRIORITY ">5</attribute>
</event>
Sonderzeichen in Schlüsseln
Die Werte der Schlüsselspalten werden im XML-Attribut type der XML-Elemente attribute verwendet. Diese Werte können Zeichen enthalten, die in diesem XML-Attribut nicht verwendet werden dürfen. Aus diesem Grund werden die Werte des Attributs type des XML-Elements attribute auf ungültige XML-Zeichen geprüft. Diese werden ggf. herausgefiltert.