Neu Workflow (SQL) zur Ausrechnung eine Werts über die Gesamtbestellung

Get Up Stand Up

Gut bekanntes Mitglied
10. April 2021
109
11
Moin,
wir vergeben einen Gutschein über 5% des Warenwerts bei nicht reduzierter Ware.
Das heisst, wir müssen die Positionen einzeln überprüfen.

Das machen wir mit einem Workflow.
{% capture query %}​
SELECT SUM(fVKPreis) FROM (​
select bp.fVKPreis from tBestellung b​
JOIN tbestellpos bp ON b.kBestellung=bp.tBestellung_kBestellung​
JOIN tArtikel a ON a.kArtikel=bp.tArtikel_kArtikel​
where b.cBestellNr='{{ Vorgang.Stammdaten.Auftragsnummer }}' AND ROUND(bp.fVKPreis,2)=ROUND(a.fUVP,2)​
UNION​
SELECT bp.fVKPreis FROM tBestellung b​
JOIN tbestellpos bp ON bp.tBestellung_kBestellung=b.kBestellung​
WHERE bp.nType=3 AND b.cBestellNr='{{ Vorgang.Stammdaten.Auftragsnummer }}'​
UNION​
SELECT bp.fVKPreis FROM tBestellung b​
JOIN tbestellpos bp ON bp.tBestellung_kBestellung=b.kBestellung​
WHERE b.cBestellNr='{{ Vorgang.Stammdaten.Auftragsnummer }}' AND bp.fVKPreis<0) q​
{% endcapture %}{% assign Wert = query | DirectQueryScalar %}{{Wert |Times:0.05| Nummer: 'N2'}}​
Jetzt bin aus der SQL Programierung etwas raus. Aber wie man erkennen kann wird die nAnzahl nicht berücksichtigt. Das Ergebnis ist immer gleich, egal ob Anzahl 0 (kein Wert), 1 (korrekter Wert) oder 2> (immer Wert wie nAnzahl 1)
Was muss ich anpassen?
Thanx!
 

Benjamin S.

Sehr aktives Mitglied
7. September 2021
119
30
Hallo Jens,
ich habe eine zusammenfassung der Einkaufsliste folgend gelöst, sollte bei dir ähnlich sein.


select SUM(fEKNetto*fAnzahl)
from dbo.tArtikelEinkaufsliste
INNER JOIN tArtikel on dbo.tArtikelEinkaufsliste.kArtikel=tArtikel.kArtikel
WHERE kLieferant=1
GROUP BY CAST(kLieferant as INT)


Grüße
Benjamin
 

Ähnliche Themen