Neu Summe der Bestllungen eines Lieferanten

McFunny

Sehr aktives Mitglied
13. Dezember 2006
1.219
10
Putzbrunn bei München
Hallo,

ich benötige der Summe der Bestellungen eines Lieferanten unter Einkauf/Bestellungen.
Also Lieferant XY gewählt und dann den Filtzer gesetzt Monat, Jahr etc.

Könnte mir damit jemand helfen, da ich keinerlei Ahnung von SQL besitze.

DANKE!!!

Lieben Gruß und allen noch ein gesunden Jahr 2022Q!

Sven
 

ToJo

Sehr aktives Mitglied
19. Oktober 2018
129
58
Husum
Oder man nimmt die Statistik, dann hat man die Zahlen auch mit wenigen Klicks! ;)

Hier mal der Weg zum Ziel, alles wichtige habe ich mal rot markiert.(Achtung das ist die Version 1.6, da wurden die Bezeichnungen etwas geändert, zb.Einkauf wurde umbenannt
in Beschaffung etc.)

Screenshot (72).png

Screenshot (73).png

Und hier das Ergebnis:

Screenshot (74).png

MfG
Torsten
 

tsadeghi

Aktives Mitglied
19. April 2020
29
15
Servus!

Mit dieser SQL Abfrage erhält man
  • die Anzahl der Bestellungen insgesamt
  • Den Einkauf der letzten 30 Tage
  • Den Einkauf der letzten 60 Tage
  • Year to Date Aktuelles Jahr
  • Year to Date Vorjahr
  • Gesamteinkauf
Alles Netto, alles basierend auf dem Erstelldatum der Bestellung. Keine weiteren Filter. Kann man natürlich nach Bedarf anpassen (z.B. nur bestätigte Bestellungen, nur erhaltene Positionen etc.)


Gruß Tara

Code:
SELECT
tl.cFirma AS 'Lieferant',
COUNT(DISTINCT tlbp.kLieferantenBestellung) AS '# Bestellungen',
jLetzte30Tage.absatz AS 'Letzte 30 Tage',
jLetzte60Tage.absatz AS 'Letzte 60 Tage',
jAktuellesJahr.absatz AS 'YTD Aktuell',
jVorherigesahr.absatz AS 'YTD Vorjahr',
FORMAT((CAST((CONVERT(VARCHAR,(SUM(tlbp.fMenge * (CAST(tlbp.fEKNetto AS MONEY)))),1)) AS MONEY)), 'C', 'de-de') AS 'Gesamt (Netto)'
FROM tLieferantenBestellungPos tlbp
INNER JOIN tLieferantenBestellung tlb ON tlb.kLieferantenBestellung = tlbp.kLieferantenBestellung
INNER JOIN tlieferant tl ON tl.kLieferant = tlb.kLieferant

LEFT JOIN (
    SELECT tl.kLieferant, FORMAT((CAST((CONVERT(VARCHAR,(SUM(tlbp.fMenge * (CAST(tlbp.fEKNetto AS MONEY)))),1)) AS MONEY)), 'C', 'de-de') AS absatz
 FROM tLieferantenBestellungPos tlbp
 INNER JOIN tLieferantenBestellung tlb ON tlb.kLieferantenBestellung = tlbp.kLieferantenBestellung
 INNER JOIN tlieferant tl ON tl.kLieferant = tlb.kLieferant
    WHERE tlb.kLieferant =
   (SELECT tlb.kLieferant
    FROM tLieferantenBestellung tlb
    WHERE tlb.kLieferantenBestellung = @Key
   )
        AND tlb.dErstellt > DATEADD(DAY, -30, getdate())
    GROUP BY tl.kLieferant
) AS jLetzte30Tage ON jLetzte30Tage.kLieferant = tl.kLieferant

