Show TOC

RegeltypLocate this document in the navigation structure

Der Regeltyp bestimmt, ob und wie ein Merkmal/eine Kennzahl bzw. ein Datenfeld/ein Schlüsselfeld in das Ziel fortgeschrieben wird.

Direkte Zuweisung:

Das Feld wird direkt aus dem gewählten Quell-InfoObject gefüllt. Wird Ihnen vom System kein Vorschlag für ein Quell-InfoObject gemacht, können Sie ein Quell-InfoObject des gleichen Typs (Betrag, Zahl, Integer, Menge, Float, Zeit) zuordnen oder eine Routine anlegen.

Wenn Sie ein Quell-InfoObject gleichen Typs zuordnen, das eine andere Währung hat als das Ziel-InfoObject, so müssen Sie die Quellwährung über eine Umrechnungsart in die Zielwährung umrechnen, oder die Währung aus der Quelle übernehmen.

Wenn Sie ein Quell-InfoObject gleichen Typs zuordnen, das eine andere Mengeneinheit hat als das Ziel-InfoObject, so müssen Sie die Quellmengeneinheit über eine Umrechnungsart in die Zielmengeneinheit umrechnen, oder die Einheit aus der Quelle übernehmen.

Konstante:

Das Feld wird direkt mit dem eingegebenen Wert gefüllt.

Eine Ausnahme ist das InfoObject 0RECORDMODE, für das vom System Konstante ausgewählt wird, aber kein Wert nötig ist. Die Konstante wird in diesem Fall für die Deltaverwaltung (After-Images) bei DataStore-Objekten oder InfoObjects als InfoProvider benötigt. Ansonsten werden Sätze nicht gelöscht. Falls Ihre DataSource ein passendes Feld für 0RECORDMODE liefert, dann können Sie statt dessen dieses direkt zuweisen.

Formel:

Die Fortschreibung des InfoObjects erfolgt durch einen mit einer Formel ermittelten Wert.

Weitere Informationen finden Sie unter Transformationsbibliothek und Formeleditor.

Stammdaten nachlesen:

Die Fortschreibung des InfoObjects erfolgt durch Nachlesen in der Stammdatentabelle eines Merkmals, das in der Quelle mit einem Schlüssel und einem Wert enthalten ist und das entsprechende InfoObject als Attribut enthält. Über den Schlüssel werden die Attribute und ihre Werte ermittelt, diese werden dann zurückgegeben.

Hinweis

Im Ziel befindet sich das Merkmal Finanzkreis, das nicht als Merkmal in der Quelle vorkommt. In der Quelle befindet sich jedoch ein Merkmal (z.B. Kostenstelle), das das Merkmal Finanzkreis als Attribut hat. Sie können das Attribut Finanzkreis aus der Stammdatentabelle nachlesen und damit das Merkmal Finanzkreis im Ziel füllen.

Hinweis

Es ist nicht möglich, rekursiv nachzulesen, also weitere Attribute der Attribute nachzulesen. Dazu müssen Sie Routinen verwenden.

Wenn sich Stammdaten geändert haben, so müssen Sie den Änderungslauf durchführen. Denn beim Stammdatennachlesen wird die aktive Version gelesen. Ist diese nicht vorhanden, kommt es zu einem Fehler.

Wenn das Attribut zeitabhängig ist, müssen Sie zusätzlich bestimmen, zu welchem Zeitpunkt nachgelesen werden soll: Zum jeweils aktuellen Datum (sy-datum), zu Beginn oder Ende einer Periode (die durch ein Zeitmerkmal der InfoSource bestimmt wird), oder zu einem konstanten Datum, das Sie direkt eingeben. Standardmäßig wird sy-datum verwendet.

Aus DataStore-Objekt nachlesen:

Die Fortschreibung des InfoObjects erfolgt ähnlich wie beim Stammdatennachlesen durch Nachlesen eines Merkmals in einem DataStore-Objekt. Es gibt allerdings keine Zeitabhängigkeit. Es werden sowohl Daten aus der Datenbank nachgelesen als auch Daten, die in einen Nearline-Storage ausgelagert wurden. Falls ein Nearline-Storage vorhanden ist, dann prüft das System automatisch, ob dort Daten vorhanden sind und liest diese nach.

Das Nachlesen von Stammdaten und DataStore-Objekten ist Performance-optimiert. Die disjunkten Schlüssel eines kompletten Datenpakets werden durch einen Massenzugriff von der Datenbank gelesen und für die Weiterverarbeitung gepuffert. Damit ist eine kundeneigene Pufferung über eine Startroutine nicht notwendig, da die Performance vergleichbar ist.

Zum Nachlesen muss im Datenteil des DataStore-Objekts das Zielfeld enthalten sein. Die Quellfelder werden dann anhand des kompletten Schlüssels ermittelt. Die Zuweisung funktioniert nur über InfoObjects: wenn die Quelle eine DataSource ist, dann müssen Sie dem Feld ein InfoObject zuweisen.

Hinweis

Wenn im DataStore-Objekt mehr Schlüsselfelder als in der Quelle vorhanden sind, dann kann es zu Performance-Einbußen kommen.

