Neu Aufträge - Ertragsübersicht pro Auftrag

  • Hinweis: Am 25.02.2025 zwischen 21:30 u. 22:30 Uhr - Einschränkungen beim Login und Erreichen folgender Dienste: FFN, Kundencenter, Admin, JTL-Shop, JTL-Wawi, Lizenzserver, ISI Gateway, Vouchers, Kassensysteme, Plan&Produce, Versand. Grund dafür ist ein Major Upgrade des OAuth-Dienstes. Vielen Dank für euer Verständnis!

Erik Hartnagel

Aktives Mitglied
14. April 2021
22
5
Hallo Zusammen,

ich habe mir ein SQL gebastelt um die EK-Summe, die VK-Summe (netto), den Roherlös in € und den Deckungsbeitrag in % - pro Auftrag anzuzeigen.
Nun gibt es in manchen Aufträgen Positionen in denen der VK-Betrag 0 (Null) ist!
Daraus resultiert eine Division durch Null - führt zum Absturz und es wird nichts angezeigt.

1. Frage:
Kann mir bitte jemand helfen bei der Berechnung des DB´s die Prüfung auf Division durch Null zu implementieren?

2. Frage:
Wie kann ich alle Datensätze die ich oben angezeigt habe verwenden (@Key, oder @Keys)-Syntax ??
Wenn ich mir damit alle Aufträge von einem Monat anzeige, dann erhalte ich eine Liste aller Aufträge in diesem Monat.
Wenn ich dann zu einem anderen Monat wechsle, dann alle Aufträge aus diesem Monat.
Also immer alle Datensätze die oben angezeigt werden.

Für Hilfe wäre ich dankbar :)

Hier der Code:

SELECT
bk.cBestellNr AS 'AB-Nr',
FORMAT(bk.dErstellt, 'dd.MM.yyy') AS 'AB-Datum',
kd.cFirma AS 'Kunde',
kd.cPLZ AS 'PLZ',
kd.cOrt AS 'Ort',
FORMAT(SUM(a.fEKNetto * bp.nAnzahl), '###,##0.00') AS 'SummeEK',
FORMAT(SUM((bp.fVKNetto - (bp.fVKNetto * bp.fRabatt / 100))*bp.nAnzahl),'###,##0.00') AS 'SummeVK',
FORMAT((SUM((bp.fVKNetto - (bp.fVKNetto * bp.fRabatt / 100))*bp.nAnzahl)) - (SUM(a.fEKNetto * bp.nAnzahl)),'###,##0.00') AS 'Gewinn',
FORMAT((SUM(a.fEKNetto * bp.nAnzahl) / SUM((bp.fVKNetto - (bp.fVKNetto * bp.fRabatt / 100))*bp.nAnzahl)-1)*-100,'###,##0.00') AS 'DB'
FROM [eazybusiness].[dbo].[tBestellung] bk
JOIN [eazybusiness].[dbo].[tbestellpos] bp
ON bk.kBestellung = bp.tBestellung_kBestellung
JOIN [eazybusiness].[dbo].[tAdresse] kd
ON bk.tKunde_kKunde = kd.kKunde
JOIN [eazybusiness].[dbo].[tArtikel] a
ON bp.[tArtikel_kArtikel] = a.kArtikel
WHERE bk.cType='B' and bk.dErstellt >= '01.09.2023'
GROUP BY bk.cBestellNr, bk.dErstellt, kd.cFirma, kd.cPLZ, kd.cOrt
ORDER BY bk.cBestellNr DESC
 

Erik Hartnagel

Aktives Mitglied
14. April 2021
22
5
...testweise habe ich in dem SQL die Abfrage auf Datum >= 01.09.2023 eingefügt, hier sollten aber alle Datensätze aus der aktuell angezeigten Liste verwendet werden.
Diente nur zum testen...
 

Erik Hartnagel

Aktives Mitglied
14. April 2021
22
5
Manchmal muss man eine Pause machen um die Lösung zu finden.
Hatte NULLIF falsch angewendet und konnte in anderen Beispielen die Anwendung von IN (@Keys) finden, und schon funktioniert es :)