LEFT JOIN (
    SELECT tl.kLieferant, FORMAT((CAST((CONVERT(VARCHAR,(SUM(tlbp.fMenge * (CAST(tlbp.fEKNetto AS MONEY)))),1)) AS MONEY)), 'C', 'de-de') AS absatz
 FROM tLieferantenBestellungPos tlbp
 INNER JOIN tLieferantenBestellung tlb ON tlb.kLieferantenBestellung = tlbp.kLieferantenBestellung
 INNER JOIN tlieferant tl ON tl.kLieferant = tlb.kLieferant
    WHERE tlb.kLieferant =
   (SELECT tlb.kLieferant
    FROM tLieferantenBestellung tlb
    WHERE tlb.kLieferantenBestellung = @Key
   )
        AND tlb.dErstellt > DATEADD(DAY, -60, getdate())
    GROUP BY tl.kLieferant
) AS jLetzte60Tage ON jLetzte60Tage.kLieferant = tl.kLieferant

LEFT JOIN (
    SELECT tl.kLieferant, FORMAT((CAST((CONVERT(VARCHAR,(SUM(tlbp.fMenge * (CAST(tlbp.fEKNetto AS MONEY)))),1)) AS MONEY)), 'C', 'de-de') AS absatz
 FROM tLieferantenBestellungPos tlbp
 INNER JOIN tLieferantenBestellung tlb ON tlb.kLieferantenBestellung = tlbp.kLieferantenBestellung
 INNER JOIN tlieferant tl ON tl.kLieferant = tlb.kLieferant
    WHERE tlb.kLieferant =
   (SELECT tlb.kLieferant
    FROM tLieferantenBestellung tlb
    WHERE tlb.kLieferantenBestellung = @Key
   )
        AND tlb.dErstellt BETWEEN DATEADD(yy, DATEDIFF(yy,0,GETDATE()), 0) AND GETDATE()
    GROUP BY tl.kLieferant
) AS jAktuellesJahr ON jAktuellesJahr.kLieferant = tl.kLieferant

LEFT JOIN (
    SELECT tl.kLieferant, FORMAT((CAST((CONVERT(VARCHAR,(SUM(tlbp.fMenge * (CAST(tlbp.fEKNetto AS MONEY)))),1)) AS MONEY)), 'C', 'de-de') AS absatz
 FROM tLieferantenBestellungPos tlbp
 INNER JOIN tLieferantenBestellung tlb ON tlb.kLieferantenBestellung = tlbp.kLieferantenBestellung
 INNER JOIN tlieferant tl ON tl.kLieferant = tlb.kLieferant
    WHERE tlb.kLieferant =
   (SELECT tlb.kLieferant
    FROM tLieferantenBestellung tlb
    WHERE tlb.kLieferantenBestellung = @Key
   )
  AND tlb.dErstellt BETWEEN DATEADD(yy, -1, GETDATE())  AND DATEADD(DAY, -365, getdate())

    GROUP BY tl.kLieferant
) AS jVorherigesahr ON jVorherigesahr.kLieferant = tl.kLieferant

WHERE tlb.kLieferant = (SELECT tlb.kLieferant FROM tLieferantenBestellung tlb WHERE tlb.kLieferantenBestellung = @Key)
GROUP BY tl.cFirma, jLetzte30Tage.absatz, jLetzte60Tage.absatz, jAktuellesJahr.absatz, jVorherigesahr.absatz
 
  • Gefällt mir
Reaktionen: MichaelH

MichaelH

Sehr aktives Mitglied
17. November 2008
13.824
1.545
Super !

Statt
  • Year to Date Vorjahr
wäre Gesamtvorjahr super, deine Datumsberechnung ist mir aber zu kompliziert um selber die Syntax nachzuschlagen ... ;)
 

tsadeghi

Aktives Mitglied
19. April 2020
29
15
Hi Michael,

ich habe die Spalte zusätzlich hinzugefügt.

Code:
SELECT
tl.cFirma AS 'Lieferant',
COUNT(DISTINCT tlbp.kLieferantenBestellung) AS '# Bestellungen',
jLetzte30Tage.absatz AS 'Letzte 30 Tage',
jLetzte60Tage.absatz AS 'Letzte 60 Tage',
jAktuellYTD.absatz AS 'YTD Aktuell',
jVorjahrYTD.absatz AS 'YTD Vorjahr',
jVorjahr.absatz AS 'Gesamt Vorjahr',
FORMAT((CAST((CONVERT(VARCHAR,(SUM(tlbp.fMenge * (CAST(tlbp.fEKNetto AS MONEY)))),1)) AS MONEY)), 'C', 'de-de') AS 'Gesamt (Netto)'
FROM tLieferantenBestellungPos tlbp
INNER JOIN tLieferantenBestellung tlb ON tlb.kLieferantenBestellung = tlbp.kLieferantenBestellung
INNER JOIN tlieferant tl ON tl.kLieferant = tlb.kLieferant

