In Diskussion Brauche Hilfe bei Bestand Email Workflow

info@it42life

Mitglied
14. September 2023
13
1
Hallo,
und zwar habe ich bei uns einen Workflow der eine Warnungsmail schreibt mit folgenden Text wenn der Bestand unter 60 fällt.

HTML clipboard Der Artikel {{ Vorgang.Artikel.Allgemein.Stammdaten.Name }} mit der Artikelnummer {{ Vorgang.Artikel.Allgemein.Stammdaten.ArtNrSku }} muss geprüft werden ggf. nachgebucht werden.

Jetzt möchte ich das die Stücklistenartikel und die Bestände dazu mit in der Mail vorkommen.
Finde nur leider die Reiter nicht im Vorgang, kann mir da jemand evtl. helfen?

mfg. das Team von IT42Life
 

frankell

Sehr aktives Mitglied
9. September 2019
725
285
Flensburg
Hallo,
und zwar habe ich bei uns einen Workflow der eine Warnungsmail schreibt mit folgenden Text wenn der Bestand unter 60 fällt.

HTML clipboard Der Artikel {{ Vorgang.Artikel.Allgemein.Stammdaten.Name }} mit der Artikelnummer {{ Vorgang.Artikel.Allgemein.Stammdaten.ArtNrSku }} muss geprüft werden ggf. nachgebucht werden.

Jetzt möchte ich das die Stücklistenartikel und die Bestände dazu mit in der Mail vorkommen.
Finde nur leider die Reiter nicht im Vorgang, kann mir da jemand evtl. helfen?

mfg. das Team von IT42Life

Hallo @info@it42life,

wo hast Du den Workflow angelegt? Unter "Artikel - Warenlagerausgang - Minusbuchung"? Je nachdem, wann die Meldung notwendig ist (also wenn bspw. "Bestand < 60" eher "verfügbarer Bestand < 60" meint), kommen auch andere Plazierungen in Frage.

Und Du meinst wahrscheinlich die Stücklistenkinder inklusive deren Beständen. Das geht bei einem Artikel-Workflow nur über eine SQL-Abfrage.
 

info@it42life

Mitglied
14. September 2023
13
1
Hallo @info@it42life,

wo hast Du den Workflow angelegt? Unter "Artikel - Warenlagerausgang - Minusbuchung"? Je nachdem, wann die Meldung notwendig ist (also wenn bspw. "Bestand < 60" eher "verfügbarer Bestand < 60" meint), kommen auch andere Plazierungen in Frage.

Und Du meinst wahrscheinlich die Stücklistenkinder inklusive deren Beständen. Das geht bei einem Artikel-Workflow nur über eine SQL-Abfrage.
ja das war der übliche Reiter dazu, aber wie kann ich die SQL anfrage denn über den Workflow starten? ist das überhaupt möglich?
 

frankell

Sehr aktives Mitglied
9. September 2019
725
285
Flensburg
ja das war der übliche Reiter dazu, aber wie kann ich die SQL anfrage denn über den Workflow starten? ist das überhaupt möglich?

Im Mailtext kannst Du auch Ergebnisse von SQL-Abfragen einbauen:
https://guide.jtl-software.com/jtl-wawi/vorlagen/anwendungsbeispiele-direkter-datenbank-zugriff/

Hier wäre das: Wenn der Artikel eine Stückliste ist (bzw. ein Stücklistenvater), liste mir alle Stücklistenkinder mit deren Verfügbarkeiten auf. Dafür sind alle notwendigen Felder da.

Aber bist Du firm mit SQL und der Wawi-Datenbank?
 

info@it42life

Mitglied
14. September 2023
13
1
Im Mailtext kannst Du auch Ergebnisse von SQL-Abfragen einbauen:
https://guide.jtl-software.com/jtl-wawi/vorlagen/anwendungsbeispiele-direkter-datenbank-zugriff/

Hier wäre das: Wenn der Artikel eine Stückliste ist (bzw. ein Stücklistenvater), liste mir alle Stücklistenkinder mit deren Verfügbarkeiten auf. Dafür sind alle notwendigen Felder da.

Aber bist Du firm mit SQL und der Wawi-Datenbank?
Mit der direkten SQL Abfrage bzw. mit der Wawi Datenbank, hab ich mit der Kodierung direkt noch nicht zu tuen gehabt, aber da bin ich gern gewillt die schritte anzugehen.
Oder gibt es da für mich eine einfache Art?
 

Verkäuferlein

Sehr aktives Mitglied
29. April 2012
2.538
1.025
Hallo,
und zwar habe ich bei uns einen Workflow der eine Warnungsmail schreibt mit folgenden Text wenn der Bestand unter 60 fällt.

