Merkmalsbeziehungen in SAP BW IP und BPC verständlich erklärt

Chris Fidanidis

Geschrieben von: Chris Fidanidis - 16 April 2020
(Aktualisiert am: 27 März 2023)

In der Planung können Sie mithilfe von Merkmalsbeziehungen festlegen, welche Kombinationen Sie innerhalb Ihrer Planungsapplikation zulassen möchten. Außerdem lassen sich korrekte Werte automatisch ableiten. In diesem Artikel lernen Sie, wie Sie mit Merkmalsbeziehungen arbeiten.

Funktionen der Merkmalsbeziehungen

Mit Merkmalsbeziehungen können Sie inhaltlich korrespondierende Merkmale miteinander verknüpfen, wodurch Sie deren Datenkonsistenz sicherstellen können. Dies erreichen Sie, indem Sie Regeln definieren, um zulässige Kombinationen von Merkmalswerten für die Plan-InfoProvider zu überprüfen.

Sie können auch Regeln festlegen, nach denen aus Merkmalswerten automatisch Werte für weitere Merkmale abgeleitet werden können. So können Sie z. B. anhand der Stadt die Region bestimmen. Dies ist nützlich, wenn die abgeleiteten Merkmale im gegenwärtigen Planungskontext nicht relevant sind, aber für weitere Auswertungen zur Verfügung stehen sollen.

Grundsätzlich wird zwischen drei Funktionen unterschieden.

1. Wenn ein Datensatz angelegt wird, kann das SAP-System prüfen, ob die geplante Merkmalskombination erlaubt ist. Die in der nachfolgenden Tabelle dargestellte Kombination wäre z. B. nicht gültig und könnte somit nicht gespeichert werden.

Produktgruppe

Produktkategorie

Menge

Smartphone S

Tablets

100

 

2. Außerdem kennt das SAP-System die gültigen Kombinationen je Merkmal und kann diese automatisch vorgeschlagen bzw. generieren. In der nachfolgenden Tabelle sehen Sie ein Beispiel.

Produktgruppe

Produktkategorie

Menge

Smartphone S

Smartphones

0

Tablet I

Tablets

0

 

3. Darüber hinaus kann die Ausprägung eines Merkmals aus der Ausprägung eines anderen Merkmals abgeleitet werden. So kann z. B. aus einer geplanten Produktgruppe die entsprechende Produktkategorie im Hintergrund automatisch gefüllt werden, wie es in der nachfolgenden Tabelle dargestellt ist.

Produktgruppe

Produktkategorie

Menge

Smartphone S

Smartphones

100

 

Generell sind mehrere Merkmalsbeziehungen pro InfoProvider möglich. In diesem Fall werden alle Merkmalsbeziehungen schrittweise in der hinterlegten Reihenfolge ausgeführt. Damit können Sie bei der Definition von Merkmalsbeziehungen Kausalketten bilden. So können Sie z. B. zuerst aus einem Produkt die Produktgruppe ableiten, um dann im zweiten Schritt aus der Produktgruppe die Produktkategorie abzuleiten. Zu Testzwecken können Sie auch einzelne Schritte der Merkmalsbeziehungen deaktivieren.

Grundsätzlich wird zwischen Merkmalsbeziehungen mit Ableitung und ohne Ableitung unterschieden. In den nächsten Abschnitten erläutere ich die wesentlichen Unterschiede anhand eines Beispiels.

Merkmalsbeziehungen ohne Ableitung

Betrachten wir die folgenden Stammdaten: der Produktgruppe Smartphone S ist die Produktkategorie Smartphones zugeordnet. Die Produktgruppe Tablet I gehört zu der Produktkategorie Tablets.

Produktgruppe

Produktkategorie

Smartphone S

Smartphones

Tablet I

Tablets

 

Auf der Ebene des InfoProviders legen wir eine Merkmalsbeziehung ohne Ableitung fest. Sie können dabei entweder die Transaktion RSPLAN oder in höheren Versionen die BW Modeling Tools nutzen.

Merkmalsbeziehung

Beide Merkmale befinden sich in der Aggregationsebene

Wenn sich beide Merkmale in der Aggregationsebene befinden, werden die gültigen Kombinationen geprüft und können auch automatisch generiert werden.

Aggregationsebene mit Produktkategorie und -gruppe

So wird zum Beispiel die Kombination Smartphone S und Tablets als ungültig erkannt.

Ungültige Kombination

Beachten Sie allerdings, dass die folgenden Kombinationen als valide angesehen werden:

Produktgruppe

Produktkategorie

Smartphone S

#

#

Smartphones

 

Sie können eine Liste aller validen Kombinationen einsehen, wenn Sie für das Merkmal Produktgruppe in den Query Einstellungen unter Erweitert → Zugriffsart für Ergebniswerte die Option Merkmalsbeziehungen auswählen.

Zugriffsart für Ergebniswerte

Dabei werden folgende Kombinationen automatisch generiert.

Generierte Kombinationen

Wie Sie sehen können, handelt es sich dabei um ein kartesisches Produkt aller erlaubten Kombinationen. Dabei kommt dem initialen Merkmalswert # (Nicht zugeordnet) eine besondere Rolle zu. So sind Kombinationen mit dem Initialwert # standardmäßig gültig. Dies liegt daran, dass Merkmale, die in einer Aggregationsebene nicht vorkommen, immer mit dem Initialwert fortgeschrieben werden. Daher erfolgt für die Initialwerte keine Gültigkeitsprüfung.

Automatisch gültige Kombinationen verbieten

Wenn dieses Verhalten nicht erwünscht ist, können Sie automatisch gültige Kombinationen verbieten, indem Sie in der Merkmalsbeziehung die Option Exclude # auswählen.

# ausschließen

In diesem Fall werden die folgenden Kombinationen nicht mehr als valide angesehen:

Produktgruppe

Produktkategorie

Smartphone S

#

#

Smartphones

 

Wenn Sie die Einstellung Zugriffsart auf Merkmalsbeziehungen setzen, werden nur noch drei gültige Kombinationen generiert.

Gültige Kombinationen

Produktgruppe in Aggregationsebene

Wenn sich nur das Merkmal Produktgruppe in der Aggregationsebene befindet, hat die definierte Merkmalsbeziehung keine Funktionalität.

Nur Produktgruppe in Aggregationsebene

Wenn Sie auf der Ebene der Produktgruppe planen, wird die Produktkategorie als Nicht zugeordnet # gespeichert.

Produktgruppe wird geplant

Um die Produktkategorie automatisch ableiten zu können, müssen Sie eine Merkmalsbeziehung mit Ableitung definieren. Wie dies funktioniert, erfahren Sie im nächsten Abschnitt.

Merkmalsbeziehungen mit Ableitung

Um die Merkmalsbeziehungen mit Ableitung zu erklären, benutze ich dieselbe Kombination von Produktgruppe und Produktkategorie als Beispiel.

Produktgruppe

Produktkategorie

Smartphone S

Smartphones

Tablet I

Tablets

 

Um eine Merkmalsbeziehung mit Ableitung zu definieren, aktivieren Sie die Einstellung Mit Ableitung und definieren das Quell- und Zielmerkmal.

Merkmalsbeziehung mit Ableitung

Beide Merkmale befinden sich in der Aggregationsebene

Bei einer Kombination mit Ableitung werden weiterhin gültige Kombinationen geprüft, wenn beide Merkmale sich in der Aggregationsebene befinden.

Beide Merkmale in Aggregationsebene

So wird zum Beispiel die Kombination Smartphone S und Tablets weiterhin als ungültig erkannt. Im Unterschied zur Merkmalsbeziehung ohne Ableitung wird jedoch automatisch die Produktkategorie abgeleitet, wenn Sie eine Produktgruppe eingeben.

Produktkategorie automatisch abgeleitet

Somit ist es nicht möglich, die folgende Kombination einzugeben:

Produktgruppe

Produktkategorie

Smartphone S

#

 

Beachten Sie jedoch, dass eine undefinierte Produktgruppe mit einer Produktkategorie weiterhin erlaubt ist.

Produktgruppe

Produktkategorie

#

Smartphones

 

Undefinierte Produktgruppen erlaubt

Um die Liste aller gültigen Kombinationen anzuzeigen, können Sie für das Merkmal Produktgruppe in den Query Einstellungen unter Erweitert → Zugriffsart für Ergebniswerte die Option Merkmalsbeziehungen auswählen.

Zugriffsart Merkmalsbeziehungen

Leere Produktgruppen generiert

Im Gegensatz zu Kombinationen, die mit Merkmalsbeziehungen ohne Ableitung generiert werden, wird kein kartesisches Produkt generiert. Sondern nur die validen Kombinationen aus Produktgruppe und Produktkategorie. Wie Sie sehen, gelten jedoch Kombinationen mit leerer Produktgruppe als valide. Sollte es nicht erwünscht sein, können Sie automatisch gültige Kombinationen verbieten.