LEFT JOIN (
    SELECT tl.kLieferant, FORMAT((CAST((CONVERT(VARCHAR,(SUM(tlbp.fMenge * (CAST(tlbp.fEKNetto AS MONEY)))),1)) AS MONEY)), 'C', 'de-de') AS absatz
 FROM tLieferantenBestellungPos tlbp
 INNER JOIN tLieferantenBestellung tlb ON tlb.kLieferantenBestellung = tlbp.kLieferantenBestellung
 INNER JOIN tlieferant tl ON tl.kLieferant = tlb.kLieferant
    WHERE tlb.kLieferant =
   (SELECT tlb.kLieferant
    FROM tLieferantenBestellung tlb
    WHERE tlb.kLieferantenBestellung = @Key
   )
        AND tlb.dErstellt > DATEADD(DAY, -30, getdate())
    GROUP BY tl.kLieferant
) AS jLetzte30Tage ON jLetzte30Tage.kLieferant = tl.kLieferant

LEFT JOIN (
    SELECT tl.kLieferant, FORMAT((CAST((CONVERT(VARCHAR,(SUM(tlbp.fMenge * (CAST(tlbp.fEKNetto AS MONEY)))),1)) AS MONEY)), 'C', 'de-de') AS absatz
 FROM tLieferantenBestellungPos tlbp
 INNER JOIN tLieferantenBestellung tlb ON tlb.kLieferantenBestellung = tlbp.kLieferantenBestellung
 INNER JOIN tlieferant tl ON tl.kLieferant = tlb.kLieferant
    WHERE tlb.kLieferant =
   (SELECT tlb.kLieferant
    FROM tLieferantenBestellung tlb
    WHERE tlb.kLieferantenBestellung = @Key
   )
        AND tlb.dErstellt > DATEADD(DAY, -60, getdate())
    GROUP BY tl.kLieferant
) AS jLetzte60Tage ON jLetzte60Tage.kLieferant = tl.kLieferant

LEFT JOIN (
    SELECT tl.kLieferant, FORMAT((CAST((CONVERT(VARCHAR,(SUM(tlbp.fMenge * (CAST(tlbp.fEKNetto AS MONEY)))),1)) AS MONEY)), 'C', 'de-de') AS absatz
 FROM tLieferantenBestellungPos tlbp
 INNER JOIN tLieferantenBestellung tlb ON tlb.kLieferantenBestellung = tlbp.kLieferantenBestellung
 INNER JOIN tlieferant tl ON tl.kLieferant = tlb.kLieferant
    WHERE tlb.kLieferant =
   (SELECT tlb.kLieferant
    FROM tLieferantenBestellung tlb
    WHERE tlb.kLieferantenBestellung = @Key
   )
        AND tlb.dErstellt BETWEEN DATEADD(yy, DATEDIFF(yy,0,GETDATE()), 0) AND GETDATE()
    GROUP BY tl.kLieferant
) AS jAktuellYTD ON jAktuellYTD.kLieferant = tl.kLieferant

LEFT JOIN (
    SELECT tl.kLieferant, FORMAT((CAST((CONVERT(VARCHAR,(SUM(tlbp.fMenge * (CAST(tlbp.fEKNetto AS MONEY)))),1)) AS MONEY)), 'C', 'de-de') AS absatz
 FROM tLieferantenBestellungPos tlbp
 INNER JOIN tLieferantenBestellung tlb ON tlb.kLieferantenBestellung = tlbp.kLieferantenBestellung
 INNER JOIN tlieferant tl ON tl.kLieferant = tlb.kLieferant
    WHERE tlb.kLieferant =
   (SELECT tlb.kLieferant
    FROM tLieferantenBestellung tlb
    WHERE tlb.kLieferantenBestellung = @Key
   )
  AND tlb.dErstellt BETWEEN DATEADD(yy, -1, GETDATE())  AND DATEADD(DAY, -365, getdate())

    GROUP BY tl.kLieferant
) AS jVorjahrYTD ON jVorjahrYTD.kLieferant = tl.kLieferant

