Gelöst SQL Abfrag in Artikeln gibt falschen Wert aus.

Manuel.Atha

Aktives Mitglied
16. August 2018
33
4
Wir würden gerne den Mindestbestand unserer Artikel berechnen lassen. Dazu verwenden wir eine SQL Abfrage welche uns den Verbrauch der letzen 30 Tage in einem eigenen Feld speicher soll.
Wenn ich die Abfrage im SQL Server Man. Studio laufen lassen kommen realistische Werte raus.
Im Workflow allerdings immer nur den Wert '1'.
Kann da jemand helfen? Stimmt was in der Variable, dem Code oder im Workflow nicht?

Die SQL-Abfrage:
SQL:
SELECT

    ISNULL(jLetzte30Tage.absatz, 0)


FROM tartikel
JOIN dbo.tSpracheUsed ON nStandard = 1
JOIN dbo.tArtikelBeschreibung ON tArtikelBeschreibung.kArtikel = tartikel.kArtikel
AND tArtikelBeschreibung.kSprache = tSpracheUsed.kSprache
AND tArtikelBeschreibung.kPlattform=1
JOIN vLagerbestandEx ON vLagerbestandEx.kArtikel = tartikel.kArtikel
LEFT JOIN (
SELECT tArtikel_kArtikel, ROUND(CONVERT(FLOAT, ISNULL(SUM(tbestellpos.nAnzahl), 0.0)), 2) AS absatz
FROM tbestellung
JOIN tbestellpos ON tbestellpos.tBestellung_kBestellung = tBestellung.kBestellung
WHERE tBestellung.nStorno = 0 -- Stornierte Aufträge nicht beachten
   AND tBestellung.dErstellt > DATEADD(DAY, -30, getdate())
GROUP BY tArtikel_kArtikel
) AS jLetzte30Tage ON jLetzte30Tage.tArtikel_kArtikel = tartikel.kArtikel

Die Variable im WF:
Code:
{% assign result = 'SELECT ISNULL(jLetzte30Tage.absatz, 0)FROM tartikel JOIN dbo.tSpracheUsed ON nStandard = 1 JOIN dbo.tArtikelBeschreibung ON tArtikelBeschreibung.kArtikel = tartikel.kArtikel AND tArtikelBeschreibung.kSprache = tSpracheUsed.kSprache AND tArtikelBeschreibung.kPlattform=1 JOIN vLagerbestandEx ON vLagerbestandEx.kArtikel = tartikel.kArtikel LEFT JOIN ( SELECT tArtikel_kArtikel, ROUND(CONVERT(FLOAT, ISNULL(SUM(tbestellpos.nAnzahl), 0.0)), 2) AS absatz FROM tbestellung JOIN tbestellpos ON tbestellpos.tBestellung_kBestellung = tBestellung.kBestellung WHERE tBestellung.nStorno = 0 AND tBestellung.dErstellt > DATEADD(DAY, -30, getdate()) GROUP BY tArtikel_kArtikel ) AS jLetzte30Tage ON jLetzte30Tage.tArtikel_kArtikel = tartikel.kArtikel' | DirectQueryScalar -%}
{{ result }}

Ergebnis aus'm Studio:
2021-01-16 21_02_23-SRV-20V1 - Remotedesktopverbindung (remote).png
Ergebnis vom Workflow (selber Artikel).
2021-01-16 21_03_12-SRV-20V1 - Remotedesktopverbindung (remote).png

Ich habe das Gefühl mir wird nur die Menge der Ergebnisse ausgegeben, daher die '1'.
 

Manuel.Atha

Aktives Mitglied
16. August 2018
33
4
Okay, vielen Dank schonmal für deine Antwort. Wenn ich ISNULL raus nehme schmeißt der WF mir trotzdem einen Fehler. Weißt du was ich hier genau eintragen muss damit ich den korrekt Wert bekommen? Ich bin leider nicht tief genug im Thema drin. Die Abfrage habe ich mir aus der JTL-Doku für die eigenen Übersichten zusammengesucht.2021-01-17 13_52_46-SRV-20V1 - Remotedesktopverbindung (remote).png
 

zwitsch

Sehr aktives Mitglied
14. November 2007
425
38
Im Management-Studio bekomme ich für jede Artikelnummer, die in der Tabelle tArtikel enthalten ist, eine Zeile. Muss für den Workflow die Selektion auf eine einzelne Artikelnummer erfolgen?
 

Manuel.Atha

Aktives Mitglied
16. August 2018
33
4
Ändern in:
SELECT jLetzte30Tage.absatz FROM .........<hierDerRest>
Auch dir vielen Dank für deine Hilfe. Jetzt bekomme ich für jeden Artikel den Wert "3"...

Code:
{% assign result = 'SELECT jLetzte30Tage.absatz FROM tartikel JOIN dbo.tSpracheUsed ON nStandard = 1 JOIN dbo.tArtikelBeschreibung ON tArtikelBeschreibung.kArtikel = tartikel.kArtikel AND tArtikelBeschreibung.kSprache = tSpracheUsed.kSprache AND tArtikelBeschreibung.kPlattform=1 JOIN vLagerbestandEx ON vLagerbestandEx.kArtikel = tartikel.kArtikel LEFT JOIN ( SELECT tArtikel_kArtikel, ROUND(CONVERT(FLOAT, ISNULL(SUM(tbestellpos.nAnzahl), 0.0)), 2) AS absatz FROM tbestellung JOIN tbestellpos ON tbestellpos.tBestellung_kBestellung = tBestellung.kBestellung WHERE tBestellung.nStorno = 0 AND tBestellung.dErstellt > DATEADD(DAY, -30, getdate()) GROUP BY tArtikel_kArtikel ) AS jLetzte30Tage ON jLetzte30Tage.tArtikel_kArtikel = tartikel.kArtikel' | DirectQueryScalar -%}
{{ result }}

2021-01-17 19_41_42-SRV-20V1 - Remotedesktopverbindung (remote).png
 

Ähnliche Themen