Hier das fertige SQL, falls es jemand einsetzen oder für sich modifizieren möchte:

SELECT
bk.cBestellNr AS 'AB-Nr',
FORMAT(bk.dErstellt, 'dd.MM.yyy') AS 'AB-Datum',
kd.cFirma AS 'Kunde',
kd.cPLZ AS 'PLZ',
kd.cOrt AS 'Ort',
FORMAT(SUM(a.fEKNetto * bp.nAnzahl), '###,##0.00') AS 'SummeEK',
FORMAT(SUM((bp.fVKNetto - (bp.fVKNetto * bp.fRabatt / 100))*bp.nAnzahl),'###,##0.00') AS 'SummeVK',
FORMAT((SUM((bp.fVKNetto - (bp.fVKNetto * bp.fRabatt / 100))*bp.nAnzahl)) - (SUM(a.fEKNetto * bp.nAnzahl)),'###,##0.00') AS 'Ertrag',
FORMAT((SUM(a.fEKNetto * bp.nAnzahl) / NULLIF(SUM((bp.fVKNetto - (bp.fVKNetto * bp.fRabatt / 100))*bp.nAnzahl),0)-1)*-100,'###,##0.00') AS 'DB'
FROM [eazybusiness].[dbo].[tBestellung] bk
JOIN [eazybusiness].[dbo].[tbestellpos] bp
ON bk.kBestellung = bp.tBestellung_kBestellung
JOIN [eazybusiness].[dbo].[tAdresse] kd
ON bk.tKunde_kKunde = kd.kKunde
JOIN [eazybusiness].[dbo].[tArtikel] a
ON bp.[tArtikel_kArtikel] = a.kArtikel
WHERE bp.tBestellung_kBestellung IN (@Keys)
GROUP BY bk.cBestellNr, bk.dErstellt, kd.cFirma, kd.cPLZ, kd.cOrt
ORDER BY bk.cBestellNr DESC
 

bast-art83

Gut bekanntes Mitglied
16. April 2019
120
12
Guten Abend,

ich danke dir für den SQL. Ich habe leider ein Problem / Fehler gefunden. Bei Kunden, die mehrere Adressen haben, werden mir diese doppelt angezeigt. Woher kommt das und wie löse ich das? Ich verwende die WAWI 1.7.11

Mit freundlichem Gruß
Sebastian Glaser
 

jtldudel

Sehr aktives Mitglied
4. Januar 2018
615
195
tAdresse enthält alle Adressen eines Kunden, d.h. beim Join wird für jeden Eintrag in tAdresse eine Zeile produziert.

Vermute Mal man will die Adresse aus dem Auftrag haben, da würde ich einen anderen Weg gehen z.b. über die Verkauf.lvAuftragsverwaltung (oder so, bin gerade nicht am Rechner) dort steht meine ich die Adresse des jeweiligen Auftrags auch drin. Dann ist die Zuordnung eindeutig.
 

AK57234

Aktives Mitglied
22. Februar 2019
15
1
Hallo zusammen,
habe diesen Thread zum DB eines Auftrages gefunden. Wir würden das auch sehr gebrauchn können.
Der Ansatz oben ist schon ganz gut.
Ist es nicht aber sinnvoller dies direkt im Angebot/Auftrag in der Zusammenfasung einzubauen?
Das müsste dann aber wohl von JTL eingebaut werden.
 

Anhänge

  • zusammenfassung.jpg
    zusammenfassung.jpg
    18,2 KB · Aufrufe: 15