HTML clipboard Der Artikel {{ Vorgang.Artikel.Allgemein.Stammdaten.Name }} mit der Artikelnummer {{ Vorgang.Artikel.Allgemein.Stammdaten.ArtNrSku }} muss geprüft werden ggf. nachgebucht werden.

Jetzt möchte ich das die Stücklistenartikel und die Bestände dazu mit in der Mail vorkommen.
Finde nur leider die Reiter nicht im Vorgang, kann mir da jemand evtl. helfen?

mfg. das Team von IT42Life
Hallo @info@it42life,

wo hast Du den Workflow angelegt? Unter "Artikel - Warenlagerausgang - Minusbuchung"? Je nachdem, wann die Meldung notwendig ist (also wenn bspw. "Bestand < 60" eher "verfügbarer Bestand < 60" meint), kommen auch andere Plazierungen in Frage.

Und Du meinst wahrscheinlich die Stücklistenkinder inklusive deren Beständen. Das geht bei einem Artikel-Workflow nur über eine SQL-Abfrage.

Das wird meines Erachtens nicht funktionieren, weil seitens JTL immer noch nicht umgesetzt.

Die Wawi kann schlichtweg nicht auf (reguläre) Bestandsveränderungen im Workflowsystem reagieren.

Es wird hier nur auf (manuelle) Minusbuchungen bzw. (manuelle) Plusbuchungen reagiert.

Siehe:
https://issues.jtl-software.de/issues/WAWI-10099 (bald 9 Jahre alt, nach Votes auf Platz 14 und auf Status "Mittelfristig")
https://issues.jtl-software.de/issues/WAWI-51411
https://issues.jtl-software.de/issues/WAWI-24438
 

frankell

Sehr aktives Mitglied
9. September 2019
725
285
Flensburg
Das wird meines Erachtens nicht funktionieren, weil seitens JTL immer noch nicht umgesetzt.

Die Wawi kann schlichtweg nicht auf (reguläre) Bestandsveränderungen im Workflowsystem reagieren.

Es wird hier nur auf (manuelle) Minusbuchungen bzw. (manuelle) Plusbuchungen reagiert.

Siehe:
https://issues.jtl-software.de/issues/WAWI-10099 (bald 9 Jahre alt, nach Votes auf Platz 14 und auf Status "Mittelfristig")
https://issues.jtl-software.de/issues/WAWI-51411
https://issues.jtl-software.de/issues/WAWI-24438

Das ist leider zutreffend. Sollte hier aber kein Hinderungsgrund sein, einen weiteren unter Versand - Lieferscheine - Erstellt anzulegen. Auch wenn man dem anderen Thread entnehmen kann, wie sehr mir das gegen den Strich geht. :D
 

frankell

Sehr aktives Mitglied
9. September 2019
725
285
Flensburg
Mit der direkten SQL Abfrage bzw. mit der Wawi Datenbank, hab ich mit der Kodierung direkt noch nicht zu tuen gehabt, aber da bin ich gern gewillt die schritte anzugehen.
Oder gibt es da für mich eine einfache Art?

Puh, eine einfache Art ... Ich weiß nicht, ob es so etwas überhaupt gibt.

Die Basics von SQL sollte man sich schon aneignen sowie die Basics von DotLiquid (anhand der Beispiele im JTL-Guide), und dann probieren, probieren, probieren. Innerhalb der Wawi kannst Du keine schreibenden Queries verwenden. Da kannst Du beim Testen also nichts kaputt machen, wenn Du bspw. einen Testworkflow anlegst, der keine Bedingung hat oder eine, die nie zutreffen wird und nur eine Mail an Dich selbst schickt. Dann kannst Du im Textfeld herumtesten, bis der Arzt kommt. Du musst ihn theoretisch noch nicht einmal wirklich ausführen. Das Ergebnis kannst Du Dir in der Vorschau immer ausgeben lassen, ohne den Workflow ausgegeben zu haben.

Hier im Forum findest Du eine Vielzahl an Codes für DotLiquid und auch reines SQL (solange da nicht CREATE, UPDATE, INSERT, DELETE vorkommen), die Du einfach dazu nutzen kannst, sie zu verstehen. Das fällt am Anfang natürlich schwer, aber nach und nach wird's besser, auch mit Herumspielen, also Änderungen des Codes, um zu schauen, wie das Verhalten nach der Änderung ist. Das Schöne an all den Codes hier im Forum ist, dass es keine rein theoretischen Beispiele sind, sondern echte aus der Praxis.

Aber da das viel Zeit in Anspruch nimmt, kannst Du vielleicht erst einmal mit diesem Code was für die Auflistung der Stücklistenkomponenten anfangen, wenn es sich um eine Stückliste handelt. Sonst der normale Text:

HTML:
{% if Vorgang.Artikel.Sonstiges.IstStückliste -%}
<p>Die Stückliste unter dem Artikel {{ Vorgang.Artikel.Allgemein.Stammdaten.Name }} mit der Artikelnummer {{ Vorgang.Artikel.Allgemein.Stammdaten.ArtNrSku }} muss geprüft werden ggf. nachgebucht werden.</p>
<p>Stücklistenkomponenten:</p>
{% capture query -%}
SELECT
    ART.cArtNr,
    ART.cName,
    CAST(SL.fAnzahl AS INT) AS fAnzahl,
    CAST(LB.fVerfuegbar AS INT) AS fVerfuegbar
FROM
    tStueckliste AS SL
JOIN
    vStandardArtikel AS ART ON SL.kArtikel = ART.kArtikel
JOIN
    tlagerbestand AS LB ON SL.kArtikel = LB.kArtikel
WHERE
    SL.kVaterArtikel = {{ Vorgang.Artikel.Allgemein.Stammdaten.InterneArtikelnummer }}
ORDER BY
    SL.nSort ASC
{% endcapture -%}
{% assign result = query | DirectQuery -%}
<style>
td {
  text-align: left;
  padding-right: 15px;
  border-bottom: 1px solid #ddd;
}
.bold { 
  font-weight: bold;
}
</style>
<table>
<tr class="bold">
<td>cArtNr</td>
<td>cName</td>
<td>fAnzahl</td>
<td>fVerfuegbar</td>
</tr>
{% for item in result.Daten -%}
<tr>
<td>{{ item.cArtNr }}</td>
<td>{{ item.fAnzahl }}</td>
<td>{{ item.cName }}</td>
<td>{{ item.fVerfuegbar }}</td>
</tr>
{% endfor -%}
</table>
{% else -%}Der Artikel {{ Vorgang.Artikel.Allgemein.Stammdaten.Name }} mit der Artikelnummer {{ Vorgang.Artikel.Allgemein.Stammdaten.ArtNrSku }} muss geprüft werden ggf. nachgebucht werden.
{% endif -%}

Das Ganze gibt die Stücklistenkomponenten als HTML-Tabelle aus, die ein bisschen formatiert ist.

Die verwendeten Variablen funktionieren so nur dort, wo der Workflow im Moment sitzt. Wenn noch einer wie vorgeschlagen unter Versand - Lieferscheine - Erstellt angelegt wird, braucht es eine Bedingung und eine zweite Schleife (für alle Auftragspositionen, die unter 60 Stück gefallen sind), in der die Prüfung auf Stückliste und die dann notwendige weitere Schleife für die Stücklistenkomponenten befindet.
 

info@it42life

Mitglied
14. September 2023
13
1
Puh, eine einfache Art ... Ich weiß nicht, ob es so etwas überhaupt gibt.

Die Basics von SQL sollte man sich schon aneignen sowie die Basics von DotLiquid (anhand der Beispiele im JTL-Guide), und dann probieren, probieren, probieren. Innerhalb der Wawi kannst Du keine schreibenden Queries verwenden. Da kannst Du beim Testen also nichts kaputt machen, wenn Du bspw. einen Testworkflow anlegst, der keine Bedingung hat oder eine, die nie zutreffen wird und nur eine Mail an Dich selbst schickt. Dann kannst Du im Textfeld herumtesten, bis der Arzt kommt. Du musst ihn theoretisch noch nicht einmal wirklich ausführen. Das Ergebnis kannst Du Dir in der Vorschau immer ausgeben lassen, ohne den Workflow ausgegeben zu haben.

Hier im Forum findest Du eine Vielzahl an Codes für DotLiquid und auch reines SQL (solange da nicht CREATE, UPDATE, INSERT, DELETE vorkommen), die Du einfach dazu nutzen kannst, sie zu verstehen. Das fällt am Anfang natürlich schwer, aber nach und nach wird's besser, auch mit Herumspielen, also Änderungen des Codes, um zu schauen, wie das Verhalten nach der Änderung ist. Das Schöne an all den Codes hier im Forum ist, dass es keine rein theoretischen Beispiele sind, sondern echte aus der Praxis.

Aber da das viel Zeit in Anspruch nimmt, kannst Du vielleicht erst einmal mit diesem Code was für die Auflistung der Stücklistenkomponenten anfangen, wenn es sich um eine Stückliste handelt. Sonst der normale Text:

HTML:
{% if Vorgang.Artikel.Sonstiges.IstStückliste -%}
<p>Die Stückliste unter dem Artikel {{ Vorgang.Artikel.Allgemein.Stammdaten.Name }} mit der Artikelnummer {{ Vorgang.Artikel.Allgemein.Stammdaten.ArtNrSku }} muss geprüft werden ggf. nachgebucht werden.</p>
<p>Stücklistenkomponenten:</p>
{% capture query -%}
SELECT
    ART.cArtNr,
    ART.cName,
    CAST(SL.fAnzahl AS INT) AS fAnzahl,
    CAST(LB.fVerfuegbar AS INT) AS fVerfuegbar
FROM
    tStueckliste AS SL
JOIN
    vStandardArtikel AS ART ON SL.kArtikel = ART.kArtikel
JOIN
    tlagerbestand AS LB ON SL.kArtikel = LB.kArtikel
WHERE
    SL.kVaterArtikel = {{ Vorgang.Artikel.Allgemein.Stammdaten.InterneArtikelnummer }}
ORDER BY
    SL.nSort ASC
{% endcapture -%}
{% assign result = query | DirectQuery -%}
<style>
td {
  text-align: left;
  padding-right: 15px;
  border-bottom: 1px solid #ddd;
}
.bold {
  font-weight: bold;
}
</style>
<table>
<tr class="bold">
<td>cArtNr</td>
<td>cName</td>
<td>fAnzahl</td>
<td>fVerfuegbar</td>
</tr>
{% for item in result.Daten -%}
<tr>
<td>{{ item.cArtNr }}</td>
<td>{{ item.fAnzahl }}</td>
<td>{{ item.cName }}</td>
<td>{{ item.fVerfuegbar }}</td>
</tr>
{% endfor -%}
</table>
{% else -%}Der Artikel {{ Vorgang.Artikel.Allgemein.Stammdaten.Name }} mit der Artikelnummer {{ Vorgang.Artikel.Allgemein.Stammdaten.ArtNrSku }} muss geprüft werden ggf. nachgebucht werden.
{% endif -%}

Das Ganze gibt die Stücklistenkomponenten als HTML-Tabelle aus, die ein bisschen formatiert ist.

Die verwendeten Variablen funktionieren so nur dort, wo der Workflow im Moment sitzt. Wenn noch einer wie vorgeschlagen unter Versand - Lieferscheine - Erstellt angelegt wird, braucht es eine Bedingung und eine zweite Schleife (für alle Auftragspositionen, die unter 60 Stück gefallen sind), in der die Prüfung auf Stückliste und die dann notwendige weitere Schleife für die Stücklistenkomponenten befindet.
Ist das geil hab es noch etwas Angepasst, da die die html Kodierungen wenn ich diese in den Workflow eingefügt hab mit gesendet wurden
sah dann zu erst so aus:
Der Artikel Aopen DE35-HD 240 GB SSD ohne win 10 mit der Artikelnummer 202206291690eB-240 GB SSD-ohne muss geprüft werden ggf nachgebucht werden.
<p>Die Stückliste unter dem Artikel Aopen DE35-HD 240 GB SSD ohne win 10 mit der Artikelnummer 202206291690eB-240 GB SSD-ohne muss geprüft werden ggf. nachgebucht werden.</p>
Stücklistenkomponenten:
<style>
td {
text-align: left;
padding-right: 15px;
border-bottom: 1px solid #ddd;
}
.bold {
font-weight: bold;
}
</style>
<table>
<tr class="bold">
<td>cArtNr</td>
<td>cName</td>
<td>fAnzahl</td>
<td>fVerfuegbar</td>
</tr>
<tr>
<td>202209261731eB</td>
<td>1</td>
<td>[Barebone] Aopen DE35-HD</td>
<td>443</td>
</tr>
<tr>
<td>202205121670eB-1</td>
<td>2</td>
<td>Apacer 2GB SOD PC3-10600 CL9 SO-DIMM [1x2GB]</td>
<td>465</td>
</tr>
<tr>
<td>202212121803eB</td>
<td>1</td>
<td>[Netzteil] [Out: 19V 3,42 A] Für Aopen DE35 HD oder DE3100</td>
<td>0</td>
</tr>
<tr>
<td>202212121804eB</td>
<td>1</td>
<td>[ 0-2m ]-[ geb ]-[ Mickey Mouse ] Kaltgeräte Kabel</td>
<td>709</td>
</tr>
<tr>
<td>202201021030eB</td>
<td>1</td>
<td>2,5 Zoll SSD Flash Drive Notebook 240 GB</td>
<td>54</td>
</tr>
</table>

hab es dann angepasst und kam dann so raus:

Der Artikel Aopen DE35-HD 240 GB SSD ohne win 10 mit der Artikelnummer 202206291690eB-240 GB SSD-ohne muss geprüft werden ggf nachgebucht werden.
Die Stückliste unter dem Artikel Aopen DE35-HD 240 GB SSD ohne win 10 mit der Artikelnummer 202206291690eB-240 GB SSD-ohne muss geprüft werden ggf. nachgebucht werden.
Stücklistenkomponenten:


Artikelnummer: 202209261731eB
1
[Barebone] Aopen DE35-HD
Bestand: 443


Artikelnummer: 202205121670eB-1
2
Apacer 2GB SOD PC3-10600 CL9 SO-DIMM [1x2GB]
Bestand: 465


Artikelnummer: 202212121803eB
1
[Netzteil] [Out: 19V 3,42 A] Für Aopen DE35 HD oder DE3100
Bestand: 0


Artikelnummer: 202212121804eB
1
[ 0-2m ]-[ geb ]-[ Mickey Mouse ] Kaltgeräte Kabel
Bestand: 709


Artikelnummer: 202201021030eB
1
2,5 Zoll SSD Flash Drive Notebook 240 GB
Bestand: 54



Also vielen Dank, das ist genau das was ich brauchte.
 

frankell

Sehr aktives Mitglied
9. September 2019
725
285
Flensburg
Gerne! Schön, dass es funktioniert! :)

Aber bitte bedenken: Wenn nur dieser Workflow unter Artikel - Warenlagerausgang - Minusbuchung angelegt ist und auch bei einer Ausbuchung im Versandprozess funktionieren soll, funktioniert es gerade nicht. Siehe oben.

da die die html Kodierungen wenn ich diese in den Workflow eingefügt hab mit gesendet wurden

Da hättest Du auch einfach nur das Häkchen bei "HTML Email" in der Workflow-Aktion setzen können. Dadurch wird in der E-Mail alles hübsch als HTML ausgegeben, also ohne die Kodierungen. ;)

Hier noch mal mit zwei Mini-Korrekturen:

HTML:
{% if Vorgang.Artikel.Sonstiges.IstStückliste -%}
<p>Die Stückliste unter dem Artikel {{ Vorgang.Artikel.Allgemein.Stammdaten.Name }} mit der Artikelnummer {{ Vorgang.Artikel.Allgemein.Stammdaten.ArtNrSku }} muss geprüft werden ggf. nachgebucht werden.</p>
<p>Stücklistenkomponenten:</p>
{% capture query -%}
SELECT
    ART.cArtNr,
    ART.cName,
    CAST(SL.fAnzahl AS INT) AS fAnzahl,
    CAST(LB.fVerfuegbar AS INT) AS fVerfuegbar
FROM
    tStueckliste AS SL
JOIN
    vStandardArtikel AS ART ON SL.kArtikel = ART.kArtikel
JOIN
    tlagerbestand AS LB ON SL.kArtikel = LB.kArtikel
WHERE
    SL.kVaterArtikel = {{ Vorgang.Artikel.Allgemein.Stammdaten.InterneArtikelnummer }}
ORDER BY
    SL.nSort ASC
{% endcapture -%}
{% assign result = query | DirectQuery -%}
<style>
td {
  text-align: left;
  padding-right: 15px;
  border-bottom: 1px solid #ddd;
}
.bold {
  font-weight: bold;
}
</style>
<table>
<tr class="bold">
<td>cArtNr</td>
<td>cName</td>
<td>fAnzahl</td>
<td>fVerfuegbar</td>
</tr>
{% for item in result.Daten -%}
<tr>
<td>{{ item.cArtNr }}</td>
<td>{{ item.cName }}</td>
<td>{{ item.fAnzahl }}</td>
<td>{{ item.fVerfuegbar }}</td>
</tr>
{% endfor -%}
</table>
{% else -%}<p>Der Artikel {{ Vorgang.Artikel.Allgemein.Stammdaten.Name }} mit der Artikelnummer {{ Vorgang.Artikel.Allgemein.Stammdaten.ArtNrSku }} muss geprüft werden ggf. nachgebucht werden.</p>
{% endif -%}
 

info@it42life

Mitglied
14. September 2023
13
1
Gerne! Schön, dass es funktioniert! :)

Aber bitte bedenken: Wenn nur dieser Workflow unter Artikel - Warenlagerausgang - Minusbuchung angelegt ist und auch bei einer Ausbuchung im Versandprozess funktionieren soll, funktioniert es gerade nicht. Siehe oben.



Da hättest Du auch einfach nur das Häkchen bei "HTML Email" in der Workflow-Aktion setzen können. Dadurch wird in der E-Mail alles hübsch als HTML ausgegeben, also ohne die Kodierungen. ;)

Hier noch mal mit zwei Mini-Korrekturen:

HTML:
{% if Vorgang.Artikel.Sonstiges.IstStückliste -%}
<p>Die Stückliste unter dem Artikel {{ Vorgang.Artikel.Allgemein.Stammdaten.Name }} mit der Artikelnummer {{ Vorgang.Artikel.Allgemein.Stammdaten.ArtNrSku }} muss geprüft werden ggf. nachgebucht werden.</p>
<p>Stücklistenkomponenten:</p>
{% capture query -%}
SELECT
    ART.cArtNr,
    ART.cName,
    CAST(SL.fAnzahl AS INT) AS fAnzahl,
    CAST(LB.fVerfuegbar AS INT) AS fVerfuegbar
FROM
    tStueckliste AS SL
JOIN
    vStandardArtikel AS ART ON SL.kArtikel = ART.kArtikel
JOIN
    tlagerbestand AS LB ON SL.kArtikel = LB.kArtikel
WHERE
    SL.kVaterArtikel = {{ Vorgang.Artikel.Allgemein.Stammdaten.InterneArtikelnummer }}
ORDER BY
    SL.nSort ASC
{% endcapture -%}
{% assign result = query | DirectQuery -%}
<style>
td {
  text-align: left;
  padding-right: 15px;
  border-bottom: 1px solid #ddd;
}
.bold {
  font-weight: bold;
}
</style>
<table>
<tr class="bold">
<td>cArtNr</td>
<td>cName</td>
<td>fAnzahl</td>
<td>fVerfuegbar</td>
</tr>
{% for item in result.Daten -%}
<tr>
<td>{{ item.cArtNr }}</td>
<td>{{ item.cName }}</td>
<td>{{ item.fAnzahl }}</td>
<td>{{ item.fVerfuegbar }}</td>
</tr>
{% endfor -%}
</table>
{% else -%}<p>Der Artikel {{ Vorgang.Artikel.Allgemein.Stammdaten.Name }} mit der Artikelnummer {{ Vorgang.Artikel.Allgemein.Stammdaten.ArtNrSku }} muss geprüft werden ggf. nachgebucht werden.</p>
{% endif -%}
hab das jetzt mal mit den Häkchen gemacht, mein großen Respekt und Dank. Sieht richtig gut aus, danke dafür.
 

frankell

Sehr aktives Mitglied
9. September 2019
725
285
Flensburg

info@it42life

Mitglied
14. September 2023
13
1
Damit meinst Du Variationskombinationen, also Kindartikel, die ihrerseits Stücklistenväter sind? Da würde mir nicht mal ein Grund einfallen, warum das da nicht funktionieren sollte.
ich verstehe aber leider auch nicht das wenn ich den workflow Testen möchte, das diverse Artikel da im Vorschlag nicht auftauchen. Auch der Hauptartikel nicht
 

frankell

Sehr aktives Mitglied
9. September 2019
725
285
Flensburg
ich verstehe aber leider auch nicht das wenn ich den workflow Testen möchte, das diverse Artikel da im Vorschlag nicht auftauchen. Auch der Hauptartikel nicht

Gesetzt den Fall, dass der Workflow immer noch bei "Artikel - Warenlagerausgang - Minusbuchung" angelegt ist, werden, wenn man auf "Workflow testen" klickt, nur Warenlagerausgänge angezeigt. Die Liste sieht zwar aus wie eine allgemeine Artikelliste, ist es aber nicht. Ist ein Artikel noch nie ausgebucht worden, taucht er da auch nicht auf. Und wo ich das grad schrieb, kam mit dann die Idee, dass Stücklistenväter womöglich da überhaupt nicht auftauchen, da diese in Wahrheit nicht "ausgebucht" werden, sondern vielmehr die Stücklistenkinder. Und tatsächlich, so scheint es auch zu sein. :confused:

Erschwerend hinzu kommt, dass, auch wenn alle Minusbuchungen aufgelistet werden und man auch mit denen testen kann, der Workflow nicht (!) für Minusbuchungen funktioniert, die aus einem Versandprozess resultieren (siehe Beiträge 6, 7 und Ende 8).

Was Du in Beitrag 9 geschrieben hast, war das aus einem realen Prozess heraus oder "nur" aus dem "Workflow testen" heraus?
 

info@it42life

Mitglied
14. September 2023
13
1
Gesetzt den Fall, dass der Workflow immer noch bei "Artikel - Warenlagerausgang - Minusbuchung" angelegt ist, werden, wenn man auf "Workflow testen" klickt, nur Warenlagerausgänge angezeigt. Die Liste sieht zwar aus wie eine allgemeine Artikelliste, ist es aber nicht. Ist ein Artikel noch nie ausgebucht worden, taucht er da auch nicht auf. Und wo ich das grad schrieb, kam mit dann die Idee, dass Stücklistenväter womöglich da überhaupt nicht auftauchen, da diese in Wahrheit nicht "ausgebucht" werden, sondern vielmehr die Stücklistenkinder. Und tatsächlich, so scheint es auch zu sein. :confused:

Erschwerend hinzu kommt, dass, auch wenn alle Minusbuchungen aufgelistet werden und man auch mit denen testen kann, der Workflow nicht (!) für Minusbuchungen funktioniert, die aus einem Versandprozess resultieren (siehe Beiträge 6, 7 und Ende 8).

Was Du in Beitrag 9 geschrieben hast, war das aus einem realen Prozess heraus oder "nur" aus dem "Workflow testen" heraus?
Also deine Vermutung scheint zu stimmen, auch der Workflow an sich funktioniert nicht mit den Realen umständen.
Was ich aber testen konnte ist wenn ich allein beim Workflow Test ein Bauteil suche und den Artikel nehme wo das in der Beschreibung mit Vorkommt wird das auch umgesetzt. Jetzt ist die Frage wie bekommt man das mit den Workflow umgesetzt.
 

frankell

Sehr aktives Mitglied
9. September 2019
725
285
Flensburg
Also deine Vermutung scheint zu stimmen, auch der Workflow an sich funktioniert nicht mit den Realen umständen.
Was ich aber testen konnte ist wenn ich allein beim Workflow Test ein Bauteil suche und den Artikel nehme wo das in der Beschreibung mit Vorkommt wird das auch umgesetzt. Jetzt ist die Frage wie bekommt man das mit den Workflow umgesetzt.
Hm, dann muss man das Pferd von hinten aufzäumen. Man geht also nicht vom Stücklistenvater aus, sondern von den Stücklistenkindern.

Artikel-Workflow:
Prüfung, ob der Artikel zu einer Stückliste gehört. Wenn ja, dann Ausgabe der gesamten Stückliste mit den Verfügbarkeiten aller Stücklistenkinder. Nur: Wenn ein Artikel mehreren Stücklisten angehört, werden auch alle Stücklisten ausgegeben. Das Durchiterieren jeder Stückliste mit jeweiliger in sich geschlossener Ausgabe ist nicht profan.

Wenn auch Ausbuchungen aus Versandprozessen mit einbezogen werden sollen, muss man sich zunächst entscheiden, welcher Moment entscheidend sein soll.
Wenn es der Versandmoment sein soll, dann ein Lieferschein-Workflow, wenn es bereits die Reduzierung von "Verfügbar" sein soll, also Erstellung des Auftrags, dann Auftrags-Workflow:
Durchiterieren durch alle Artikel mit Prüfung, ob sie zu einer Stückliste gehören. Weiter wie oben. Hier hat man also ggf. mehrere Artikel, die auch noch ihrerseits zu mehreren Stücklisten gehören können.

Das ist echt nicht profan. :D
 
