Ansicht
Dokumentation

Variantenkonfiguration: Constraints ( RELNMM_BD_30_VARIANTEN2 )

Variantenkonfiguration: Constraints ( RELNMM_BD_30_VARIANTEN2 )

SUBST_MERGE_LIST - merge external lists to one complete list with #if... logic for R3up   BAL Application Log Documentation  
Diese Dokumentation steht unter dem Copyright der SAP AG.
SAP E-Book

Kurztext

Variantenkonfiguration: Constraints

Beschreibung

Zu Release 3.0 wird Ihnen die neue Beziehungsart Constraints angeboten, die sich bereits im Standalone-Konfigurator von R/2 bewährt hat. Besonders bei hochinteraktiven Konfigurationsaufgaben und bei Konfigurationsaufgaben, in denen man Abhängigkeiten zwischen den Merkmalen mehrerer Objekte berücksichtigen muß, wird diese Beziehungsart eingesetzt. Hinsichtlich der Grundaufgaben sind die Constraints mit der bereits vorhandenen Beziehungsart Aktion zu vergleichen - etwa bezüglich der Herleitung der Werte von Merkmalen. Sowohl Constraints wie Aktion tragen auch zur Konsistenzprüfung bei. So werden ab Release 3.0 Konflikte gemeldet, falls aus verschiedenen Bereichen gegenteilige Werte für dasselbe Merkmal vorhanden sind.

Constraints weisen folgende Charakteristika auf:

  • Mit Hilfe von Constraints können Sie Beziehungen zwischen völlig unterschiedlichen Objekten und deren Merkmale ansprechen. Die Objekte werden normalerweise über ihre Klassenzugehörigkeit angesprochen.
  • Constraints werden den einzelnen Objekten nicht direkt zugeordnet, sondern zu Constraintnetzen zusammengefaßt und dem konfigurierbaren Material zugeordnet.
  • Die Auswertung von Constraints erfolgt automatisch, d.h. es werden laufend die Herleitungen und Widersprüche, die sich aus Constraints ergeben, erkannt.
  • Die Constraintsprache ist eine deklarative Sprache, d.h. Sie beschreiben mit ihr nicht, was das System tun soll, um eine konsistente und vollständige Konfiguration zu erhalten, sondern welche Relationen für eine Konfiguration gelten müssen, damit sie konsistent und vollständig ist.
  • In Constraints werden Objekte in einer allgemeinen Ausdrucksform und nicht durch "$Self", "$Root" oder "$Parent" bezeichnet.

Beispiel für ein Constraint:

OBJECTS:
G1 IS_A (100)Getriebe,
M1 IS_A (100)Motor,
GM1 IS_A (300)Getriebemotor.

CONDITION:
Part_of (G1, GM1) and
Part_of (M1, GM1).

RESTRICTION:
Table T2 (Flansch = G1.Flansch,
Ritzelbohrung = M1.Ritzelbohrung).

INFERENCES:
M1.Ritzelbohrung.

Über das Constraint soll das Merkmal 'Ritzelbohrung' eines Motors hergeleitet werden. Der Motor und das Getriebe sind Bauteile eines Getriebemotors. Für die Verbindung von Motor und Getriebe ist auf Seiten des Motors die Ritzelbohrung und auf Seiten des Getriebes der Flansch entscheidend. Die zulässige Wertekombination für Flansch und Ritzelbohrung ist in der Tabelle T2 mit den Merkmalen 'Flansch' und 'Ritzelbohrung' festgelegt (vgl. Release-Note: Tabellen und Funktionen).

Das Constraint besteht aus fünf Teilen:

  1. In OBJECTS: werden die Objekte und Merkmale angegeben, über die im Constraint etwas ausgesagt werden soll. In diesem Fall wird z. B. festgelegt, daß mit G1 ein Getriebe gemeint ist. Getriebe werden über die Klasse Getriebe, Klassenart '100' angesprochen. M1 bezeichnet in dem Constraint einen Motor, der in der Klasse Motor, Klassenart '100' klassifiziert ist. GM1 steht für Getriebemotor, der ebenfalls über die entsprechende Klasse angesprochen wird.
  2. In CONDITION: wird die Bedingung festgelegt, wann das Constraint angewendet werden darf.
    Mit 'Part_of' wird ausgedrückt, daß das Getriebe und der Motor Baugruppen zu einem Material sein müssen, das zu der Klasse
    'Getriebemotor' gehört, damit das Constraint angewandt wird.
  3. In RESTRICTION: geben Sie die Relation an, die zwischen den Objekten und Merkmalen bestehen muß, damit die Konfiguration konsistent ist. In dem Beispiel wird auf eine Tabelle verwiesen.
  4. In dem Punkt INFERENCES: wird festgelegt, welche Merkmalwerte hergeleitet werden sollen. In diesem Fall soll der Wert für das Merkmal 'Ritzelbohrung' des Motors hergeleitet werden. Die Herleitung erfolgt über die Wertekombinationen, die in Tabelle T2 für die Merkmale 'Flanch' und 'Ritzelbohrung' angegeben sind. Falls der Tabellenzugriff nicht erfolgreich ist, wird ein Konflikt erzeugt.
  5. Unter dem Punkt OBJECTS: können neben Objekten auch Merkmale deklariert werden. Die Merkmaldeklaration wird durch where an die Objektdeklaration angeschlossen werden:
    O IS_A (200)Tisch
    where G = Gewicht
    D = Dichte
    V = Volumen
Über die eingegebenen Variablen werden die Merkmale im Constraint angesprochen.
  1. Als Restriktion kann neben einer Tabelle auch eine Funktion oder z. B. eine Formel dienen. Für den Tisch könnte z. B. die Formel
    G = D * V
    zur Kontrolle einer konsistenten Konfiguration bzw. Herleitung eines Merkmalwertes herangezogen werden.






CL_GUI_FRONTEND_SERVICES - Frontend Services   ABAP Short Reference  
Diese Dokumentation steht unter dem Copyright der SAP AG.

Length: 5496 Date: 20240523 Time: 170137     sap01-206 ( 104 ms )