(wenn falsches Forum bitte verschieben, danke)
Hallo Zusammen,
ich wollte mir gerade mal eben einen Workflow basteln komme aber nicht weiter. Mit den einfachen Variablen ist das nicht zu lösen.
Ziel des Workflows ist es, dass der Liefertermin, der in der Lieferantenbestellung eingegeben wurde (ja wir pflegen das) in das Feld "Erhältlich ab:" bei den Artikelstammdaten einzutragen. Das hat dann den Effekt, dass im ( Shopware-) Shop angezeigt werden kann wann der Artikel wieder verfügbar sein wird.
Vorab möchte ich sagen, dass ich von dem neuen Workflow inspiriert bin den Kunden über die Lieferverzögerung zu informieren den Manuel Pietzsch eingestellt hat.
Als Bedingung wird abgefragt (UND Verknüpfung)
1. ob der Lagerbestand des Artikels gleich 0 ist
2. ob eine Lieferantenbestellung vorliegt (habe ich aus dem oben genannten WF genommen) (wenn mehrere Bestellungen vorliegen, dann nehme den nächstgelegenen Liefertermin)
sollte dies der Fall sein dann
Wert setzen : Artikel\Allgemein\Lager\Erscheint am
hier kann man aber nur einen festen Wert setzen. Leider kenn ich mich mit DotLiquid noch nicht aus, so dass man hier den Wert aus der Lieferantenbestellung übernehmen kann.
Hier ist es auch egal wenn der Termin nicht gepflegt wurde und in der Vergangenheit liegt, dann wird im (Shopware-)Shop der normale Hinweis angezeigt.
Der Code für die erweiterten Eigenschaften ob eine Lieferantenbestellung vorliegt schein so in den Artikeln nicht zu funktionieren, da beim Testen immer die Antwort true kommt.
Da steht auch was von einem Syntaxfehler, wie kann man das korrigieren, oder sollte man das neu schreiben. Oder taugt der Code dafür gar nicht???
Ähnlich wie mit dem Workflow "Kunden über Lieferverzögerungen informieren" möchte ich damit erreichen, dass wenn ein Kunde ohne diesen Hinweis den Artikel bestellt und es länger dauert als die standardmäßig eingetragenen (bei mir) 5 Tage, mich erbost anruft, dass es aber länger dauere mit der Lieferung.
Vielleicht bestellt er erst gar nicht, kann ja sein, aber es schont dann dieNerven und Zeit, da viele eh dann Ihr Geld wiederhaben wollen. Also Arbeit für Nichts.
Vielen Dank für Eure Hilfe
Hallo Zusammen,
ich wollte mir gerade mal eben einen Workflow basteln komme aber nicht weiter. Mit den einfachen Variablen ist das nicht zu lösen.
Ziel des Workflows ist es, dass der Liefertermin, der in der Lieferantenbestellung eingegeben wurde (ja wir pflegen das) in das Feld "Erhältlich ab:" bei den Artikelstammdaten einzutragen. Das hat dann den Effekt, dass im ( Shopware-) Shop angezeigt werden kann wann der Artikel wieder verfügbar sein wird.
Vorab möchte ich sagen, dass ich von dem neuen Workflow inspiriert bin den Kunden über die Lieferverzögerung zu informieren den Manuel Pietzsch eingestellt hat.
Als Bedingung wird abgefragt (UND Verknüpfung)
1. ob der Lagerbestand des Artikels gleich 0 ist
2. ob eine Lieferantenbestellung vorliegt (habe ich aus dem oben genannten WF genommen) (wenn mehrere Bestellungen vorliegen, dann nehme den nächstgelegenen Liefertermin)
sollte dies der Fall sein dann
Wert setzen : Artikel\Allgemein\Lager\Erscheint am
hier kann man aber nur einen festen Wert setzen. Leider kenn ich mich mit DotLiquid noch nicht aus, so dass man hier den Wert aus der Lieferantenbestellung übernehmen kann.
Hier ist es auch egal wenn der Termin nicht gepflegt wurde und in der Vergangenheit liegt, dann wird im (Shopware-)Shop der normale Hinweis angezeigt.
Der Code für die erweiterten Eigenschaften ob eine Lieferantenbestellung vorliegt schein so in den Artikeln nicht zu funktionieren, da beim Testen immer die Antwort true kommt.
Da steht auch was von einem Syntaxfehler, wie kann man das korrigieren, oder sollte man das neu schreiben. Oder taugt der Code dafür gar nicht???
Code:
{% capture query -%}
DECLARE @kBestellung AS INT = {{ Vorgang.Stammdaten.InterneAuftragsnummer }};
SELECT COUNT(*) AS Anzahl
FROM
(
SELECT vBestellPosLieferInfoFIFO2012.kBestellung,
vBestellPosLieferInfoFIFO2012.kBestellPos,
MIN(ZulaufAnDatum.dLieferdatum) AS dLieferungEingetroffen
FROM
(
SELECT tLieferantenBestellungPos.kArtikel,
tLieferantenBestellungPos.dLieferdatum,
SUM(tLieferantenBestellungPos.fAnzahlOffen) OVER (PARTITION BY tLieferantenBestellungPos.kArtikel ORDER BY tLieferantenBestellungPos.dLieferdatum ROWS BETWEEN UNBOUNDED PRECEDING AND CURRENT ROW) AS fZulaufAnDatum
FROM tLieferantenBestellungPos
JOIN dbo.tLieferantenBestellung ON tLieferantenBestellungPos.kLieferantenBestellung = tLieferantenBestellung.kLieferantenBestellung
WHERE tLieferantenBestellung.nStatus IN (20, 30) -- Lieferantenbestellung mit Zuläufen berücksichtigen
AND tLieferantenBestellungPos.kArtikel > 0
) ZulaufAnDatum
JOIN VersandIntern.vBestellPosLieferInfoFIFO2012 ON ZulaufAnDatum.kArtikel = vBestellPosLieferInfoFIFO2012.kArtikel
WHERE vBestellPosLieferInfoFIFO2012.fAnzahlFehlbestand > 0.0
AND vBestellPosLieferInfoFIFO2012.fAnzahlFehlbestand <= ZulaufAnDatum.fZulaufAnDatum
GROUP BY vBestellPosLieferInfoFIFO2012.kBestellung,
vBestellPosLieferInfoFIFO2012.kBestellPos,
vBestellPosLieferInfoFIFO2012.kArtikel
) AS BestellposLieferung
WHERE BestellposLieferung.kBestellung = @kBestellung;
{% endcapture -%}
{{ query | DirectQueryScalar }}
Ähnlich wie mit dem Workflow "Kunden über Lieferverzögerungen informieren" möchte ich damit erreichen, dass wenn ein Kunde ohne diesen Hinweis den Artikel bestellt und es länger dauert als die standardmäßig eingetragenen (bei mir) 5 Tage, mich erbost anruft, dass es aber länger dauere mit der Lieferung.
Vielleicht bestellt er erst gar nicht, kann ja sein, aber es schont dann dieNerven und Zeit, da viele eh dann Ihr Geld wiederhaben wollen. Also Arbeit für Nichts.
Vielen Dank für Eure Hilfe