Einleitung
Mit Hilfe dieser Aktion kann in den Speicherprozess eines Angebots oder einer Bestellung – egal ob bei Neuanlage oder Bearbeitung eines bestehenden Belegs – eingegriffen werden.

Unter bestimmten Bedingungen möchtest du, dass beim Speichern einer neuen Bestellung in Elements anstelle einer „Auftragsbestätigung“ eine „Bestellanfrage“ angelegt wird. Diesen Beleg hast du individuell in deinem ERP-System angelegt, um Bestellungen der Kundengruppe „B2B-Kunden“ separat freizugeben.
Du kannst nun vor dem Speichern der Bestellung anhand der Kundengruppe diesen speziellen Belegtyp an Elements übergeben. Somit wird eine „Bestellanfrage“ im ERP-System angelegt.

Du möchtest sicherstellen, dass die angelegten Bestellungen immer Angaben enthalten, die in deinem ERP-System aber nicht als Pflichtfelder definiert werden können. Sobald der Benutzer nun eine Bestellung an das ERP-System übergibt, prüfst du die entsprechenden Felder auf den Inhalt. Ist dieser nicht oder falsch angegeben korrigierst du ihn entweder automatisiert oder weist den Benutzer mit Hilfe einer Meldung darauf hin, dass dieses Feld einen Inhalt benötigt.
Mit Hilfe dieser Aktion kannst du nun also anhand der Belegdaten beim Speichern eines Belegs eine Reaktion basierend auf individuellen Regelwerken anstoßen.
Wähle bitte den Aktionstyp „Beleg speichern“ aus.
Auslöser
In der Karte „Ausführung bei“ kannst du festlegen, wann die Aktion ausgelöst wird.
Wenn du „vor Übergabe an das ERP“ (TriggeredBy = „documentSave“) aktivierst, wird die Aktion immer ausgeführt, wenn der Benutzer eine in der Aktion hinterlegte Entität an das ERP-System übergeben möchte.
Die Aktion kann in diesen Entitäten ausgelöst werden:
- Angebot (offer): Die Aktion wird ausgelöst, wenn der Benutzer auf „Angebot verbindlich bestätigen“ klickt.
- Bestellung (order): Die Aktion wird ausgelöst, wenn der Benutzer auf „Bestellung verbindlich bestätigen“ klickt.

Die Aktion wird auch ausgeführt, wenn eine bereits im ERP-System angelegte Bestellung (oder Angebot) nochmals verbindlich bestätigt wird.
Eingabeparameter
Neben den allgemeinen werden zusätzlich diese Daten übergeben:
Key | Datentyp | Value |
---|---|---|
SageBeleg | Sagede.OfficeLine.Wawi.BelegEngine.Beleg | das Sage-Objekt, welches gespeichert werden soll |
Custom | Dictionary<string, object> | die Custom-Felder, die für den Beleg definiert sind |
Files | Dictionary<string, object>[] | das Array von Datei-Definitionen (s. Entity-Spezifische Eingabeparameter) |
Ausgabeparameter
Es werden die allgemeinen Rückmeldungen erwartet.
Key | Datentyp | Value |
---|---|---|
SageBeleg | Sagede.OfficeLine.Wawi.BelegEngine.Beleg | das Sage-Objekt, welches gespeichert werden soll |
CancelSave | bool | das Kennzeichen. ob das Speichern abgebrochen werden soll |
Custom | Dictionary<string, object> | die Custom-Felder, die für den Beleg definiert sind (s. Entity-Spezifische Ausgabeparameter) |
Der Aufbau der Custom-Felder entspricht folgendem Schema:
{
"order/offer": {
"Tabellename.Spaltenname": "Wert"
}
"orderLine/offerLine": {
"orderLineId1/offerLineId1": {
"Tabellenname.Spaltenname": "Wert"
}
}
}