Neu Workflow Einkauf, Warnung, wenn Mindestbestand erreicht

css-umsetzung

Offizieller Servicepartner
SPBanner
6. Juli 2011
7.221
1.958
Berlin
der prüft wenn ein Auftrag reinkommt alle Artikel und wenn ein Artikel dabei ist der keine Überverkäufe erlaubt und deren Bestand <2 ist ach...so ist das mit dem kopieren :)
da muss die Variable pos.Artikel.Mindestbestand anstelle der 2 eingefügt werden, sonst geht er immer von der Mindestenge zwei aus.

Ich hab das mal oben angepasst in beiden Abfragen.
 
  • Gefällt mir
Reaktionen: teromodi

teromodi

Gut bekanntes Mitglied
19. Januar 2015
143
4
Super Vielen Dank. Jetzt habe ich nur noch den Fehler das in der Mail keine Artikelbezeichnung steht sonder nur folgendes:

Bitte prüfe den Artikelbestand folgender Artikel:

Artikel:
Artikelnummer : K-075 vorhandener Bestand : 335

Artikel:
Artikelnummer : KA-0101086 vorhandener Bestand : 356


MfG
Deine Wawi



Aber sonst sieht es gut aus.
 

husky125

Gut bekanntes Mitglied
15. Januar 2013
105
13
Auf meinem Tresen steht ne große Kaffeekasse, da passt viel rein:


Das wird in den erweiterten Eigenschaften angelegt.
Prüfung, zu prüfen auf ist nicht leer in Auftrag erstellt, eventuell auch in Auftrag geändert, bitte beachten, wenn man es genau machen möchte sollte man auch bei Minusbuchungen einen Workflow haben der auf eventuelle manuelle Minusbuchungen reagiert:



Code:
{% capture query -%}\
{% for pos in Vorgang.AuftragsPositionen.ArtikelPositionen -%}\
{% if pos.Artikel.BestandVerfügbar < pos.Artikel.Mindestbestand && pos.Artikel.IstÜberverkaufMöglich !== false -%}\
Artikelnummer: {{ pos.Artikel.Artikelnummer }}  vorhandener Bestand : {{ pos.Artikel.BestandVerfügbar }}
{% endif -%}\
{% endfor %}\
{% endcapture -%}\
{{ query }}

Zu sende Email, das ist der Mailbody
Code:
Bitte prüfe den Artikelbestand folgender Artikel:

{% capture query -%}\
{% for pos in Vorgang.AuftragsPositionen.ArtikelPositionen -%}\
{% if pos.Artikel.BestandVerfügbar < pos.Artikel.Mindestbestand && pos.Artikel.IstÜberverkaufMöglich !== false -%}\
Artikel: {{ pos.Artikel.Bezeichnung }}
Artikelnummer : {{ pos.Artikel.Artikelnummer }}  vorhandener Bestand : {{ pos.Artikel.BestandVerfügbar }}

{% endif -%}\
{% endfor %}\
{% endcapture -%}\
{{ query }}

mfg
Deine Wawi
Hallo,
super Workflow... kann man eventuell noch eine weitere Abfrage mit rein packen. Und zwar, dass diese Abfrage nur greift wenn man mit Lagerbestand arbeitet oder wenn man nur einen Mindestbestand definiert hat.
Wir haben jetzt das "Problem", dass auch der Worklflow startet wenn wir Artikel verkaufen die ohne Lagerbestand arbeiten und dann unter 0 kommen...
 

css-umsetzung

Offizieller Servicepartner
SPBanner
6. Juli 2011
7.221
1.958
Berlin
wenn du das hier
{% if Bestand < Mindestbestand %} auf {% if Bestand < Mindestbestand and Mindestbestand > 0 %}
änderst sollte es nur greifen wenn überhaupt eine Mindestbestandsmenge erforderlich istt
 

BKAler

Aktives Mitglied
19. Mai 2011
91
8
Sorry, muss den Thread mal hoch holen...
Besteht die Möglichkeit, diesen Workflow nicht abhängig von Aufträgen zu machen, sondern diesen z.B. einfach 1x die Woche komplett durchlaufen zu lassen?