Automatisch gültige Kombinationen verbieten

Setzen Sie dabei, analog zu Merkmalsbeziehungen ohne Ableitung, das Häkchen bei der Einstellung Exclude #.

automatisch gültige Kombinationen verbieten

Wenn Sie anschließend die Query erneut aufrufen, sieht das Ergebnis genauso aus wie bei Merkmalsbeziehungen ohne Ableitung.

Valide Kombinationen

Produktgruppe in Aggregationsebene

Der wichtigste Unterschied wird jedoch deutlich, wenn sich nur das Merkmal Produktgruppe in der Aggregationsebene befindet.

Nur Produktgruppe verfügbar

In diesem Fall wird die zugehörige Produktkategorie automatisch abgeleitet und im InfoProvider gespeichert, wenn Sie eine Produktgruppe planen.

Produktgruppe wird geplant

Daten im InfoProvider

Empfohlene Einstellung

Im Allgemeinen sollten Sie immer die Eigenschaft mit Ableitung benutzen. So wird sichergestellt, dass jeder Datensatz mit allen erlaubten Ausprägungen versehen wird, auch wenn ein Merkmal in der Aggregationsebene versehentlich fehlt. Auch wenn Sie die Eigenschaft mit Ableitung selektieren, wird weiterhin eine Kombinationsprüfung durchgeführt (oder ein Vorschlag erzeugt), wenn alle betroffenen Merkmale in der Aggregationsebene enthalten sind.

 


Planungstools im Vergleich - SAP BW IP vs. BPC vs. SAC 

Neuer Call-to-Action


 

Quellen von Merkmalsbeziehungen

Die Ausprägungen der Merkmalskombinationen können über vier verschiedene Wege ermittelt werden. Als Quelle für Merkmalsbeziehungen können Stammdatenattribute eines Merkmals (Typ Attribut), eine Hierarchie (Typ Hierarchie), ein DataStore-Objekt (Typ DSO) oder eine Exit-Klasse (Typ Exit) dienen.

 

Quellen_Merkmalsbeziehungen

Wenn Attribut als Typ ausgewählt ist, werden die in den Stammdaten des Merkmals enthaltene Kombinationen aus Merkmals- und Attributwerten als zulässige Ausprägungen übernommen. Wenn Sie Hierarchie als Typ wählen, können Sie die Quell- und Zielmerkmale der Merkmalsbeziehungen über eine Hierarchie bestimmen. Sie können aber auch die gültigen Kombinationen in einem DSO hinterlegen und diesen als Quelle für Merkmalsbeziehungen nutzen. Darüber hinaus haben Sie die Möglichkeit, zulässige Merkmalskombinationen durch eine individuelle Programmierung flexibel und individuell zu gestalten. Nutzen Sie in diesem Fall den Typ Exit.

Es ist empfehlenswert, individuelle Exit-Funktionalitäten für Merkmalsbeziehungen direkt in der SAP-HANA-Datenbank mittels SQLScript zu implementieren. Dabei muss die SAP-HANA-spezifische Schnittstelle IF_RSPLS_CR_EXIT_HDB implementiert werden. Falls Sie sich jedoch nicht mit SQLScript auseinandersetzen wollen, können Sie weiterhin die Implementierung über ABAP als Fallback nutzen. Dabei können Sie die Beispielklasse CL_RSPLS_CR_EXIT_BASE verwenden. Das dabei genutzte Interface IF_RSPLS_CR_EXIT muss auch im Falle einer Implementierung mittels SQLScript vorhanden sein. In bestimmten Situationen stößt nämlich das System die ABAP-Implementierung an, um eine satzweise Datenübertragung zwischen dem SAP-BW∕4HANA-System und der SAP-HANA-Datenbank zu vermeiden.

Beachten Sie aber, dass Sie in diesem Fall die Möglichkeiten der Performanceoptimierung nicht voll ausschöpfen. Insbesondere wenn Disaggregation oder Planungsfunktionen mit großen Datenmengen ausgeführt werden, kann darunter die Performance leiden. Für weitere Informationen zu dem Exit und Fallbackszenario können Sie SAP-Hinweis 1956085 (BW-IP (PAK): ABAP als Fallback für Exit-Merkmalsbeziehungen und -Datenscheiben in SAP HANA) nutzen.

Erfahren Sie mehr über SAP BPC

Themen: SAP Planning

Beitrag teilen

Sie haben eine Frage zum Blog?
Fragen Sie Chris Fidanidis