Hinweis

Schreiboptimierte DataStore-Objekte benötigen einen semantischen Schlüssel. Hier ist die Eindeutigkeit der Daten wichtig, sonst kommt es zu Performance-Problemen.

Sie können einstellen, wie sich das System verhalten soll, wenn das Nachlesen fehlschlägt: es kann entweder eine Fehlermeldung ausgegeben werden oder es kann eine Konstante mitgegeben werden.

Routine:

Das Feld wird durch eine von Ihnen geschriebene Transformationsroutine gefüllt.

Hinweis

Bei DataStore-Objekten und InfoObjects: Für Datenfelder, die durch Überschreiben fortgeschrieben werden, kann der Returncode in der Routine nicht verwendet werden. Wenn Sie bestimmte Sätze nicht fortschreiben wollen, so können Sie diese in der Startroutine löschen.

Falls Sie für dasselbe Merkmal verschiedene Regeln für verschiedene Kennzahlen / Datenfelder erzeugen, so kann aus einem Datensatz der Quelle für jede Kennzahl ein eigener Datensatz erzeugt werden.

Bei InfoCubes: Sie können auch Routine mit Einheit auswählen. Sie erhalten in der Routine dann zusätzlich den Rückgabeparameter 'UNIT'. Darin können Sie z.B. die gewünschte Einheit der Kennzahl ablegen, also beispielsweise 'ST'. Diese Option können Sie nutzen, um z.B. die in der Quelle vorhandene Einheit KG im Ziel in Tonnen umzurechnen.

Wenn Sie die Zielkennzahl aus einer Transformationsroutine füllen, so muss die Währungsumrechnung über die Transformationsroutine stattfinden, d.h. eine automatische Umrechnung steht Ihnen nicht zur Verfügung.

Zeitfortschreibung:

Bei der Zeitfortschreibung steht Ihnen eine automatische Zeitkonvertierung wie auch eine Zeitverteilung zur Verfügung.

Direkte Fortschreibung: Das System bietet Ihnen eine automatische Zeitkonvertierung.

Zeitkonvertierung:

Mit Hilfe der automatischen Zeitkonvertierung können Zeitmerkmale der Quelle in Zeitmerkmale des Ziels fortgeschrieben werden. Für DataStore-Objekte steht diese Funktion nicht zur Verfügung, da Zeitmerkmale wie normale Datenfelder behandelt werden. Das System bietet Ihnen nur die Zeitmerkmale an, zu denen eine automatische Zeitkonvertierungsroutine existiert.

Zeitverteilung:

Sie können Zeitmerkmale mit Zeitverteilung fortschreiben. Dabei werden alle addierbaren Kennzahlen auf entsprechende kleinere Zeiteinheiten aufgeteilt. Wenn die Quelle ein Zeitmerkmal (beispielsweise 0CALMONTH) enthält, das gröber ist als ein Zeitmerkmal des Ziels (beispielsweise 0CALWEEK), können Sie diese Merkmale in der Regel miteinander verbinden. Dann führt das System bei der Transformation eine Zeitverteilung durch.

Beispiel

Beispielsweise teilen Sie den Kalendermonat 07.2001 auf die Wochen 26.2001, 27.2001, 28.2001, 29.2001, 30.2001, 31.2001 auf. Jede addierbare Kennzahl wird dann für die Woche 26.2001 1/31 des ursprünglichen Werts, für die Wochen 27, 28, 29, 30 jeweils 7/31 und für die Woche 31 genau 2/31 des ursprünglichen Werts erhalten.

Das Beispiel wird deutlicher, wenn Sie dazu den Kalender vergleichen:

Die Zeitverteilung gilt immer für alle Kennzahlen.

Initial:

Das Feld wird nicht gefüllt. Es bleibt leer.

Keine Transformation:

Die Kennzahlen werden nicht in den InfoProvider fortgeschrieben. Wenn eine Endroutine besteht, dann werden alle Felder, die in der Feldliste der Endroutine enthalten sind, an das Datenziel übergeben.

Mengeneinheiten- und Währungsumrechnung:

Sie können Datensätze in die Mengeneinheit bzw. die Währung im Ziel der Transformation umrechnen.

Weitere Informationen finden Sie unter

Berechnung 0RECORDMODE für ODP

Wenn Sie als Quelle für Ihre Transformation eine DataSource haben, die über einen Operational Data Provider (ODP) versorgt wird, und als Ziel ein DataStore-Object oder InfoObject, dann benötigen Sie für die Quell-Felder ODQ_CHANGEMODE und ODQ_ENTITYCNTR den Regeltyp Berechnung 0RECORDMODE für ODP. Über diesen Regeltyp kann daraus das Feld 0RECORDMODE berechnet werden.

Wenn Sie Deltas aus einem ODP laden, der nicht nur eine Image-Art (z.B. After-Images, Delete-Images und New-Images) liefert, dann wird dieses Änderungsverhalten vom ODP über die Felder ODQ_CHANGEMODE und ODQ_ENTITYCNTR zur Verfügung gestellt. Aus diesen Feldern muss für die Verwendung im BW-System das Feld 0RECORDMODE berechnet werden.