Danke schonmal für eure Antworten.

Liebe Grüße
Steffen
 

BKAler

Aktives Mitglied
19. Mai 2011
91
8
Guten Morgen,

bis jetzt hat alles wunderbar geklappt, nun habe ich versucht mir auch unseren "Zulauf" mit ausgeben zu lassen, um zu wissen ob wir nachbestellen müssen oder dies schon getan haben.
Aber! Ich bekomme es nicht hin, dass es richtig läuft, wo ist mein Fehler?

Code:
{% capture query -%}\
{% for pos in Vorgang.AuftragsPositionen.ArtikelPositionen -%}\
{% if pos.Artikel.BestandVerfügbar < 4 and pos.Artikel.Mindestbestand > 0 && pos.Artikel.IstÜberverkaufMöglich != false &&& pos.Artikel.HAN != Auslauf &&&& pos.Artikel.BestandBestellt == 0 -%}\
Artikelnummer : {{ pos.Artikel.Artikelnummer }} | Artikel: {{ pos.Artikel.Bezeichnung }} | Verfügbarer Bestand : {{ pos.Artikel.BestandVerfügbar }} | Nicht in Zulauf
{% endif -%}\
{% endfor %}\
{% endcapture -%}\
{{ query }}
{% capture query -%}\
{% for pos in Vorgang.AuftragsPositionen.ArtikelPositionen -%}\
{% if pos.Artikel.BestandVerfügbar < 4 and pos.Artikel.Mindestbestand > 0 && pos.Artikel.IstÜberverkaufMöglich != false &&& pos.Artikel.HAN != Auslauf &&&& pos.Artikel.BestandBestellt > 0 -%}\
Artikelnummer : {{ pos.Artikel.Artikelnummer }} | Artikel: {{ pos.Artikel.Bezeichnung }} | Verfügbarer Bestand : {{ pos.Artikel.BestandVerfügbar }} | {{ pos.Artikel.BestandBestellt }} Stk. in Zulauf
{% endif -%}\
{% endfor %}\
{% endcapture -%}\
{{ query }}
 

BKAler

Aktives Mitglied
19. Mai 2011
91
8
Hm... Das hat leider nicht geholfen, es werden wohl nicht alle 5 "if" abfragen beachtet.
Ich bekomme auch Artikel ausgegeben, welche z.B. einen Bestand von 50 haben und nicht in Zulauf sind.

Habe ich vielleicht generell einen Denkfehler drin? Ich möchte einerseits jene Artikel angezeigt bekommen, welche 4x oder weniger verfügbar sind und nicht in Zulauf, darunter dann die Artikel welche 4x oder weniger verfügbar sind, aber bereits mit Summe X in Zulauf sind.
 

css-umsetzung

Offizieller Servicepartner
SPBanner
6. Juli 2011
7.221
1.958
Berlin
Ich habe deine Abfrage nicht geprüft, weil ja immer erst die Rahmenbedingungen stimmen sollten, das heißt also du hast das dreifache und das vierfache & überall entfernt?
AUch diese ABfrage hier ist so nicht OK
pos.Artikel.HAN != Auslauf

das muss so aussehen
pos.Artikel.HAN != 'Auslauf'

Ich habe mal die Fehler die sofort ins Auge stechen entfernt.
Teste das mal aus, ich gehe aber auch davon aus das diese Variablen Namen so alle richtig sind wie du sie angegeben hast:
Ich kann das bei mir im System auch nicht testen weil es für einen Forum Support zu aufwendig wäre jetzt extra diese Bedingungen in der eigenen Testumgebung einzustellen.

