Konfiguration eines zeit- bzw. wertversetzten Auslesevorgangs

Die in diesem Kapitel beschriebenen Funktionalitäten werden ausschließlich von den beiden Prozessextraktoren PPM Process Extractor JDBC-2-PPM und PPM Process Extractor SAP-2-PPM und nur bei Verwendung einer Datenquellenkonfiguration unterstützt.

Für die zeitbasierte Extraktion können Sie in der Datenquellenkonfiguration einen Zeitwert angeben. Der Wert wird bei Ausführung des entsprechenden Kommandozeilenprogramms ohne Endzeitparameter (-enddate bzw. -endtime) vom aktuellen Ausführungszeitpunkt als Endzeitpunkt abgezogen. Die Datenextraktion wird um den angegebenen Wert (in Sekunden) früher beendet.

Ohne Angabe eines Zeitversatzwertes kann es vorkommen, dass bereits angelegte, aber noch nicht fest in die auszulesende Datenbank geschriebene Datensätze aufgrund ihres rückversetzten Zeitstempels in keinem von zwei aufeinanderfolgenden Extraktionsvorgängen (vgl. Fortlaufendes automatisiertes Auslesen) ausgelesen werden. Dies können Sie durch die Angabe eines Versatzwertes verhindern.

Beispiel (SAP-Datenquelle)

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

<!DOCTYPE datasource SYSTEM "datasource.dtd">

<datasource name="SAP" type="MYSAP" lastreaddate="19700101"

lastreadtime="000000" readoffset="86400">

<description name="default_description" language="en"/>

<description name="default_description" language="de">
SAP
</description>

...

</datasource>

Mit dem XML-Attribut readoffset ist ein Versatzwert von 86400 Sekunden angegeben. Bei Aufruf des Kommandozeilenprogramms mit

runjdbc2ppm -datasource SAP.xml

endet der Auslesevorgang einen Tag (86400 Sekunden) vor dem aktuellen Ausführungszeitpunkt. Ist der Ausführungszeitpunkt des Programms bspw. der 11.08.08 9:48:05 Uhr, endet der Extraktionsvorgang am 10.08.08 um 9:48:05 Uhr.

...

I: 11.08.08 09:48:06: [XML] Lese Daten mit Startdatum/-zeit 19700101/000000 und Enddatum/-zeit 20080810/094805...

...

Der zeitlich nach hinten versetzte Wert des letzten Auslesezeitpunkts wird als Anfangszeitpunkt der nächsten Datenextraktion in die Datenquellendatei geschrieben.

Für das bedingte Auslesen mittels eines Ganzzahlkriteriums (logischer Operator valueconstraint, siehe Auslesen mit Bedingungen) kann analog ein Versatzwert angegeben werden, der bei der Programmausführung vom Startwert (lastreadvalue aus der Datenquellendatei) subtrahiert wird. Sollte sich aufgrund Ihrer Angaben ein negativer Wert für das Ganzzahlkriterium ergeben, wird dieser wie ein positiver Wert behandelt.

Ein in der Datenquellenkonfiguration angegebener Versatzwert wird nur dann bei der Datenextraktion berücksichtigt, wenn der Endzeitpunkt bzw. die Untergrenze des Ganzzahlkriteriums nicht explizit angegeben wird. 

Tipp

Sie können auf einfache Weise Versatzwerte in PPM Customizing Toolkit in der Modulgruppe Mandant unter Datenquellenverwaltung konfigurieren. Geben Sie die Werte als zusätzliche Angaben zum letzten Auslesezeitpunkt bzw. zum letzten ausgelesenen Wert in den Komponenten der betreffenden Datenquelle an. 

Angabe einer Zeitzone

Wenn Sie in der Kommandozeile den Endzeitpunkt nicht angegeben haben (Argumente -enddate bzw. -endtime), wird die aktuelle Zeit des lokalen Rechners standardmäßig als Endzeitpunkt verwendet. Dieser Endzeitpunkt wird bei den Operatoren creationtimestamp, date_creationtimestamp bzw. char_creationtimestamp verwendet, um die auszulesende Datenmenge einzuschränken. Wenn das in diesen Operatoren referenzierte Datenfeld Zeitstempel enthält, die einer anderen Zeitzone zugeordnet sind, können Sie diese Zeitzone im XML-Attribut sourcefieldtimezone angeben (z. B. Australia/Canberra). Bei der folgenden Datenextraktion wird die lokale Zeit des Rechners vor der Extraktion in die angegebene Zeitzone umgerechnet und nach erfolgreicher Extraktion als letzter Extraktionszeitpunkt (XML-Attribute lastreaddate und lastreadtime) in der Datenquelle gespeichert.

Wenn im XML-Attribut sourcefieldtimezone keine gültige Zeitzone, oder das Attribut selbst nicht angegeben ist, wird keine Zeitzonenumrechnung des Endzeitpunktes durchgeführt. Mittels CTK kann die Zeitzone komfortabel über die Oberfläche gewählt werden.

Beispiele Zeitzonen

Africa/Dakar, Africa/Johannesburg, Australia/Sydney, America/Denver, America/Los_Angeles, America/Mexico_City, Canada/Central, Europe/Berlin, Europe/London, Mexico/General, US/Central, US/Hawaii