Preislisten-Logikcode verwenden

Diese Referenz richtet sich an Administratoren, die Verkaufspreise mit eigenem Code berechnen. Nach der Einrichtung liefert die Preisliste einen numerischen Preis aus Expr-, Lua- oder Tengo-Code. Verwenden Sie Keine, wenn der gespeicherte Basispreis unverändert gelten soll.

Strategie wählen

StrategieVerwendungMinimales Beispiel
KeineKeine zusätzliche Berechnung.Logikcode leer lassen.
AusdruckKurze Berechnung ohne Anweisungsblock.price * 1.5
LuaMehrstufige Logik mit Lua-Syntax.return price * 2
TengoMehrstufige Logik mit Tengo-Syntax.result = price * 3

Eingabewerte

Der Code kann folgende Werte lesen:

WertBedeutung
priceBerechneter Basispreis pro angefragter Menge.
quantityAngefragte Menge.
productProduktattribute als Objekt.
customerKundenattribute als Objekt.
currencyWährung der Preisliste.
unitPreiseinheit.

Greifen Sie nur auf Produkt- oder Kundenattribute zu, die im jeweiligen Preiskontext vorhanden sind. Behandeln Sie fehlende Attribute ausdrücklich.

Der Editor schlägt beim Tippen die verfügbaren Variablen samt Beschreibung vor. Die Vorschlagsliste lässt sich außerdem mit der üblichen Code-Completion-Tastenkombination des Browsers öffnen.

Ergebnis zurückgeben

Geben Sie eines der folgenden Ergebnisse zurück:

  • eine Zahl,
  • einen numerischen String,
  • ein Objekt mit price,
  • ein Objekt mit amount.

Lua kann den Wert mit return zurückgeben oder in result beziehungsweise price ablegen. Tengo muss den berechneten Wert result zuweisen. Ein Ausdruck liefert seinen Wert direkt.

Laufzeit und Fehler

Workspace kompiliert und verarbeitet den Code serverseitig. Die Standardlaufzeit ist auf 50 Millisekunden begrenzt. Der konfigurierte Preis-Engine-Modus bestimmt das Fehlerverhalten:

ModusVerhalten bei Compile-, Laufzeit- oder Ergebnisfehlern
StrictDie Preisauflösung bricht mit einem Fehler ab.
FallbackWorkspace verwendet den Basispreis und meldet eine Warnung.

Der Code erhält keinen Browser- oder Datenbankzugriff. Tengo stellt nur die freigegebenen Standardmodule math, text und times bereit.

Ergebnis prüfen

Die Konfiguration ist abgeschlossen, wenn die gewählte Strategie zum Code passt und eine Preisauflösung den erwarteten numerischen Betrag liefert. Prüfen Sie mindestens normale Menge, Grenzmenge, fehlende Attribute und einen absichtlich ungültigen Wert in einer Testumgebung.