Code:
{% capture query -%}\
{% for pos in Vorgang.AuftragsPositionen.ArtikelPositionen -%}\
{% if pos.Artikel.BestandVerfügbar < 4 and pos.Artikel.Mindestbestand > 0 && pos.Artikel.IstÜberverkaufMöglich != false && pos.Artikel.HAN != 'Auslauf' && pos.Artikel.BestandBestellt == 0 -%}\
Artikelnummer : {{ pos.Artikel.Artikelnummer }} | Artikel: {{ pos.Artikel.Bezeichnung }} | Verfügbarer Bestand : {{ pos.Artikel.BestandVerfügbar }} | Nicht in Zulauf
{% endif -%}\
{% endfor %}\
{% endcapture -%}\
{{ query }}
{% capture query -%}\
{% for pos in Vorgang.AuftragsPositionen.ArtikelPositionen -%}\
{% if pos.Artikel.BestandVerfügbar < 4 and pos.Artikel.Mindestbestand > 0 && pos.Artikel.IstÜberverkaufMöglich != false && pos.Artikel.HAN != 'Auslauf' && pos.Artikel.BestandBestellt > 0 -%}\
Artikelnummer : {{ pos.Artikel.Artikelnummer }} | Artikel: {{ pos.Artikel.Bezeichnung }} | Verfügbarer Bestand : {{ pos.Artikel.BestandVerfügbar }} | {{ pos.Artikel.BestandBestellt }} Stk. in Zulauf
{% endif -%}\
{% endfor %}\
{% endcapture -%}\
{{ query }}
 

BKAler

Aktives Mitglied
19. Mai 2011
91
8
So, nach weiteren kleinen Anpassungen habe ich es nun doch hin bekommen, vielen Dank für die Hilfe :D

Genau so läuft er jetzt:

Code:
{% capture query -%}\
{% for pos in Vorgang.AuftragsPositionen.ArtikelPositionen -%}\
{% if pos.Artikel.BestandVerfügbar < 4 and pos.Artikel.Mindestbestand > 0 and pos.Artikel.HAN != 'Auslauf' and pos.Artikel.BestandBestellt == 0 -%}\
Artikelnummer : {{ pos.Artikel.Artikelnummer }} | Artikel: {{ pos.Artikel.Bezeichnung }} | Verfügbarer Bestand : {{ pos.Artikel.BestandVerfügbar }} | Nicht in Zulauf
{% endif -%}\
{% endfor %}\
{% endcapture -%}\
{{ query }}
{% capture query -%}\
{% for pos in Vorgang.AuftragsPositionen.ArtikelPositionen -%}\
{% if pos.Artikel.BestandVerfügbar < 4 and pos.Artikel.Mindestbestand > 0 and pos.Artikel.HAN != 'Auslauf' and pos.Artikel.BestandBestellt > 0 -%}\
Artikelnummer : {{ pos.Artikel.Artikelnummer }} | Artikel: {{ pos.Artikel.Bezeichnung }} | Verfügbarer Bestand : {{ pos.Artikel.BestandVerfügbar }} | {{ pos.Artikel.BestandBestellt }} Stk. in Zulauf
{% endif -%}\
{% endfor %}\
{% endcapture -%}\
{{ query }}
 
Zuletzt bearbeitet:

nibolinegmbh

Aktives Mitglied
23. Januar 2019
5
2
Hi René
besten Dank dafür!!!
Ich habe zwischenzeitlich noch "Warenlagerausgang\Artikel\Allgemein\Ist Mindestlagerbestand" mit Gleich Wahr genutzt. Könnte sein, dass das auch zum Erfolg führt.
jep, hab ich. ;)

kan man per Workflow machen, tuts bei mir auch einwandfrei.

- Artikel>Minusbuchung>neuen WF anlegen (Ausführung "sofort")
- eine erw. bedingung anlegen
Code:
{% assign Bestand = Vorgang.Artikel.Bestandsübersicht.AufLager %}
{% assign Mindestbestand = Vorgang.Artikel.Allgemein.Lager.Mindestbestand %}
{% if Bestand < Mindestbestand %}
True
{% else %}
False
{% endif %}
- die Erw. Bedingung "Mindestbestand" nennen
- Bedingung im WF auswählen>Gleich>True
- Aktion setzen, zb. eMail...

