en:lenscatalog:version070000:usage:orderoptions
Differences
This shows you the differences between two versions of the page.
Both sides previous revisionPrevious revisionNext revision | Previous revision | ||
en:lenscatalog:version070000:usage:orderoptions [2017/07/20 08:10] – dkroll | en:lenscatalog:version070000:usage:orderoptions [2017/07/20 08:31] (current) – dkroll | ||
---|---|---|---|
Line 1: | Line 1: | ||
+ | [[en: | ||
+ | |||
+ | [[de: | ||
+ | |||
+ | [[en: | ||
+ | |||
+ | ====== Usage of orderoptions ====== | ||
+ | |||
+ | NEEDTRANS | ||
+ | |||
+ | |||
+ | |||
+ | ===== OrderOptionGroups ===== | ||
+ | |||
+ | OrderOptions werden im Element B2BCatalogorderOptionGroup (3) zu einer Gruppe zusammen gefasst und mit einer ID (2) belegt. Es können mehrere Gruppen (1) definiert werden. Diese Gruppen können über die ID Gläsern und/oder Zuschlägen zugewiesen werden. | ||
+ | |||
+ | {{: | ||
+ | |||
+ | |||
+ | ==== B2BCatalogOrderOptionGroup/ | ||
+ | |||
+ | Im ComplexType B2BCatalogorderOptionGroup (3) werden die orderOptions mit folgender Logik angeordnet: | ||
+ | |||
+ | * In jeder OrderOptionGroup (3) können eine oder mehrere orderOptionSet (4) angelegt werden. | ||
+ | * In jedem orderOptionSet können eine oder mehrere orderOptions (6) hinterlegt werden. | ||
+ | * Im Attribut " | ||
+ | * Sind in einem orderOptionSet mehrere orderOptions (6) hinterlegt, kann frei gewählt werden, welche dieser orderOptions bei einer Bestellung verwendet wird (" | ||
+ | |||
+ | {{: | ||
+ | |||
+ | === Beispiel === | ||
+ | |||
+ | Im unten stehenden Beispiel wurden drei Gruppen angelegt. Gruppe 1 besteht aus drei orderOptionSets, | ||
+ | {{: | ||
+ | |||
+ | |||
+ | Diese Gruppen können einem Glas oder einem Zuschlag zugewiesen werden. Wenn diese zugewiesen werden, dann gilt für das Glas/ | ||
+ | |||
+ | id 1: Für dieses Beispiel gilt folgendes: | ||
+ | * MONOCUOLAR_CENTRATION_DISTANCE_FAR muss übertragen werden (orderOptionSet 1) | ||
+ | * SHAPE_EXPLICIT " | ||
+ | * LAST_NAME kann übertragen werden (orderOptionSet 3) | ||
+ | |||
+ | id 2: Für dieses Beispiel gilt folgendes: | ||
+ | * WAVEFRONTOPTIMISATION muss übertragen werden (orderOptionSet 4) | ||
+ | |||
+ | id 3: Für dieses Beispiel gilt folgendes: | ||
+ | * SHAPE_TRACERDATA muss übertragen werden (orderOptionSet 5) | ||
+ | |||
+ | ==== orderOption von Glas und Zuschlag kombinieren ==== | ||
+ | |||
+ | Wenn einem Glas die Id 1 zugewiesen ist und einem Zuschlag die Id 2 zugewiesen ist, dann werden bei einer Bestellung dieses Glases mit diesem Zuschlag, die orderOptions von Id1 und Id2 vereint. Für diese Bestellung gilt folgendes | ||
+ | * MONOCUOLAR_CENTRATION_DISTANCE_FAR muss übertragen werden. | ||
+ | * SHAPE_EXPLICIT " | ||
+ | * LAST_NAME kann übertragen werden. | ||
+ | * WAVEFRONTOPTIMISATION muss übertragen werden | ||
+ | |||
+ | ==== Konflikte bei der Kombination von orderoptions ==== | ||
+ | |||
+ | Wenn einem Glas die Id 1 zugewiesen ist und einem Zuschlag die Id 3 zugewiesen ist, dann werden bei einer Bestellung dieses Glases mit diesem Zuschlag, die orderOptions von Id1 und Id3 vereint. Für diese Bestellung gilt folgendes | ||
+ | * MONOCUOLAR_CENTRATION_DISTANCE_FAR muss übertragen werden. | ||
+ | * SHAPE_EXPLICIT " | ||
+ | * LAST_NAME kann übertragen werden. | ||
+ | * SHAPE_TRACERDATA muss übertragen werden | ||
+ | |||
+ | In diesem Fall gibt es einen Konflikt zwischen folgenden Einträgen: | ||
+ | * SHAPE_EXPLICIT " | ||
+ | * SHAPE_TRACERDATA muss übertragen werden | ||
+ | |||
+ | Um diesen Konflikt zu umgehen, können Regeln festgelegt werden, wie mit diesen Konflikten umzugehen ist. Diese Regeln werden im folgenden Abschnitt beschrieben. | ||
+ | |||
+ | ===== orderOptionRules ===== | ||
+ | |||
+ | |||
+ | ==== Konflikte beseitigen mit orderOptionRules ==== | ||
+ | |||
+ | Im Zweig orderOptionRules wird festgelegt, wie Konflikte behandelt werden. | ||
+ | |||
+ | Pro Regel wird eine orderOptionRule (1) angelegt. Jede Rule verfügt über das Element matching (2). OrderOptions die im Element matching (2) hinterlegt sind, werden mit den orderOptions ersetzt, die im Element replacement (3) hinterlegt sind. | ||
+ | |||
+ | {{: | ||
+ | |||
+ | Hier noch einmal genauer erklärt: Die Elemente matching (2) und replacement (3) beinhalten eine Auflistung der Elemente orderOptionSet (5/6). Wenn alle orderOptionSet (5) aus dem Element matching (2) in der Liste der orderOptionSet aus der Glas/ | ||
+ | |||
+ | {{: | ||
+ | |||
+ | === Beispiel === | ||
+ | |||
+ | Um den oben beschriebenen Konflikt aufzuheben, wird eine rule erfasst, in der im matching (2) die OrdeOptionSets 2 und 5 eingetragen werden, also | ||
+ | * SHAPE_EXPLICIT " | ||
+ | * SHAPE_TRACERDATA muss übertragen werden | ||
+ | In replacement (3) wird nur das OrdeOptionSet 5 eingetragen, | ||
+ | * SHAPE_TRACERDATA muss übertragen werden | ||
+ | |||
+ | Ergibt sich also eine Kombination aus " | ||
+ | |||
+ | |||
+ | |||
+ | |||
+ | ==== Wann werden orderOptionRules angewendet? ==== | ||
+ | |||
+ | Es gibt drei Bereiche, in denen orderOptionRules mit Hilfe einer Id hinterlegt werden können. | ||
+ | |||
+ | 1) Im Zweig orderOptionsGlobalRules, | ||
+ | |||
+ | 2) Wenn bestimmte Rules nur bei bestimmten Gläsern angewendet werden sollen, dann werden diese unter lenses-> | ||
+ | |||
+ | 3) Wenn bestimmte Rules nur bei bestimmten Zuschlägen anwendung finden, dann werden diese unter options-> | ||
+ | |||
+ | ==== Prioritäten bei der Anwendung von orderOptionRules ==== | ||
+ | |||
+ | Bei der Zuweisung einer Id für die orderOptionRule kann das Attribut " | ||
+ | |||
+ | |||
+ | ===== Zusammenfassung ===== | ||
+ | |||
+ | * Jedem Glas und jedem Zuschlag werden über das Element orderOptions-> | ||
+ | * Diese Gruppen werden im Bereich orderOptionGroups festgelegt. | ||
+ | * Wenn es zu Konflikten zwischen orderOptions kommt, können diese über Rules beseitigt werden. | ||
+ | * Die Rules werden im Bereich orderOptionRules definiert. | ||
+ | * Die Rules können über eine Id als Globale Rule verwendet werden, oder Gläsern und Zuschlägen einzeln zugewiesen werden. | ||