Folgender Dateiauszug zeigt die Tabellenkonfiguration SD_C zum Auslesen von Daten aus einem SAP-SD-System:
...
<xmlextractor_tableconfiguration>
<configuration name="SD_C">
<docspec>
<docreftable name="VBAK">
<booleancondition>
<condition fieldname="ERDAT#-#ERZET"
logicaloperator="creationtimestamp">
<value>yyyyMMdd</value>
<value>HHmmss</value>
</condition>
<condition fieldname="VBTYP"
logicaloperator="eq">
<value>C</value>
</condition>
</booleancondition>
<pkfield name="VBELN" />
</docreftable>
<doctable name="Auftraege" tablename="VBAP">
<pkfield name="VBELN" fktablename="VBAK"
fkfieldname="VBELN"/>
<pkfield name="POSNR" />
<fieldtoread name="ERDAT"/>
<fieldtoread name="ERZET"/>
<fieldtoread name="MATNR">
<textref tablename="MAKT" reffieldname="MATNR"
textfieldname="MAKTX" langfieldname="SPRAS"/>
</fieldtoread>
<fieldtoread name="KONDM">
<textref tablename="T178T" reffieldname="KONDM"
textfieldname="VTEXT" langfieldname="SPRAS"/>
</fieldtoread>
<fieldtoread name="SPART">
<textref tablename="TSPAT" reffieldname="SPART"
textfieldname="VTEXT" langfieldname="SPRAS"/>
</fieldtoread>
<fieldtoread name="WERKS">
<textref tablename="T001W" reffieldname="WERKS"
textfieldname="NAME1"/>
</fieldtoread>
<fieldtoread name="CHARG"/>
<fieldtoread name="PSTYV"/>
<fieldtoread name="ERNAM"/>
<fieldtoread name="NETWR"/>
</doctable>
</docspec>
<table name="VBAK">
<pkfield name="VBELN" fktablename="Auftraege"
fkfieldname="VBELN"/>
<fieldtoread name="VTWEG">
<textref tablename="TVTWT" reffieldname="VTWEG"
textfieldname="VTEXT" langfieldname="SPRAS"/>
</fieldtoread>
<fieldtoread name="VKORG">
<textref tablename="TVKOT" reffieldname="VKORG"
textfieldname="VTEXT" langfieldname="SPRAS"/>
</fieldtoread>
<fieldtoread name="VDATU"/>
<fieldtoread name="VKBUR">
<textref tablename="TVKBT" reffieldname="VKBUR"
textfieldname="BEZEI" langfieldname="SPRAS"/>
</fieldtoread>
<fieldtoread name="VKGRP">
<textref tablename="TVGRT" reffieldname="VKGRP"
textfieldname="BEZEI" langfieldname="SPRAS"/>
</fieldtoread>
<fieldtoread name="VBTYP"/>
<fieldtoread name="AUART"/>
</table>
<table name="MARA">
<pkfield name="MATNR" fktablename="Auftraege"
fkfieldname="MATNR"/>
<fieldtoread name="MATNR"/>
<fieldtoread name="MTART">
<textref tablename="T134T" reffieldname="MTART"
textfieldname="MTBEZ" langfieldname="SPRAS"/>
</fieldtoread>
</table>
</configuration>
</xmlextractor_tableconfiguration>
Die Tabellenkonfiguration SD_C enthält folgende Tabellen:
Belegkopftabelle
...
<docreftable name="VBAK">
<booleancondition>
<condition fieldname="ERDAT#-#ERZET"
logicaloperator="creationtimestamp">
<value>yyyyMMdd</value>
<value>HHmmss</value>
</condition>
<condition fieldname="VBTYP"
logicaloperator="eq">
<value>C</value>
</condition>
</booleancondition>
<pkfield name="VBELN" />
</docreftable>
...
Identifizierer und Name der Belegkopftabelle des R/3-Systems ist jeweils VBAK. Es werden alle Auftragsbelegköpfe (VBTYP=C) des Zeitraums gelesen, der in der Kommandozeile angegeben wurde. Die value-Elemente der Bedingungsoperatoren creationtimestamp legen das Format der angegebenen Zeitstempel fest.
Name der Primärschlüsseltabellenspalte ist VBELN. Für jeden unterschiedlichen Feldwert VBELN werden aus der verknüpften Belegtabelle Datensätze gelesen, für die VBELN denselben Wert wie in der Belegkopftabelle hat.
Belegtabelle
...
<doctable name="Auftraege" tablename="VBAP">
<pkfield name="VBELN" fktablename="VBAK"
fkfieldname="VBELN"/>
<pkfield name="POSNR" />
<fieldtoread name="ERDAT"/>
<fieldtoread name="ERZET"/>
<fieldtoread name="MATNR">
<textref tablename="MAKT" reffieldname="MATNR"
textfieldname="MAKTX" langfieldname="SPRAS"/>
</fieldtoread>
<fieldtoread name="KONDM">
<textref tablename="T178T" reffieldname="KONDM"
textfieldname="VTEXT" langfieldname="SPRAS"/>
</fieldtoread>
<fieldtoread name="SPART">
<textref tablename="TSPAT" reffieldname="SPART"
textfieldname="VTEXT" langfieldname="SPRAS"/>
</fieldtoread>
<fieldtoread name="WERKS">
<textref tablename="T001W" reffieldname="WERKS"
textfieldname="NAME1"/>
</fieldtoread>
<fieldtoread name="CHARG"/>
<fieldtoread name="PSTYV"/>
<fieldtoread name="ERNAM"/>
<fieldtoread name="NETWR"/>
</doctable>
...
Für die Belegtabelle VBAP wird der Identifizierer Auftraege vergeben. Durch die in der Zeile
<pkfield name="VBELN" fktablename="VBAK" fkfieldname="VBELN"/>
angegebene Fremdschlüsselbeziehung ist die Tabelle mit der Belegkopftabelle verknüpft. Wenn nicht anders angegeben, werden Fremdschlüsselbeziehungen auf Basis gleicher Feldwerte hergestellt (siehe Kap. Vergleich von Fremdschlüsselbeziehungen). Im vorliegenden Beispiel werden nur Tabellenzeilen gelesen, für die der Vergleich der Feldwerte VBAP-VBELN und VBAK-VBELN gleiche Werte liefert. Der Primärschlüssel wird aus den Spalten VBELN und POSNR zusammengesetzt.
Für jede gelesene Tabellenzeile wird in der XML-Ausgabedatei ein System-Event (XML-Element
event) erzeugt. Für jedes XML-Element fieldtoread wird eine Zeile der Form
<attribute type="...">...</attribute>
in die Ausgabedatei geschrieben.
Die in der doctable-Definition angegebenen Primärschlüsselfelder (pkfield) werden automatisch ausgelesen. Sie müssen für sie keine fieldtoread-Elemente angeben.
Bei einigen fieldtoread-Elementen wird zusätzlich zum gelesenen Datenfeldwert der aus der referenzierten
Tabelle (XML-Element textref) gelesene Wert geschrieben. Die optionale Angabe langfieldname liest den Text des Datenfeldes sprachabhängig aus.
Der vollständige Quellsystemattributtyp setzt sich zusammen aus dem Identifizierer
der Belegkopftabelle (doctable name), dem Feldnamen (fieldtoread name) und dem Namen des referenzierten Textfeldes (textref ... textfieldname). Der Typ des Quellsystemattributes des ersten gelesenen fieltoread-Elements mit referenzierter Tabelle sieht folgendermaßen aus:
<attribute type="Auftraege-MATNR-MAKTX">...</attribute>
Datentabellen
...
<table name="VBAK">
<pkfield name="VBELN" fktablename="Auftraege"
fkfieldname="VBELN"/>
<fieldtoread name="VTWEG">
<textref tablename="TVTWT" reffieldname="VTWEG"
textfieldname="VTEXT" langfieldname="SPRAS"/>
</fieldtoread>
<fieldtoread name="VKORG">
<textref tablename="TVKOT" reffieldname="VKORG"
textfieldname="VTEXT" langfieldname="SPRAS"/>
</fieldtoread>
<fieldtoread name="VDATU"/>
<fieldtoread name="VKBUR">
<textref tablename="TVKBT" reffieldname="VKBUR"
textfieldname="BEZEI" langfieldname="SPRAS"/>
</fieldtoread>
<fieldtoread name="VKGRP">
<textref tablename="TVGRT" reffieldname="VKGRP"
textfieldname="BEZEI" langfieldname="SPRAS"/>
</fieldtoread>
<fieldtoread name="VBTYP"/>
<fieldtoread name="AUART"/>
</table>
<table name="MARA">
<pkfield name="MATNR" fktablename="Auftraege"
fkfieldname="MATNR"/>
<fieldtoread name="MATNR"/>
<fieldtoread name="MTART">
<textref tablename="T134T" reffieldname="MTART"
textfieldname="MTBEZ" langfieldname="SPRAS"/>
</fieldtoread>
</table>
...
Über die Fremdschlüsselbeziehungen auf die Primärschlüsselfelder VBELN und MATNR der Tabelle Auftraege werden aus den Datentabellen VBAK und MARA ergänzende Informationen ausgelesen.