Inhalt der (HTML) eMail könnte dann so aussehen:
Code:
der Mindestbestand bei Artikel: <br>
<br>
<b>{{ Vorgang.Artikel.Allgemein.Stammdaten.ArtNrSku }}</b><br>
<b>"{{ Vorgang.Artikel.Beschreibung.Amazon.Artikelname.Deutsch }}" </b><br>
<br>
ist unterschritten!<br>
<br>
Mindestbestandswarnung bei <b>"{{ Vorgang.Artikel.Allgemein.Lager.Mindestbestand }}"</b> Stück<br>
momentaner Bestand ist bei <b>"{{ Vorgang.Artikel.Allgemein.Lager.Bestandsübersicht.AufLager }}"</b> Stück<br>
im Zulauf sind <b>"{{ Vorgang.Artikel.Allgemein.Lager.Bestandsübersicht.Zulauf }}"</b> Stück<br>
auf Einkaufsliste <b>"{{ Vorgang.Artikel.Allgemein.Lager.Bestandsübersicht.Einkaufsliste }}"</b> Stück<br>
<br>
<b>bitte den Artikel auf die Einkaufsliste setzen!</b><br>

LG, René

Damit andere nicht stolpern: mit "Erw. Bedingungen" sind die "Erweiterten Eigenschaften" gemeint.

Bei "{% if Bestand < Mindestbestand %}" habe ich auf "{% if Bestand <= Mindestbestand %}" geändert, weil schon bei Erreichen des Mindestbestandes ausgelöst werden soll.

Ich bin nun gespannt, ob es funktioniert. :)
jep, hab ich. ;)

kan man per Workflow machen, tuts bei mir auch einwandfrei.

- Artikel>Minusbuchung>neuen WF anlegen (Ausführung "sofort")
- eine erw. bedingung anlegen
Code:
{% assign Bestand = Vorgang.Artikel.Bestandsübersicht.AufLager %}
{% assign Mindestbestand = Vorgang.Artikel.Allgemein.Lager.Mindestbestand %}
{% if Bestand < Mindestbestand %}
True
{% else %}
False
{% endif %}
- die Erw. Bedingung "Mindestbestand" nennen
- Bedingung im WF auswählen>Gleich>True
- Aktion setzen, zb. eMail...

Inhalt der (HTML) eMail könnte dann so aussehen:
Code:
der Mindestbestand bei Artikel: <br>
<br>
<b>{{ Vorgang.Artikel.Allgemein.Stammdaten.ArtNrSku }}</b><br>
<b>"{{ Vorgang.Artikel.Beschreibung.Amazon.Artikelname.Deutsch }}" </b><br>
<br>
ist unterschritten!<br>
<br>
Mindestbestandswarnung bei <b>"{{ Vorgang.Artikel.Allgemein.Lager.Mindestbestand }}"</b> Stück<br>
momentaner Bestand ist bei <b>"{{ Vorgang.Artikel.Allgemein.Lager.Bestandsübersicht.AufLager }}"</b> Stück<br>
im Zulauf sind <b>"{{ Vorgang.Artikel.Allgemein.Lager.Bestandsübersicht.Zulauf }}"</b> Stück<br>
auf Einkaufsliste <b>"{{ Vorgang.Artikel.Allgemein.Lager.Bestandsübersicht.Einkaufsliste }}"</b> Stück<br>
<br>
<b>bitte den Artikel auf die Einkaufsliste setzen!</b><br>

LG, René


Das klappt super! Das einzige Problem ist jedoch, dass man ja immer wieder Benachrichtigungen kriegt sobald der Artikel sich im Mindestbestand befindet. Gibt es eine Möglichkeit es so einzustellen, dass man nur eine einmalige Benachrichtigung kriegt sobald man die Grenze überschritten hat?
 
  • Ich liebe es
Reaktionen: Foxy Alex

css-umsetzung

Offizieller Servicepartner
SPBanner
6. Juli 2011
7.221
1.958
Berlin
Das klappt super! Das einzige Problem ist jedoch, dass man ja immer wieder Benachrichtigungen kriegt sobald der Artikel sich im Mindestbestand befindet. Gibt es eine Möglichkeit es so einzustellen, dass man nur eine einmalige Benachrichtigung kriegt sobald man die Grenze überschritten hat?
Dann müsstest du ein Attributswert setzen den du abfragen müsstest "notice" = JA