Ähnliche Themen
Titel Forum Antworten Datum
Neu Brauche Hilfe bei einen Workflow in Sachen Versand Eigene Übersichten in der JTL-Wawi 6
Anbindung an kaufland.de - brauche Hilfe kaufland.de - Anbindung (SCX) 17
Neu Netzdinge Auswahlassistent - brauche Hilfe Plugins für JTL-Shop 15
Neu Wir bräuchten mal dringend Hilfe. Abbruch bei Abgleich Amazon-Anbindung - Fehler und Bugs 1
GPSR Hilfe zur Selbsthilfe ohne 1.9.6 JTL-Wawi 1.9 9
Neu Fatal Error nach Klick auf "Bestellen" Hilfe! JTL-Shop - Fehler und Bugs 1
Neu HILFE: LS-POS startet nicht, Luwosoft nicht erreichbar Fragen rund um LS-POS 7
Neu DRINGEND Hilfe - Google Analytics Plugin JTL-Shop - Fehler und Bugs 4
Neu Workflow Hilfe gesucht, Ersetzten eines Textes User helfen Usern - Fragen zu JTL-Wawi 4
Hilfe gesucht für Änderung der internen Schlüsselnummern! JTL-Wawi 1.9 8
Neu Hilfe bei Workflow - falsche Steuernummer bei Amazon hinterlegt User helfen Usern - Fragen zu JTL-Wawi 0
Neu Hilfe bei CSV-Datei mit Erscheinungsdatum im Format KW/2024 User helfen Usern - Fragen zu JTL-Wawi 1
Neu Kategorisierung bei CSV-Import – Hilfe benötigt** User helfen Usern - Fragen zu JTL-Wawi 3
Kategorisierung bei CSV-Import – Hilfe benötigt** JTL-Wawi 1.8 2
Beantwortet Hilfe bei SQL Abfrage erbeten User helfen Usern - Fragen zu JTL-Wawi 3
Neu JTL-Wawi 1.9.6.5 - GPSR: Bei Amazon wird kein Bild in die GPSR-Informationen hochgeladen, wo muss dies angegeben werden? Amazon-Anbindung - Fehler und Bugs 0
Neu JTL-Wawi 1.9.6.5 - GPSR: Bei Amazon wird der Hersteller falsch gefüllt und die Verantwortliche Person ist LEER - eBay/JTL-Shop sind korrekt Amazon-Anbindung - Fehler und Bugs 0
Neu Preisstaffelung bei Mengenverkauf für einen Artikel erstellen Allgemeine Fragen zu JTL-POS 0
Neu Daten bei Artikelanlage automatisch in Versandkanäle übertragen User helfen Usern - Fragen zu JTL-Wawi 0
Neu Warnung bei Paypal Plugin Plugins für JTL-Shop 0
DHL Leitcodierung bei shippingLabels JTL-Wawi 1.8 0
Neu Artikel Bilder bei neuen Amazon Artikeln immer nur JTL Dummy Bild Amazon-Lister - Fehler und Bugs 1
Beantwortet Timeout bei Inventur JTL-WMS / JTL-Packtisch+ - Fehler und Bugs 2
Neu Variationsbilder im JTL-Shop bei Auswahl einer einzelnen Variation anzeigen Allgemeine Fragen zu JTL-Shop 0
Neu Preisfehler bei Variationsartikel JTL-Shop - Fehler und Bugs 1
Neues Feld "V-Person" nicht in der Variablen/Werten bei den Workflows zu finden JTL-Wawi 1.9 4
Neu Falsches Gewicht bei Stücklisten via Identische Aufträge? JTL-WMS / JTL-Packtisch+ - Fehler und Bugs 1
Neu Noch X und wir versenden Versandkostenfrei Preis Anzeigefehler bei netto JTL-Shop - Fehler und Bugs 1
Neu Fehler bei Zahlungsarten für Kundengruppen einstellen JTL-Shop - Fehler und Bugs 1
Neu Fehler bei Zahlungsarten für Kundengruppen einstellen Allgemeine Fragen zu JTL-Shop 1
Neu Brutto Netto Preisanzeige Fehler bei eingetragener Umsatzsteuer Nummer UID JTL-Shop - Fehler und Bugs 1
Neu Ab Preise Darstellung als netto bei Kunden mit UID Allgemeine Fragen zu JTL-Shop 5
Nach Update, wie Zahlungsabgleich bei Benutzern machen? JTL-Wawi 1.9 1
Neu Kundenguthaben: Wie bei Nicht-Shop Bestellungen in Anspruch nehmen? Arbeitsabläufe in JTL-Wawi 3
Neu Wichtige Änderungen bei Amazon FBA Umlagerungen ab JTL-Wawi 1.9.6.0 Einrichtung und Installation von JTL-eazyAuction 43
Neu Klappt bei euch die Schnittstelle? Shopware-Connector 1
Fehler bei Umlagerung zu FBA - Wawi 1.9.6.1 JTL-Wawi 1.9 11
Fehler bei Zahlungsart Einrichtung JTL-Shop5 2
Neu Fehler bei Update: Error "SQLSTATE[42S02]: Base table or view not found: 1146 Table 'web10_14.plugin_state_log' doesn't exist" in migration.... Installation / Updates von JTL-Shop 2
Runterladen alter Bestellung bei Aktivierung der Schnittstelle Otto.de - Anbindung (SCX) 0
Plötzlich Zahlungsziel bei Auftragseingängen JTL-Wawi 1.8 0
Update 1.9.6.1 weitere Verkaufskanäle fehler bei Abgleich JTL-Wawi 1.9 1
Neu TSE wird bei JTL-POS nicht erkannt JTL-POS - Fehler und Bugs 2
Neu JTL Shop 5.3.X - Fehlerhafte Artikellinks bei Export über Exporte-Manager JTL-Shop - Fehler und Bugs 1
Neu Feld "Verkaufskanal" bei importierten Artikeln ausgegraut JTL-Ameise - Fehler und Bugs 1
Gelöst OPC geht nicht mehr bei v5.4 Installation / Updates von JTL-Shop 3
Neu Kundengruppen Zuordnung bei Registrierung anhand Emaildomain Plugins für JTL-Shop 3
Neu Datev Konto Buchung bei Gutschein Verkauf Allgemeine Fragen zu JTL-POS 0
Neu Breadcrumb Navigation bei Kategorie-, Hersteller- und Merkmallisten verschieden JTL-Shop - Fehler und Bugs 0
Neu Fehler 500 bei Versandmeldung an Amazon über JTL-eazyAuction Amazon-Anbindung - Fehler und Bugs 1

Ähnliche Themen