Ansicht
Dokumentation

ABENDDIC_CLASSICAL_VIEWS - DDIC CLASSICAL VIEWS

ABENDDIC_CLASSICAL_VIEWS - DDIC CLASSICAL VIEWS

General Data in Customer Master   General Material Data  
Diese Dokumentation steht unter dem Copyright der SAP AG.
SAP E-Book

Klassische Views

Eine klassische View oder kurz View ist ein Repository-Objekt des ABAP Dictionary, die für vorhandene Datenbanktabellen und deren Felder im formularbasierten Werkzeug ABAP Dictionary der ABAP Workbench definiert wird. Neben den klassischen Views verwaltet das ABAP Dictionary auch die CDS-Views der ABAP Core Data Services, die über die CDS DDL in DDL-Quelltexten definiert werden.

Die Definition einer klassischen View besteht aus

  • Basistabellen
Eine Liste von Datenbanktabellen, auf welche die View zugreift. Mehrere Tabellen werden über Joins verknüpft.
  • View-Feldern
Einer Liste von Tabellenfeldern der Basistabellen, welche die Struktur der View definiert. Einem View-Feld kann außer bei Projektions-Views ein anderes Datenelement zugeordnet werden, als das, welches für das entsprechende Tabellenfeld der Basistabelle verwendet wird. Voraussetzung ist, dass der Typ des Tabellenfelds über ein Datenelement mit einer Domäne definiert ist und dass sich das neue Datenelement auf die gleiche Domäne bezieht. Dies erlaubt es, die semantischen Eigenschaften des View-Felds an die View anzupassen.
  • Schlüssel
Ein aus Schlüsselfeldern zusammengesetzter Schlüssel der View. Der Schlüssel einer View wird vom Werkzeug aus den Schlüsselfeldern der Basistabellen und den Join-Bedingungen abgeleitet. Alle Schlüsselfelder müssen zusammenhängend am Anfang stehen. Felder die eigentlich nicht zum Schlüssel gehören, aber zwischen den Schlüsselfeldern stehen, werden deshalb auch als Schlüsselfelder markiert. Alle durch die View bestimmten Zeilen müssen bezüglich des Schlüssels eindeutig sein. Wenn kein Schlüssel mit dieser Eigenschaft bestimmt werden kann, sind alle Felder der View Schlüsselfelder, was sich ungünstig auf die Performance auswirken kann. Bezüglich Zugriffen auf die View über verhält sich ihr Schlüssel wie der Schlüssel einer Datenbanktabelle.
  • Join-Bedingungen
Bedingungen für die Verknüpfung mehrerer Basistabellen über Inner oder Outer Joins. In einer Join-Bedingung werden zwei Felder aus Basistabellen der View miteinander auf Gleichheit verglichen. Werden keine Join-Bedingungen für jeweils zwei Basistabellen angegeben, so wird über die View das Kreuzprodukt der Basistabellen selektiert. Jede Zeile aus einer Tabelle wird mit jeder Zeile der anderen Tabelle kombiniert. Jede Join-Bedingung selektiert aus dem Kreuzprodukt die passenden Zeilen.
  • Selektionsbedingungen
Zur Einschränkung der gelesenen Zeilen auf bestimmte Werte von View-Feldern oder anderer Felder.
  • Als Vergleichsoperatoren sind =, &lt;&gt;, >=, >, <=, &lt;, LIKE und NOT LIKE erlaubt.

  • Als Vergleichswerte sind je nach Datentyp des View-Felds konstante Texte und Zahlen erlaubt. Für Pflege- und Help-Views können auch Systemfelder über SYST-... oder SY-... angegeben werden.

  • Mehrere beliebige Vergleiche können über AND und mehrere Vergleiche für das gleiche Feld können mit OR verknüpft werden, wobei hier OR stärker bindet als AND.

Es können folgende klassische Views unterschieden werden, von denen nur die Datenbank-Views als SQL-Views auf der Datenbank ausgeprägt werden:

Views haben wie Datenbanktabellen einen beschreibenden Kurztext und es kann eine Dokumentation angelegt werden. Ein sogenannter Pflegestatus bestimmt, ob auf eine View nur lesend oder ob auch Daten über die View eingefügt bzw. geändert werden können.

Hinweise

  • Projektionen können sowohl mit Datenbank-Views als auch mit den speziellen Projektions-Views verwirklicht werden.
  • Als Basistabellen klassischer Views können nur Datenbanktabelle aber keine anderen Views angegeben werden.
  • In kann nur auf Views zugegriffen werden, deren Schlüsselfelder zusammenhängend am Anfang stehen.
  • Auf Views, bei denen alle Felder Schlüsselfelder sind, sollte nicht schreibend mit UPDATE FROM oder MODIFY FROM zugegriffen werden. Für Datenbank-Views führt dies zu einer Warnung von der Syntaxprüfung, für Projektions-Views zu einem Syntax- oder Laufzeitfehler.
  • Die Mandantenabhängigkeit einer klassischen View, auf die über zugegriffen werden kann (Datenbank-View, Projektions-View), wird wie bei Datenbanktabellen durch eine erste Spalte vom eingebauten Dictionary-Typ CLNT bestimmt. Die Mandantenabhängigkeit der Basistabellen spielt keine Rolle.
  • CDS-Views, die über die CDS DDL der ABAP Core Data Services in einem DDL-Quelltext definiert werden, umfassen die Möglichkeiten der klassischen Views und gehen über diese hinaus. Auf CDS-Views kann aber nur lesend zugegriffen werden, während manche klassischen Views auch ändernde Zugriffe erlauben.





BAL_S_LOG - Application Log: Log header data   RFUMSV00 - Advance Return for Tax on Sales/Purchases  
Diese Dokumentation steht unter dem Copyright der SAP AG.

Length: 8546 Date: 20240523 Time: 153207     sap01-206 ( 128 ms )