Gelöst Erweiterte Eigenschaften → Auf einzelne Auftragsattribute zugreifen?

L-Markt

Mitglied
11. Januar 2021
28
2
Folgende Problemstellung:
Wir bieten einen Mailingservice an, wobei wir Retouren gesammelt an einen Empfänger senden.
Damit unsere Sachbearbeitung und unser Lager einen überblick hat, möchten wir bei jedem Rückläufer, den wir erhalten einen manuellen Workflow auslösen, der diese zählt.
Auf einem Formular soll dann die Gesamtzahl der Rückläufer zu diesem Auftrag stehen.

Wir behelfen uns aktuell damit, dass die Zahl der Rückläufer im Feld Lieferadresse-Mobil gepflegt wird :rolleyes:
Der ordentlichere Weg wäre aber, dies in einem Auftragsattribut zu machen.

Unser momentaner Workflow schreibt aktuell den Wert:
Code:
{{ Vorgang.Lieferung.Lieferadresse.Mobil | ToDouble | Plus: 1 }}

Kann ich das analog mit einem spezifischen Auftragsattribut machen? Im Guide finde ich keinen Weg, in den erweiterten Eigenschaften auf spezifische Auftragsattribute zuzugreifen bzw. diese zu manipulieren.

Danke im Voraus!
 

jtldudel

Sehr aktives Mitglied
4. Januar 2018
542
179
Das heißt da klickt jemand jedes mal wenn ein Artikel zurück kommt auf den Workflow, der dann in das Feld Lieferadresse.Mobil den Wert Lieferadresse.Mobil+1 schreibt?

Nutzt Ihr Wawi 1.5 oder 1.6?
 

Gökhan Basoglu

Moderator
Mitarbeiter
15. August 2019
161
47
Hallo L-Markt,

in der 1.5 geht dies leider nicht. In der 1.6 könntet ihr in einer erweiterten Eigenschaft per DotLiquid ein SQL Update auf das Auftragsattribut ausführen. Dabei ist zu bedenken das es mehrere Aufträge in einer Retoure geben kann.
 

jtldudel

Sehr aktives Mitglied
4. Januar 2018
542
179
Ihr könnt einfach ein Auftragsattribut anlegen, diese könnt ihr über ein Workflow Ereignis setzen (das heißt auch tatsächlich "Auftragsattribut setzen").
In meinem Beispiel heißt das Auftragsattribut "Rückläufer". Ich habe dann einen manuellen Workflow erstellt der das Attribut befüllt, mit dem Wert des Attributes plus eins.

1647427061935.png

Der Wert der zu setzen ist dann aktueller Wert + 1

{% assign Anzahl = Vorgang.Sonstiges.Attribute | Replace: '^.*Rückläufer=(.*)[|].*','$1' -%}
{{ Anzahl | ToDouble | Plus: 1 }}

Wobei in Rot natürlich der Name deines Attributs sein muss.
Damit bekommt ihr den Zähler in das Attribut.
 

L-Markt

Mitglied
11. Januar 2021
28
2
Ihr könnt einfach ein Auftragsattribut anlegen, diese könnt ihr über ein Workflow Ereignis setzen (das heißt auch tatsächlich "Auftragsattribut setzen").
In meinem Beispiel heißt das Auftragsattribut "Rückläufer". Ich habe dann einen manuellen Workflow erstellt der das Attribut befüllt, mit dem Wert des Attributes plus eins.

Den Anhang 79981 betrachten

Der Wert der zu setzen ist dann aktueller Wert + 1

{% assign Anzahl = Vorgang.Sonstiges.Attribute | Replace: '^.*Rückläufer=(.*)[|].*','$1' -%}
{{ Anzahl | ToDouble | Plus: 1 }}

Wobei in Rot natürlich der Name deines Attributs sein muss.
Damit bekommt ihr den Zähler in das Attribut.
Vielen Dank!! Das scheint genau in die richtige Richtung zu gehen.
Das scheint gut zu funktionieren - allerdings nur wenn der Wert 0 ist, dann wird er auf 1 erhöht.
Wird der Workflow aber erneut ausgeführt, bleibt dieser bei 1.
Woran kann das liegen? Meine RegEx Kenntnisse sind hier deutlich überfordert :)
 

jtldudel

Sehr aktives Mitglied
4. Januar 2018
542
179
Vielen Dank!! Das scheint genau in die richtige Richtung zu gehen.
Das scheint gut zu funktionieren - allerdings nur wenn der Wert 0 ist, dann wird er auf 1 erhöht.
Wird der Workflow aber erneut ausgeführt, bleibt dieser bei 1.
Woran kann das liegen? Meine RegEx Kenntnisse sind hier deutlich überfordert :)
Merkwürdig, bei mir funktioniert das problemlos, auch über 1 hinaus. Wie sieht der Bereich Wert Setzen bei dir aus?
 

L-Markt

Mitglied
11. Januar 2021
28
2
Unbenannt.PNG

Es scheint zusätzlich grundsätzlich jeder Wert mit 1 überschrieben zu werden. Wenn ich also das Attribut manuell auf 5 setze und den Workflow starte, wird der Wert wieder mit 1 überschrieben
 

jtldudel

Sehr aktives Mitglied
4. Januar 2018
542
179
Kannst du in der Vorschau mal prüfen was denn in der Variable {{ Anzahl }} steht? Da muss ja irgendwo was schief laufen mit der Erkennung des eingetragenen Werts.

EDIT: Den RegEx kram hab ich auch nur hier irgendwo aus dem Forum mal kopiert, funktionierte aber immer ganz gut bisher.
 

jtldudel

Sehr aktives Mitglied
4. Januar 2018
542
179
Füg bitte einfach nochmal als dritte Zeile ein "{{ Anzahl }}" und schau in die Vorschau, da müsste dann ja eine 0 stehen (oder leer bleiben). Das würde dann bedeuten, er greift den Wert vom Attribut gar nicht richtig ab.
 
  • Gefällt mir
Reaktionen: L-Markt