und beim buchen müsstest du dann, über einen Workflow, diesen Wert wieder löschen wenn der Lagerbestand höher ist als der Mindestbestand
 

css-umsetzung

Offizieller Servicepartner
SPBanner
6. Juli 2011
7.221
1.958
Berlin
Nein das ist nicht fehleranfällig, das Problem ist nur das du, ob das Attribut gesetzt ist, beim erstellen des Auftrages dir das vermutlich per SQL holen musst.
Ach... ich schaue gerade und da ist es ja wieder.... man kann in einem Auftragsworkflow keine Artikeldaten ändern.

Ok dann musst du das anders machen und nicht abfragen ob es kleiner ist sondern gleich

{% if Bestand|Minus:1 == Mindestbestand %}

Dann hast du die Meldung nur einmal aber hier solltest du dich eher an meiner Variante halten und nach dem Verfügbaren Bestand gehen.
 

nibolinegmbh

Aktives Mitglied
23. Januar 2019
5
2
Nein das ist nicht fehleranfällig, das Problem ist nur das du, ob das Attribut gesetzt ist, beim erstellen des Auftrages dir das vermutlich per SQL holen musst.
Ach... ich schaue gerade und da ist es ja wieder.... man kann in einem Auftragsworkflow keine Artikeldaten ändern.

Ok dann musst du das anders machen und nicht abfragen ob es kleiner ist sondern gleich

{% if Bestand|Minus:1 == Mindestbestand %}

Dann hast du die Meldung nur einmal aber hier solltest du dich eher an meiner Variante halten und nach dem Verfügbaren Bestand gehen.

Das schaue ich mir auch an. Vielen Dank.

Ich hatte {% if Bestand == Mindestbestand %} das hier benutzt. Nur war hier halt auch das Problem, dass sobald man mehr abzieht als den Mindestbestand, wird der Workflow nicht ausgelöst.
 

css-umsetzung

Offizieller Servicepartner
SPBanner
6. Juli 2011
7.221
1.958
Berlin
Ich hatte {% if Bestand == Mindestbestand %} das hier benutzt. Nur war hier halt auch das Problem, dass sobald man mehr abzieht als den Mindestbestand, wird der Workflow nicht ausgelöst.

Stimmt, so weit habe ich noch gar nicht gedacht, wenn einer 2 kauft und es nur noch eins drüber war dann geht das auch nicht.
Dann musst du das Attribut dafür nach der ersten Mail selbst setzen, das kannst du dann im Auftrag bei den Artikelpositionen abfragen.

Trotzdem ist es besser du gehst über den verfügbaren Bestand, denn nur der ist relevant.

Es würde noch einen Weg in Kombination mit der Ameise geben aber das ist unschön, aufwendig und doof.
 
  • Gefällt mir
