Ansicht
Dokumentation

CL_COND_MERGE_TABLES - Vereinigen von Konditionstabellen

CL_COND_MERGE_TABLES - Vereinigen von Konditionstabellen

ABAP Short Reference   BAL_S_LOG - Application Log: Log header data  
Diese Dokumentation steht unter dem Copyright der SAP AG.
SAP E-Book

Funktionalität

Erzeugt zu einer Menge von Konditionstabellen, welche sich entweder über ihren Namen oder eine Datenreferenz identifizieren, ein "Vereinigungsobjekt". Dieses beihaltet vor allem ein Datenobjekt (interne Tabelle!), welches die Daten aller beteiligten Konditionstabellen enthält. Die Struktur des resultierenden Datenobjektes enthält dazu neben allen Komponenten der beteiligten Konditionstabellen auch die Konditionstabellennummer.

Anwendung findet ein solches Vereinigungsobjekt z.B. bei der Anzeige von Konditionssätzen aus mehreren Konditionstabellen. Speziell für Anzeigezwecke gibt es die Methode IS_COLUMN_NEEDED, welche für eine Spalte der Vereinigungstabelle einen Wahrheitswert bezüglich der Sichtbarkeit zurück liefert.

Beziehungen

Beispiel

Nach der Instanziierung mit einer der beiden statischen Methoden (CREATE_BY_DATASOURCES oder CREATE_BY_COND_TABLES) können die öffentlichen Methoden des Objektes verwendet werden.

Bei der Instanziierung kann wahlweise eine Pufferung verwendet werden. Für die gleiche Menge von Konditionstabellen wird dann eine eventuell dazu schon vorhandene Instanz wiederverwendet (enthaltene Daten werden dabei initialisiert) oder eine neue erzeugt.

Hinweise

Folgende Besonderheiten sind zu beachten:

  • Das Datenobjekt der Vereinigungstabelle wird erst erzeugt, wenn es benötigt wird (spätestens nach PUT_DATA). Die Klasse kann somit auch nur zur Ermittlung der Struktur (Typobjekt) verwendet werden.
  • Das Datenobjekt wird zwar von dieser Klasse erzeugt und referenziert, jedoch sind Datenänderungen außerhalb der Klasse möglich. Sollte eine solche Änderung notwendig sein, sollte das Ereignis DATA_CHANGED ausgelöst werden.
  • Das Ergebnis der Methode IS_COLUMN_NEEDED richtet sich nach dem momentanen Inhalt der Vereinigungstabelle. Nur wenn zu einer Spalte mindestens eine Konditionstabelle existiert, die die Spalte als Komponente enthält, zu welcher Daten vorhanden sind, dann wird die Spalte benötigt. Kommt die Spalte dagegen nur in Konditionstabellen vor, zu denen keine Daten vorliegen, dann wird die Spalte nicht benötigt. Dabei spielt es keine Rolle, ob in einer Spalte nur Initialwerte stehen oder nicht.

Weiterführende Informationen






Vendor Master (General Section)   SUBST_MERGE_LIST - merge external lists to one complete list with #if... logic for R3up  
Diese Dokumentation steht unter dem Copyright der SAP AG.

Length: 2699 Date: 20240419 Time: 214752     sap01-206 ( 53 ms )