Ansicht
Dokumentation
ABENCDS_DEFINE_VIEW_ENTITY_BUFFER - CDS DEFINE VIEW ENTITY BUFFER
General Material Data ROGBILLS - Synchronize billing plansDiese Dokumentation steht unter dem Copyright der SAP AG.
- DEFINE VIEW ENTITY BUFFER
DEFINE VIEW ENTITY BUFFER ON cds_view_entity
LAYER CORE
$| LOCALIZATION
$| INDUSTRY
$| PARTNER
$| CUSTOMER
TYPE SINGLE
$| ${GENERIC NUMBER OF KEY ELEMENTS number$}
$| FULL
$| NONE
Wirkung
Definiert einen CDS-Entitätspuffer in der CDS DDL.
Ein CDS-Entitätspuffer ist ein CDS-Tuning-Objekt mit dem eine schichtspezifische Pufferungsart für die Tabellenpufferung einer CDS-View-Entität cds_view_entity angegeben wird. Als Voraussetzung muss die Definition der CDS-View-Entität folgende Annotation enthalten:
@AbapCatalog.entityBuffer.definitionAllowed:true.
Falls ein CDS-Entitätspuffer für eine CDS-View-Entität aktiv ist, darf die Annotation dort nicht entfernt werden.
Die Pufferungsart wird wie folgt gesetzt:
- Mit TYPE SINGLE wird die Einzelsatzpufferung definiert.
- Mit TYPE GENERIC wird die generische Pufferung definiert. Die Anzahl der berücksichtigten Schlüsselfelder muss durch number hinter NUMBER OF KEY ELEMENTS gesetzt werden. number muss ein positives numerisches Literal sein, das nicht größer als die Anzahl Schlüsselelemente der CDS-View-Entität cds_view_entity ist.
- Mit TYPE FULL wird die vollständige Pufferung definiert.
Mit dem Zusatz LAYER wird die Schicht definiert, für die die Pufferungsart gültig ist. Bei mehreren Entitätspuffern für eine CDS-View-Entität ermittelt die Schicht die Priorität. Die Priorität wird wie folgt ermittelt, von niedrig bis hoch:
- CORE -
- LOCALIZATION - SAP-Anwendungskomponente
- INDUSTRY - SAP-Branchenlösung
- PARTNER - Partner
- CUSTOMER - Kunde
Die Definition mehrerer Entitätspuffer mit der gleichen Schicht für eine CDS-View-Entität ist nicht möglich.
Mit dem Zusatz TYPE NONE kann die Pufferung explizit ausgeschaltet werden. Dies ist vor allem zum Ausschalten der in einer niedrigeren Schicht definierten Pufferung in einer höheren Schicht nützlich.
Hinweise
- Der Name eines CDS-Entitätspuffers spiegelt sich nicht in seiner Definition wider and kommt nur als Name des Repository-Objektes in ADT vor.
- Die mit LAYER angegebenen Schichten sind dieselben wie in der Definition einer CDS-Metadatenerweiterung mit ANNOTATE ENTITY.
- Nur die explizit definierte Schlüsselfelder einer CDS-Entität müssen hinter NUMBER OF KEY ELEMENTS berücksichtigt werden. Anders als bei DDIC-basierten CDS-Views ist bei mandantenabhängigen Views keine Mandantenspalte zu berücksichtigen.
- Ein CDS-Entitätspuffer erfüllt die gleiche Aufgabe wie die technischen Einstellungen einer DDIC-Datenbanktabelle. Beides darf getrennt von der gepufferten Entität aktiviert und transportiert werden. Im Vergleich zu der Pufferung von DDIC-Datenbanktabellen aber hat die Pufferungsart für die CDS-View-Entität die zusätzliche Eigenschaft, schichtspezifisch zu sein.
Beispiel
Mit folgenden Definitionen werden die drei Arten der Tabellenpufferung für drei unterschiedliche CDS-Entitäten core demonstriert.
define view entity buffer on DEMO_CDS_FULL_BUFFERED_VIEW
layer core
type full
define view entity buffer on DEMO_CDS_GEN_BUFFERED_VIEW
layer core
type generic number of key elements 1
define view entity buffer on DEMO_CDS_SINGLE_BUFFERED_VIEW
layer core
type single
Die drei CDS-Entitäten DEMO_CDS_FULL_BUFFERED_VIEW, DEMO_CDS_GEN_BUFFERED_VIEW und DEMO_CDS_SINGLE_BUFFERED_VIEW enthalten alle die Annotation @AbapCatalog.entityBuffer.definitionAllowed: true.
PERFORM Short Reference General Material Data
Diese Dokumentation steht unter dem Copyright der SAP AG.
Length: 9276 Date: 20240523 Time: 161734 sap01-206 ( 74 ms )