Ähnliche Themen
Titel Forum Antworten Datum
Neu Faktura-Liste für Aufträge pro Kunden Schnittstellen Import / Export 1
Neu DATEV Export - Aufträge nach Österreich werden nicht mehr exportiert JTL Ameise - Eigene Exporte 2
Neu SQL Abfrage für offene Aufträge über Ameise User helfen Usern - Fragen zu JTL-Wawi 5
Neu Amazon Bestellungen verbleiben bei Status "Pending" und werden nicht in Aufträge übernommen Amazon-Anbindung - Fehler und Bugs 20
Aufträge zusammenfassen nicht möglich JTL-Wawi 1.9 0
Bestand in Aufträgen, obwohl es keine Aufträge gibt JTL-Wawi 1.9 3
Neu Aufträge über LS-POS erstellen und digitale Unterschrift anknüpfen Arbeitsabläufe in JTL-Wawi 0
Neu Was passiert wenn ich Amazon Aufträge, Lieferscheine und Rechnungen per SQL aus der WAWI-Datenbank lösche? User helfen Usern - Fragen zu JTL-Wawi 0
Gesperrte Kunden - keine Warnmeldungen, Aufträge können trotzdem angelegt werden JTL-Wawi 1.9 2
In Diskussion Aufträge über WaWi App als bezahlt markieren JTL-Workflows - Ideen, Lob und Kritik 7
Neu Aufträge fehlen Allgemeine Fragen zu JTL-Shop 4
Neu Aufträge ausschließen / nicht anzeigen lassen Arbeitsabläufe in JTL-WMS / JTL-Packtisch+ 0
Neu Pickliste für Aufträge mit mehr als einem Artikel aus verschiedenen Lagerbereichen Arbeitsabläufe in JTL-WMS / JTL-Packtisch+ 1
Kunden aufträge werden nicht übernommen Paypal JTL-Wawi 1.9 0
Beantwortet Worklfow Aufträge-Ausgeliefert oder Ausfträge-Geändert werden bei Auslieferung nicht gestartet JTL-Workflows - Ideen, Lob und Kritik 2
Neu WAWI 1.9.6.5 stornierte VCS Bestellung wird in der Wawi noch unter auszuliefernde Aufträge gelistet. eBay-Anbindung - Fehler und Bugs 0
bereits ausgelieferte Aufträge tauchen nichtmehr bei Verkauf=> Aufträge => zurückgehalten auf JTL-Wawi 1.9 3
Neu Aufträge: Wir wünschen uns ein drittes, internes Anmerkungsfeld JTL-Wawi - Ideen, Lob und Kritik 6
Neu Falsches Gewicht bei Stücklisten via Identische Aufträge? JTL-WMS / JTL-Packtisch+ - Fehler und Bugs 2
Neu Gezielt Aufträge mit Kundennummern / Lieferadressen zurückhalten User helfen Usern - Fragen zu JTL-Wawi 5
Neu JTL berechnet Aufträge obwohl der Shopabgleich gesperrt ist Otto.de - Anbindung (SCX) 0
Neu Aufträge mit nicht verfügbaren Artikeln automatisch zurückhalten User helfen Usern - Fragen zu JTL-Wawi 2
Neu Budget pro Jahr? Allgemeine Fragen zu JTL-Shop 1
Gelöst iMin Swift 2 Pro + Swissbit TSE microSD ? JTL-POS - Fragen zu Hardware 3
Neu Bestand pro Lager wird nicht angezeigt. Allgemeine Fragen zu JTL-Shop 3
Neu Picklisten Druckvorlage pro Auftrag Druck-/ E-Mail-/ Exportvorlagen in JTL-Wawi 1
Neu Was macht "Sendungen pro Empfänger zusammenfassen" bei JTL-Shipping Labels => UPS? JTL-ShippingLabels - Fehler und Bugs 0
Neu 💙 Neues Plugin: JTL-ServerDashboard Pro (kompakte Serverinformationen anzeigen) Plugins für JTL-Shop 0
Gelöst Kassenlade an imin D4 Pro ? JTL-POS - Fragen zu Hardware 1
Gelöst Kassenlade direkt an iMin Swan 1 Pro JTL-POS - Fragen zu Hardware 1
Gelöst iMin D4 Pro oder iMin Swan 1 Pro ? JTL-POS - Fragen zu Hardware 3
Neu Verdandliste Pro Paket das Gewicht mit ausgeben Druck-/ E-Mail-/ Exportvorlagen in JTL-Wawi 1

Ähnliche Themen