Aus gelesenen Attributwerten neue Attributwerte konkatenieren

Die Klasse com.idsscheer.ppm.xmlextractortools.extractor.
sap2ppm.ZTableConcatFKs_sap2ppm kann verwendet werden, um während des Auslesevorgangs aus einem SAP-System neue System-Event-Attribute zu erzeugen, indem die Werte bereits ausgelesener Attribute konkateniert werden. Die neu erzeugten System-Event-Attribute können in weiteren Datentabellenkonfigurationen (XML-Element table) referenziert werden.

Beispiel

<?xml version="1.0" encoding="ISO-8859-1"?>

<!DOCTYPE xmlextractor_tableconfiguration SYSTEM

'xmlextractor_tableconfiguration.dtd'>

<xmlextractor_tableconfiguration>

<configuration name="SD">

<docspec>

<doctable name="RBKP">

<condition logicaloperator="eq" fieldname="GJAHR">

<value>2005</value>

</condition>

<pkfield name="BELNR"/>

<pkfield name="GJAHR"/>

</doctable>

</docspec>

<table name="RBKP_NEW" classtouse="com.idsscheer.ppm.

xmlextractortools.extractor.

sap2ppm.ZTableConcatFKs_sap2ppm">

<pkfield name="BELNR" fktablename="RBKP"

fkfieldname="BELNR"/>

<pkfield name="GJAHR" fktablename="RBKP"

fkfieldname="GJAHR"/>

<fieldtoread name="AWKEY_GENERATED"/>

</table>

</configuration>

</xmlextractor_tableconfiguration>

Wenn Sie die Klasse ZTableConcatFKs_sap2ppm verwenden, müssen Sie genau ein fieldtoread-Element angeben. Das Element enthält den Namen des zu erzeugenden System-Event-Attributs. Im Beispiel wird ein neues System-Event-Attribut mit dem Namen RBKP_NEW-AWKEY_GENERATED erzeugt. Der Wert des Attributs setzt sich aus den Werten der angegebenen pkfield-Elemente zusammen.
Bei den pkfield-Elementen können die üblichen Operationen fkpart, prefix und postfix verwendet werden.

Ein mit obiger Konfiguration erzeugtes System-Event könnte beispielsweise wie folgt aussehen:

...

<event>

<attribute type="RBKP-BELNR">5105601204</attribute>

<attribute type="RBKP-GJAHR">2005</attribute>

<attribute type="RBKP_NEW-AWKEY_GENERATED">51056012042005

</attribute>

</event>

...

Sonderfall

In der table-Konfiguration kann das spezielle pkfield-Element MANDANT verwendet werden, welches beim Auslesen automatisch die Nummer des SAP-Mandanten hinzufügt. Hierbei müssen die XML-Attribute name, fktablename und fkfieldname den Wert MANDANT haben.

Beispiel (inkl. postfix-Element)

<?xml version="1.0" encoding="ISO-8859-1"?>

<!DOCTYPE xmlextractor_tableconfiguration SYSTEM

'xmlextractor_tableconfiguration.dtd'>

<xmlextractor_tableconfiguration>

<configuration name="SD">

<docspec>

<doctable name="RBKP">

<condition logicaloperator="eq" fieldname="GJAHR">

<value>2005</value>

</condition>

<pkfield name="BELNR"/>

<pkfield name="GJAHR"/>

</doctable>

</docspec>

<table name="RBKP_NEWER" classtouse="com.idsscheer.

ppm.xmlextractortools.extractor.

sap2ppm.ZTableConcatFKs_sap2ppm">

<pkfield name="MANDANT" fktablename="MANDANT"

fkfieldname="MANDANT">

<postfix>

<value> test </value>

</postfix>

</pkfield>

<pkfield name="BELNR" fktablename="RBKP"

fkfieldname="BELNR"/>

<pkfield name="GJAHR" fktablename="RBKP"

fkfieldname="GJAHR"/>

<fieldtoread name="AWKEY_GENERATED"/>

</table>

</configuration>

</xmlextractor_tableconfiguration>

Ein System-Event, das beim Auslesen aus dem Mandanten 800 erzeugt wird, könnte bspw. wie folgt aussehen:

...

<event>

<attribute type="RBKP-BELNR">5105601204</attribute>

<attribute type="RBKP-GJAHR">2005</attribute>

<attribute type="RBKP_NEWER-AWKEY_GENERATED"

>800 test 51056012042005</attribute>

</event>

...

Das neu erzeugte Attribut RBKP_NEWER-AWKEY_GENERATED kann anschließend wie jedes andere SAP-Tabellenfeld in weiteren table-Konfigurationen referenziert werden.

Beispiel

<?xml version="1.0" encoding="ISO-8859-1"?>

<!DOCTYPE xmlextractor_tableconfiguration SYSTEM

'xmlextractor_tableconfiguration.dtd'>

<xmlextractor_tableconfiguration>

<configuration name="SD">

<docspec>

<doctable name="RBKP">

<condition logicaloperator="eq" fieldname="GJAHR">

<value>2005</value>

</condition>

<pkfield name="BELNR"/>

<pkfield name="GJAHR"/>

</doctable>

</docspec>

<table name="RBKP_NEW" classtouse="com.idsscheer.

ppm.xmlextractortools.extractor.

sap2ppm.ZTableConcatFKs_sap2ppm">

<pkfield name="BELNR" fktablename="RBKP"

fkfieldname="BELNR"/>

<pkfield name="GJAHR" fktablename="RBKP"

fkfieldname="GJAHR"/>

<fieldtoread name="AWKEY_GENERATED"/>

</table>

<table name="BKPF">

<pkfield name="AWKEY" fktablename="RBKP_NEW"

fkfieldname="AWKEY_GENERATED"/>

<fieldtoread name="BELNR"/>

</table>

</configuration>

</xmlextractor_tableconfiguration>

Ein mit dieser Konfiguration erzeugtes System-Event könnte bspw. wie folgt aussehen:

...

<event>

<attribute type="RBKP-BELNR">5105601204</attribute>

<attribute type="RBKP-GJAHR">2005</attribute>

<attribute type="RBKP_NEW-AWKEY_GENERATED"

>51056012042005</attribute>

<attribute type="BKPF-BELNR">5100004691</attribute>

</event>

...