Reaktionen: Foxy Alex
Ähnliche Themen
Titel Forum Antworten Datum
Neu Workflow: Adresse - Strasse kürzen ( ab Wert "OT" ) User helfen Usern - Fragen zu JTL-Wawi 6
Workflow FollowUP Angebot JTL-Wawi - Ideen, Lob und Kritik 0
Beantwortet E-Mail Vorlage Versandbestätigung per Workflow ausführen, wie? JTL-Workflows - Ideen, Lob und Kritik 7
In Diskussion Brauche Hilfe bei Bestand Email Workflow JTL-Workflows - Ideen, Lob und Kritik 17
In Diskussion Workflow besteht alle Test wird nur nicht ausgeführt JTL-Workflows - Fehler und Bugs 23
Verwiesen an Support Workflow artikel_erstellt wird bei LagerUmbuchung ausgelöst. JTL-Workflows - Fehler und Bugs 1
Neu Workflow Hilfe gesucht, Ersetzten eines Textes User helfen Usern - Fragen zu JTL-Wawi 4
Neu Workflow und Version für Vorhaben Starten mit JTL: Projektabwicklung & Migration 3
Neu Workflow erstellen, einen Wert aus den Stammdaten kopieren in einen anderen User helfen Usern - Fragen zu JTL-Wawi 8
Neu Workflow Auftragssplit bei DHL Export Sendungen mit mehreren Paketen User helfen Usern - Fragen zu JTL-Wawi 0
Neu Workflow Artikelnummer durch Lieferantennummer ersetzen User helfen Usern - Fragen zu JTL-Wawi 6
In Diskussion Log bei Workflow Fehler JTL-Workflows - Ideen, Lob und Kritik 0
In Diskussion Rechnungsentwurf per Workflow? JTL-Workflows - Ideen, Lob und Kritik 7
Neu Workflow Fehler User helfen Usern - Fragen zu JTL-Wawi 1
Neu Workflow der prüft, ob eine Bestellung komplett aus einem bestimmten Lager lieferbar ist. User helfen Usern - Fragen zu JTL-Wawi 7
In Diskussion Custum Workflow - Syntax JTL-Workflows - Ideen, Lob und Kritik 0
In Diskussion Keine Auslieferung nach Zahlungsartänderung über Workflow JTL-Workflows - Fehler und Bugs 4
Zahlungsmodul Workflow JTL-Wawi 1.9 17
Neu Workflow: Mail bei Notiz in Auftrags-Historie User helfen Usern - Fragen zu JTL-Wawi 1
Beantwortet Manueller Workflow lässt sich nicht anlegen (V 1.9.5.2) JTL-Workflows - Fehler und Bugs 13
Neu Hilfe bei Workflow - falsche Steuernummer bei Amazon hinterlegt User helfen Usern - Fragen zu JTL-Wawi 0
In Diskussion Workflow Freiposition JTL-Workflows - Fehler und Bugs 1
In Diskussion Workflow für Liefertag Wareneingang? JTL-Workflows - Ideen, Lob und Kritik 2
Neu Workflow - Wert "Netto-EK" im Auftrag auf 0,00 € setzen für eine bestimmte Kundengruppe User helfen Usern - Fragen zu JTL-Wawi 1
Neu Workflow mit verfügbarem Bestand User helfen Usern - Fragen zu JTL-Wawi 4
Von Workflow lokal gespeicherte Datei direkt wieder löschen lassen JTL-Wawi 1.8 1
Neu Per WMS Workflow API Call ausführen Arbeitsabläufe in JTL-WMS / JTL-Packtisch+ 1
In Diskussion Fragen zur Rechnungserstellung via Workflow JTL-Workflows - Ideen, Lob und Kritik 2
In Diskussion Manueller Workflow zeitgestuert JTL-Workflows - Ideen, Lob und Kritik 20
Neu Workflow Adresse prüfen auf deutsche Kunden eingrenzen Gelöste Themen in diesem Bereich 6
Neu Brauche Hilfe bei einen Workflow in Sachen Versand Eigene Übersichten in der JTL-Wawi 6
Neu Permanenten Excel-Log über Workflow führen User helfen Usern - Fragen zu JTL-Wawi 2
Workflow DotLiquid: KomplettLieferbarAusLager zeigt FFN Lager an obwohl nicht komplett lieferbar aus diesem Lager JTL-Wawi 1.9 1
In Diskussion Workflow für eBays neues "Kaufabbruch"-Feature JTL-Workflows - Ideen, Lob und Kritik 2
In Diskussion Workflow zum Drucken von Shipping Labels JTL-Workflows - Ideen, Lob und Kritik 3
Neu Workflow für Warenpost nur wenn bestimmte Artikel in Bestellung User helfen Usern - Fragen zu JTL-Wawi 1
Workflow - Vorbestellung ausschließen von Storno JTL-Wawi 1.9 1
Neu Manueller Workflow/ automatischer Workflow Gelöste Themen in diesem Bereich 8
Neu Stücklistenartikel bei Einkauf auflösen? User helfen Usern - Fragen zu JTL-Wawi 2
Neu Warnung: Update auf Shop 5.4 Installation / Updates von JTL-Shop 39

Ähnliche Themen