LEFT JOIN (
    SELECT tl.kLieferant, FORMAT((CAST((CONVERT(VARCHAR,(SUM(tlbp.fMenge * (CAST(tlbp.fEKNetto AS MONEY)))),1)) AS MONEY)), 'C', 'de-de') AS absatz
 FROM tLieferantenBestellungPos tlbp
 INNER JOIN tLieferantenBestellung tlb ON tlb.kLieferantenBestellung = tlbp.kLieferantenBestellung
 INNER JOIN tlieferant tl ON tl.kLieferant = tlb.kLieferant
    WHERE tlb.kLieferant =
   (SELECT tlb.kLieferant
    FROM tLieferantenBestellung tlb
    WHERE tlb.kLieferantenBestellung = @Key
   )
  AND YEAR(tlb.dErstellt) = YEAR(DATEADD(YEAR, -1, GETDATE()))

    GROUP BY tl.kLieferant
) AS jVorjahr ON jVorjahr.kLieferant = tl.kLieferant

WHERE tlb.kLieferant = (SELECT tlb.kLieferant FROM tLieferantenBestellung tlb WHERE tlb.kLieferantenBestellung = @Key)
GROUP BY tl.cFirma, jLetzte30Tage.absatz, jLetzte60Tage.absatz, jAktuellYTD.absatz, jVorjahrYTD.absatz, jVorjahr.absatz

Gruß Tara
 
  • Gefällt mir
