Gelöst brauche Ideen zu Workflow

René_FBA

Gut bekanntes Mitglied
6. Juli 2017
134
10
Hallo zusammen...

ich habe einen Workflow eingerichtet, der mir eine eMail schickt, wenn ein Artikel, der ein Erstelldatum > als 14 Tage hat, eine bestimmte Änderung im Artikelnamen bekommt.
Der WF funktioniert auch soweit prima:

Artikel>Geändert
Bedingung: Allgemein.Stammdaten.Name enthält ...
Bedingung: ist älter als 2 Wochen
Code:
{% assign meinDatum = Datum.Jetzt -%}
{% assign meinDatum = meinDatum | AddDays: -14 -%}
{% if Vorgang.Sonstiges.Erstelldatum < meinDatum -%}
true
{% endif -%}

Leider ist es jetzt so, dass wenn ein dazu passender Artikel mehrmals an einem Tag geändert und gespeichert wird, ich JEDES mal eine eMail bekomme.
Dazu frage ich mich, wie ich das vielleicht eingrenzen kann anhand der "letzten Änderung" < 1 Stunde oder so...

geht das irgendwie?

LG, René
 

Uwe Jaksties

Sehr aktives Mitglied
13. Mai 2014
571
119
Hallo René,

meines Erachtens kannst Du aus dem Workflow lediglich einen zeitversetzten Workflow machen und dann das Häkchen bei "nur letzten ausführen" setzen.
Beispielsweise lässt Du den Workflow zu einer fixen Uhrzeit ausführen, meinetwegen 16:00 Uhr.
Das Häkchen würde bewirken, dass Du täglich maximal eine Email pro Artikel bekommst. Wird der Artikel über den Tag 10 mal geändert, orientiert sich der Workflow nur an der letzten Änderung innerhalb des definierten Zeitfensters.
 
  • Gefällt mir
Reaktionen: René_FBA

René_FBA

Gut bekanntes Mitglied
6. Juli 2017
134
10
Hallo Uwe.....

sehr gute Idee!
Ich werde das mal so testen, Danke!

Hast Du noch eine Idee, wie ich in der eMail den "letzten Bearbeiter" anzeigen lassen kann?

LG, René
 

Uwe Jaksties

Sehr aktives Mitglied
13. Mai 2014
571
119
Hallo Uwe.....

sehr gute Idee!
Ich werde das mal so testen, Danke!

Hast Du noch eine Idee, wie ich in der eMail den "letzten Bearbeiter" anzeigen lassen kann?

LG, René

Hallo René,

folgende Varianten:

1)
{% capture query -%}Select cName FROM tBenutzer WHERE kBenutzer = (SELECT kBenutzerLetzteAenderung FROM tArtikel WHERE cArtNr = '{{ Vorgang.Allgemein.Stammdaten.ArtNrSku }}'){% endcapture -%}
{% assign result = query | DirectQueryScalar %}
{{ result }}

2)
{% capture query -%}Select cName FROM tBenutzer WHERE kBenutzer = (SELECT kBenutzerLetzteAenderung FROM tArtikel WHERE cArtNr = '{{ Vorgang.Allgemein.Stammdaten.ArtNrSku }}'){% endcapture -%}
{% assign result = query | DirectQuery -%}
{% for Zeile in result.Daten -%}
{{ Zeile.cName }}
{% endfor -%}

Für Dich sollte Variante 1 ausreichen. Die funktioniert, wenn es nur ein Ergebnis geben kann. Im Artikelbereicht ist das so.
Variante 2 habe ich der Vollständigkeit halber dazu gepackt. Diese Variante muss zum Einsatz kommen, wenn die SQL-Abfrage mehrere Ergebnisse liefert bzw. liefern kann.

Nachtrag: Das kannst Du 1:1 so copy & pasten. Sollte es nicht funktionieren, gibt Bescheid. Ich arbeite mit der 1.4.
 
  • Gefällt mir
Reaktionen: René_FBA

René_FBA

Gut bekanntes Mitglied
6. Juli 2017
134
10
Hey Uwe....

vielen Dank, das funktioniert so, habs gerade getestet.
Das lässt sich auch an anderen WF`s einfügen, die artikelbezogene Änderungen mitteilen sollen, das find ich gut!

Danke Dir!

LG; René
 
  • Gefällt mir
Reaktionen: Uwe Jaksties

Ähnliche Themen