Warenkorb-Aktion
Einleitung
Diese Aktion können Sie nutzen, um im Kontext des Warenkorbs Prüfungen durchzuführen oder auch dem Benutzer Informationen anzuzeigen. Dabei können Sie auch verhindern, dass ein Warenkorb übergeben wird.
Beispiel
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.
Beispiel
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 Salesware verknüpft.
Wählen Sie hier bitte den Aktionstyp „Warenkorb-Aktion“ aus.
Auslöser
In der Karte „Ausführung bei“ können Sie festlegen, wann die Aktion ausgelöst wird.
Wenn Sie „Manuelle Ausführung“ (TriggeredBy = „manually“) aktivieren, kann die Aktion über das Dreipunktmenü des Warenkorbs angestoßen werden.
Aktivieren Sie „Weiterverarbeitung, vor Bestätigung“ (TriggeredBy = „transformationBeforeConfirm“) so können Sie 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.
Aktivieren Sie „Weiterverarbeitung, nach Bestätigung“ (TriggeredBy = „transformationAfterConfirm“) so können Sie 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.
Wichtig
Bitte beachten Sie, dass in einem Warenkorb oder Webshop-Warenkorb lediglich der Auslöser „Weiterverarbeitung, nach Bestätigung“ funktioniert, da dort keine Bestätigung vorgesehen ist.
Richten Sie für diese Warenkörbe bitte lediglich eine Aktion für den Auslöser ein, wenn Sie dies benötigen.
Zudem können Sie das Ergebnis der Aktion im Detailbereich des Warenkorbes automatisch anzeigen, wenn Sie „automatisch in dynamischer Spalte“ (TriggeredBy = „dynamicColumnInitialization“) aktivieren.
Sie können 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 Salesware 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 Salesware Commerce Cockpit verfügbar.
- Warenkorb (default): Das ist der Warenkorb, den ein Benutzer in Salesware anlegen kann. Dieser ist nur im Salesware Commerce Cockpit verfügbar.
- Webshop Warenkorb (externalBasket): Das ist der Warenkorb im Salesware 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 Salesware-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 können Sie 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 |
Tipp
Schicken Sie bei einer Sperrung bitte auch immer eine Fehlermeldung mit, damit der Benutzer auch reagieren und den Warenkorb anpassen kann.
Wichtig
Bei der Darstellung wird – je nach Kontext – unterschieden, wie mit der Rückgabe umgegangen wird.
- Bei manueller Ausführung wird das PreventsTransform-Kennzeichen verworfen und ausschließlich Messages angezeigt.
- Bei der Weiterverarbeitung werden Messages wie gewohnt in einer Lightbox dargestellt, die Weiterverarbeitung allerdings abhängig vom PreventsTransform-Kennzeichen abgebrochen.
0 Kommentare