Einleitung
Diese Aktion kannst du nutzen, um im Kontext des Warenkorbs Prüfungen durchzuführen oder auch dem Benutzer Informationen anzuzeigen. Dabei kannst du auch verhindern, dass ein Warenkorb übergeben wird.

Der Benutzer hat einen Warenkorb befüllt, aber der Wert des Warenkorbs überschreitet einen gewissen Betrag. Die Aktion wird beim Klick auf „Bestellung“ ausgeführt und stellt fest, dass der Warenkorb nicht übergeben werden kann. Dem Benutzer wird eine Meldung im HTML-Format eingeblendet, die ihn auf den Grund hinweist.

Der Benutzer möchte weitere Informationen zum Warenkorb hinterlegen. Dazu kann er im Menü des Warenkorbs die entsprechende Aktion aufrufen. Ihm wird ein Webformular angezeigt, in dem er die fehlenden Daten eintragen kann. Diese werden mit der internen Referenznummer von Elements verknüpft.
Wähle hier bitte den Aktionstyp „Warenkorb-Aktion“ aus.
Auslöser
In der Karte „Ausführung bei“ kannst du festlegen, wann die Aktion ausgelöst wird.
Wenn du „Manuelle Ausführung“ (TriggeredBy = „manually“) aktivierst, kann die Aktion über das Dreipunktmenü des Warenkorbs angestoßen werden.
Aktivierst du „Weiterverarbeitung, vor Bestätigung“ (TriggeredBy = „transformationBeforeConfirm“) so kannst du automatisch die Aktion ausführen, wenn der Benutzer im Warenkorb auf die Schaltfläche „Preisanfrage“ oder „Bestellung“ klickt. Die Aktion wird also ausgeführt, bevor der Benutzer die Zusammenfassung der Preisanfrage oder Bestellung sieht.
Aktivierst du „Weiterverarbeitung, nach Bestätigung“ (TriggeredBy = „transformationAfterConfirm“) so kannst du automatisch die Aktion ausführen, wenn der Benutzer die Übergabe des Warenkorbs als Preisanfrage oder Bestellung abschließt. Die Aktion wird ausgeführt nachdem der Benutzer die Zusammenfassung der Preisanfrage oder Bestellung gesehen und diese bestätigt hat.

Bitte beachte, dass in einem Warenkorb oder Webshop-Warenkorb lediglich der Auslöser „Weiterverarbeitung, nach Bestätigung“ funktioniert, da dort keine Bestätigung vorgesehen ist.
Richte für diese Warenkörbe bitte lediglich eine Aktion für d Auslöser ein, wenn du dies benötigst.
Zudem kannst du das Ergebnis der Aktion im Detailbereich des Warenkorbes automatisch anzeigen, wenn du „automatisch in dynamischer Spalte“ (TriggeredBy = „dynamicColumnInitialization“) aktivierst.
Du kannst auch den Auslöser „Änderung Feldinhalt“ (TriggeredBy = „fieldChange“) aktivieren. Die Aktion wird dann ausgeführt, wenn Änderungen an den in der aufgeführten Tabelle hinterlegten Feldern festgestellt werden.
Die Aktion kann in diesen Entitäten ausgelöst werden:
- Bestellanfrage (orderRequest): Das ist ein Warenkorb, den ein Business-Login als Bestellung übergeben hat. Dieser ist als Bestellanfrage gekennzeichnet und nur im Elements Commerce Cockpit verfügbar.
- Business-Login-Warenkorb (reseller): Das ist ein Warenkorb, den ein Business-Login aktuell bearbeitet.
- Preisanfrage (priceInquiry): Das ist ein Warenkorb, den ein Business-Login als Preisanfrage übergeben hat. Dieser ist als Preisanfrage gekennzeichnet und nur im Elements Commerce Cockpit verfügbar.
- Warenkorb (default): Das ist der Warenkorb, den ein Benutzer in Elements anlegen kann. Dieser ist nur im Elements Commerce Cockpit verfügbar.
- Webshop Warenkorb (externalBasket): Das ist der Warenkorb im Elements Commerce Cockpit, der mit einem Warenkorb eines 4SELLERS Webshops (bei aktivierter Schnittstelle) verknüpft ist.
Eingabeparameter
Neben den allgemeinen Daten werden zusätzlich folgende Daten übergeben:
Key | Datentyp | Value |
---|---|---|
TargetType | string | das Ziel der Entität • Warenkorbtyp (s. Auslöser) • Bestellung (order) • Angebot (offer) |
ShoppingCartType | string | der Warenkorbtyp |
PriceListId | int | die ID der Preisliste, die aktuell zugewiesen ist |
DiscountListId | int | die ID der Rabattliste, die aktuell zugewiesen ist |
CurrencyCode | string | die Währung, die aktuell zugewiesen ist |
CurrencyCodeExchangeRate | decimal | der aktuell verwendete Umrechnungsfaktor |
HasGrossPrices | bool | das Preiskennzeichen (brutto/netto) |
AccountId | string | die Kundennummer (KHKKontokorrent.Kto) |
DocumentDate | datetime | das Belegdatum |
Files | Dictionary<string, object>[] | das Array von Datei-Definitionen (Details s. Entity-Spezifische Eingabeparameter) |
Positions | Dictionary<string,object>[] | Position / Artikel |
Neben den allgemeinen Positionsdaten werden zusätzlich diese Daten übergeben:
Key | Datentyp | Value |
---|---|---|
ExternalEntityReference | string | die Elements-Referenz für die Position |
Custom | Dictionary<string, object> | die Custom-Felder, die für die Position definiert sind (s. Entity-Spezifische Eingabeparameter) |
Ausgabeparameter
Neben den allgemeinen Rückmeldungen kannst du auch ein Sperrkennzeichen mitgeben. Sobald die Aktion feststellt, dass der Warenkorb nicht weiterverarbeitet werden kann, kann ein Sperrkennzeichen mitgeschickt werden. Dann ist es dem Benutzer nicht mehr möglich, den Warenkorb zu übergeben.
Key | Datentyp | Value |
---|---|---|
PreventsTransform | bool | das Kennzeichen, ob die Transformation des Warenkorbs in den TargetType abgebrochen werden soll |

Schicke bei einer Sperrung bitte auch immer eine Fehlermeldung mit, damit der Benutzer auch reagieren und den Warenkorb anpassen kann.

Bei der Darstellung wird – je nach Kontext – unterschieden, wie mit der Rückgabe umgegangen wird.
(a) Bei manueller Ausführung wird das PreventsTransform-Kennzeichen verworfen und ausschließlich Messages angezeigt.
(b) Bei der Weiterverarbeitung werden Messages wie gewohnt in einer Lightbox dargestellt, die Weiterverarbeitung allerdings abhängig vom PreventsTransform-Kennzeichen abgebrochen.