Projektion 

Die Gesamtheit der Daten eines Infotypen sind für den Zeitraum, für den sie Gültigkeit besitzen, auf der Datenbank hinterlegt.

Ändern sich Daten eines oder mehrerer Felder des Infotypen, dann wird ab dem Datum der Änderung für alle Datenfelder des Infotypen ein neuer Satz mit einem neuen Gültigkeitszeitraum gebildet.

Damit tritt der Fall ein, daß die Datenfelder, die nicht von Änderungen betroffen sind, über mehrere Infotypsätze und Gültigkeitszeiträume mit den gleichen Daten gefüllt sind.

Aus logischer Sicht sind diese Felder für einen Zeitraum gültig, der sich über alle Infotypsätze erstreckt, in denen sich ihr Feldinhalt nicht ändert.

 

 

Aus dieser logischen Perspektive hat jedes Feld eines Infotypen seinen eigenen Gültigkeitszeitraum.

Dies sei an Hand des folgenden Sachverhaltes veranschaulicht:

Ein Mitarbeiter ist seit drei Jahren in drei verschiedenen Personalbereichen als Ausbilder tätig.

Zur organisatorischen Zuordnung liegen folgende Daten vor:

Januar 1992 - Dezember 1992: Ausbilder /Personalbereich 1

Januar 1993 - Dezember 1993: Ausbilder /Personalbereich 2

Januar 1994 - Dezember 1994: Ausbilder /Personalbereich 3

Wenn für eine Auswertung lediglich der Zeitraum seiner Tätigkeit wichtig ist, nicht aber seine Personalbereichszugehörigkeit, dann gilt folgendes:

Januar 1992 - Dezember 1994: Ausbilder

Aus physischer Sicht liegen drei, aus logischer Sicht liegt ein Infotypsatz vor.

Um Auswertungen aussagekräftig zu gestalten und um Redundanzen zu vermeiden, betrachten wir im Bedarfsfall die Infotypsätze aus logischer Sicht.

Wir wählen aus, welche Felder des Infotypen für die Auswertung von Bedeutung sind und lassen die Daten der übrigen Felder außer Betracht.

Die Daten der restlichen Felder werden damit für die Auswertung ungültig, da z.B. im obengenannten Fall nicht mehr eindeutig entscheidbar ist, zu welchem Personalbereich der Mitarbeiter im Zeitraum der Jahre 1992 bis 1994 gehört.

Eine solche Sicht auf den Gültigkeitszeitraum einer Gruppe von Feldern eines Infotypen heißt Projektion.

In der Programmierung ist die Projektion wie folgt geschlüsselt:

PROVIDE <Feld_1> <Feld_2> <Feld_n> FROM Pnnnn
  BETWEEN PN-BEGDA AND PN-ENDDA.

Auch für die Projektion gilt, daß die Infotypdaten zu jedem Zeitpunkt auf der Zeitachse eindeutig vorliegen müssen. Wenn sich die Infotypsätze zeitlich überschneiden, lassen sich die Daten nicht eindeutig einem Zeitraum zuordnen, folglich ist eine Projektion auf einen Infotypen mit Zeitbindung drei nicht möglich.

Das obengenannte Beispiel einer Projektion auf die Tätigkeit eines Mitarbeiters ist wie folgt in einem Report realisiert:

REPORT RPABAP04.
TABLES: PERNR.
INFOTYPES: 0001.
GET PERNR.
  PROVIDE STELL FROM P0001 BETWEEN PN-BEGDA AND PN-ENDDA.
    WRITE: / PERNR-PERNR, P0001-STELL, P0001-BEGDA,
             P0001-ENDDA.
  ENDPROVIDE.

Die logische Gültigkeit für den Tätigkeitszeitraum steht in den Feldern BEGDA und ENDDA des Infotypen bereit.