Reaktionen: MichaelH
Ähnliche Themen
Titel Forum Antworten Datum
Neu Mehrere Firmen - automatisierte Änderung der Kundennummer? Arbeitsabläufe in JTL-Wawi 0
Neu Der Shop schickt die Aufträge nicht mehr an die Wawi JTL-Shop - Fehler und Bugs 1
Neu Automatische Sortierung der Bilder & Anzahl der Ebay Bilder eBay-Anbindung - Fehler und Bugs 0
Verwendung der Statistik in Wawi 1.8: JTL-Wawi 1.8 2
Neu Kann man in der POS zwischen Mandanten umschalten? User helfen Usern - Fragen zu JTL-Wawi 1
Neu Footer in der Größe anpassen Templates für JTL-Shop 0
Falsche Anzeige der Bestandsführung JTL-Wawi - Fehler und Bugs 5
Neu Drucken-Button auf der Artikeldetailseite Allgemeine Fragen zu JTL-Shop 0
Setup Nummernkreise neue Firma - Länge der Kreise JTL-Wawi 1.8 8
Neu Darstellung/Werte der Variantenauswahl auf Amazon anpassbar? Amazon-Lister - Ideen, Lob und Kritik 0
Neu Kategorienbaum in einer Unterkategorie über der Filterung ausblenden Allgemeine Fragen zu JTL-Shop 1
Neu Anzahl der gefüllten Versandboxen ausgeben lassen Eigene Übersichten in der JTL-Wawi 1
Neu leeres Textfeld erstellen für einen Hinweis auf der Rechnung User helfen Usern - Fragen zu JTL-Wawi 2
Versandkosten werden bei der Gewinnermittlung nicht breücksichtig (1.8.12.2) JTL-Wawi 1.8 1
Wie kann ich etwas in der WAWI Datenbank per SQL ändern? JTL-Wawi 1.8 2
Neu Was steckt hinter der Zahl von 53 Bildern auf Ebay bei Variationsartikeln (und einer unsinnigen Fehlermeldung der Wawi)? JTL-Wawi - Fehler und Bugs 2
Neu Gravierender Fehler in der Shop Software Betrieb / Pflege von JTL-Shop 3
Neu Packtisch: In der Liste der Aufträge neue Feld-Spalte mit Spalteneditor hinzufügen Arbeitsabläufe in JTL-WMS / JTL-Packtisch+ 0
Neu Workflow der bei Stücklisten: Überverkäufe de-/aktivieren User helfen Usern - Fragen zu JTL-Wawi 11
Wo befindet sich das Feld mit der Information für "Zustandsbeschreibung" auf Ebay? JTL-Wawi 1.8 9
Neu Nach Umstellung auf WMS Probleme mit der JTL Ameise Installation von JTL-WMS / JTL-Packtisch+ 0
Neu Vorschaubilder in der Artikeldetailseite werden nicht angezeigt Betrieb / Pflege von JTL-Shop 1
Neu Update des JTL shops aus der Wawi funktioniert nicht Allgemeine Fragen zu JTL-Shop 1
Neu EK-Netto der Verkäufe aus Datenbank ? User helfen Usern - Fragen zu JTL-Wawi 5
Neu Shopify Erhöhung der Varianten von 100 auf 2000 - Connector App Problem Shopify-Connector 4
Fehler beim Rendering der Attribute bei SCX Abgleich kaufland.de - Anbindung (SCX) 4
Neu Eigene Felder des Auftrages in der Druckvorlage Druck-/ E-Mail-/ Exportvorlagen in JTL-Wawi 2
Neu klare Warnung vor den Bausteinen und der PDF in Vorlagen User helfen Usern - Fragen zu JTL-Wawi 4
Neu Folgendes fehlt seit Mai 23 auf der Rechnung: "Versanddatum: Ist gleich dem Rechnungsdatum." Druck-/ E-Mail-/ Exportvorlagen in JTL-Wawi 4
Workflow MwSt.-Sätze ersetzen 0% -> 19% ändert netto in Positionen aber nicht in der Auftragssumme JTL-Wawi 1.7 2
Neu Menüleiste wird plötzlich in der Mitte von der Seite angezeigt Allgemeine Fragen zu JTL-Shop 0
Neu SEO URL der Kategorien wird nicht an Shopware 6 übertragen Shopware-Connector 0
Neu Formatierung der Spalte Rabatt Druck-/ E-Mail-/ Exportvorlagen in JTL-Wawi 5
In Diskussion Automatische Zuweisung der Kategorien für Artikel durch Workflow JTL-Workflows - Ideen, Lob und Kritik 3
Neu Vorlagen: Formel um Textfeld nur auf der letzten Seite der Rechnung darzustellen Druck-/ E-Mail-/ Exportvorlagen in JTL-Wawi 2
Neu Angabe der wesentlichen Eigenschaften der Ware im Checkout Allgemeine Fragen zu JTL-Shop 11
Slider - Position auf der Startseite? Einrichtung JTL-Shop5 0
Gelöst Packtisch+ 1.8.112 : Rechnung wird bei Teillieferung erzeugt, obwohl als Ausführungsbedingung "Nur bei der letzten Teillieferung" ausgewählt ist. JTL-WMS / JTL-Packtisch+ - Fehler und Bugs 2
Speicherort der Seriennummern zu Auftragsposition in der Datenbank ? JTL-Wawi 1.8 2
Export der Einstellungen im admin Einrichtung JTL-Shop5 2
Beantwortet #GEFUNDEN# Suche jemand , der uns eine (automatische) SQL Abfrage erstellen kann mit Mail Ausgabe Dienstleistung, Jobs und Ähnliches 2
Neu Bestände von der Wawi mit ebay abgleichen User helfen Usern - Fragen zu JTL-Wawi 2
Fehlermeldung nach Speichern vom Auftrag in der Wawi JTL-Wawi 1.6 5
Neu Erstinstallation JTL WaWi 1.8.12 - heruntergeladen wird SQL Express 2017 _statt_ der empfohlenen 2022 Version Installation von JTL-Wawi 8
Auftragsimport über eBay - Bezeichnung der Versandart auf der Rechnung leer JTL-Wawi 1.8 1
In Bearbeitung JTL POS in der JTL-WaWi-Cloud Allgemeine Fragen zu JTL-POS 2
Neu Suchen Mitarbeiter für 40h Festanstellung gern auch 100% Homeoffice für Produkt und Kategorie Pflege mit der Wawi Dienstleistung, Jobs und Ähnliches 0
Neu Bestände der einzelnen Lager weichen von den reellen Beständen willkürlich ab JTL-Shop - Fehler und Bugs 7
Neu Export nach Vorgabe der Artikelnummern JTL Ameise - Eigene Exporte 5
Neu Wenn Rabatt als Zeile auf Rechnung steht, fliegt der Gesamtwert weg.. Druck-/ E-Mail-/ Exportvorlagen in JTL-Wawi 0

Ähnliche Themen