Neu Summe der Bestllungen eines Lieferanten

McFunny

Sehr aktives Mitglied
13. Dezember 2006
1.275
16
Feldkirchen 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
136
66
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
30
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
14.700
1.982
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
30
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 Erfahrungen mit DHL Paket International Premium Tarife in der JTL-Shipping-Cloud ? JTL-ShippingLabels - Ideen, Lob und Kritik 1
Seit Update ständiges Aufhängen der Wawi JTL-Wawi 2.0 0
Barzahlung wird nach dem Speichern beim Rechnungsdruck nicht angezeigt, in der Vorschau jedoch schon JTL-Wawi 2.0 0
Neu JTL-Shop 5.5 – „Rechnung nicht beilegen“ per Workflow anhand der Auftragsposition erkennen User helfen Usern - Fragen zu JTL-Wawi 1
Neu Nutzlose Tabellenspalte bei Inventur innerhalb der Wawi User helfen Usern - Fragen zu JTL-Wawi 1
Neu Kunde hat über POS per Karte angezahlt. Wie Buchung der Restzahlung (BON)? Allgemeine Fragen zu JTL-POS 1
Neu Versandarten – bin ich der Einzige, der da jedes Mal verzweifelt? Allgemeine Fragen zu JTL-Shop 1
Neu Außlandsversand deaktivieren wegen der neuen PPWR Betrieb / Pflege von JTL-Shop 22
Neu onpage SEO auf SW - Was ist mit der Wawi? Shopware-Connector 1
Neu Gutscheinartikel nur noch im Shop in der Datenbank Betrieb / Pflege von JTL-Shop 0
Neu Bestellpositionen werden in Sprache der Kunde an die Wawi übermittelt. Kann man das ausstellen? User helfen Usern - Fragen zu JTL-Wawi 17
Neu GLS in Shipping 2.0: Neue ShipIT-Anbindung & zentrale Tarife jetzt live – Migration von der alten WebAPI bis zum 30. September News, Events und Umfragen 5
Neu Amazon Versandart matchen in der Wawi Amazon-Lister - Fehler und Bugs 2
Nachkommastellen in der X Rechnung JTL-Wawi 1.10 1
Format der E-Mail Adresse ist ungültig. Otto.de - Anbindung (SCX) 0
Neu JTL-Shop 5.7.2: Unterschiedliche Standardsprachen in tsprache – widersprüchliche Canonical- und Hreflang-Ausgabe der Startseite Allgemeine Fragen zu JTL-Shop 4
Neu Deine Meinung ist gefragt: direkte Anbindung der Schweizerischen Post (CH Post) in Shipping 2.0? Umfragen rund um JTL 2
Neu Cross-Links in der Navigation Allgemeine Fragen zu JTL-Shop 1
Neu Artikeletikett drucken: Automatische Mengenermittlung der zu druckenden Etiketten Druck-/ E-Mail-/ Exportvorlagen in JTL-Wawi 0
Neu Länge der Beschreibung unter den Unterkats Templates für JTL-Shop 2
Kein Skonto in der XRechnung? JTL-Wawi 1.11 0
Neu Mail mit Plugin zum testen der Sicherheitslücke echt? Allgemeine Fragen zu JTL-Shop 47
B2B Market - Probleme beim zuweisen der Kundengruppe (gelöst) JTL-Wawi 1.11 0
Neu Amazon - Einlesen / Übernahme der Bestellungen klappt nicht ?! Amazon-Anbindung - Fehler und Bugs 2
QR-Code auf der Rechnung gibt 100-fachen Betrag des eigentlichen Rechnungsbetrages aus JTL-Wawi 2.0 5
Fehlermeldung beim Einlesen der Buchungen in JTL Fibu JTL-Wawi 2.0 2
Neu Wird irgendwo in der Datenbank geloggt welcher WMS-Mobile Benutzer mit dem MDE-Gerät einen Auftrag, bzw. Pickliste gepickt hat? User helfen Usern - Fragen zu JTL-Wawi 1
Neu Gibt es in der WaWi-Datenbank einen Zeitstempel, der anzeigt wann ein Kunde sich in einem bestimmten Shop registriert hat? User helfen Usern - Fragen zu JTL-Wawi 3
Neu Amazon.com - kein Abgleich der Bestände Wawi 1.11.9 Amazon-Anbindung - Fehler und Bugs 0
Name der Versandarten wird im Auftrag sporadisch nicht mehr angezeigt (2.0.3) JTL-Wawi 2.0 3
Neu Wawi 1.11. Amazon Rechnungen (extern) in der Kundenansicht verschwunden ?! User helfen Usern - Fragen zu JTL-Wawi 2
Neu Der wahrscheinlich östlichste JTL Servicepartner: Standortvorteil, faire Preise und vieles mehr Dienstleistung, Jobs und Ähnliches 16
Neu Eigener Export - Kunden individuelle Preise + verfügbarer Bestand + VK netto der Kundengruppe User helfen Usern - Fragen zu JTL-Wawi 6
Neu Rechnungen zeigen Paypal Text an, obwohl er in der Vorlage nicht ausgewählt ist JTL-Wawi 2.0 3
Updatezwang beim öffnen der WAWI JTL-Wawi 1.6 13
Neu Produktionsaufträge tauchen nicht in der Workbench auf JTL-Plan&Produce - Fehler und Bugs 2
Neu Ist es ohne Probleme möglich Cloudflare in der Free Version mit JTL zu nutzen? Allgemeine Fragen zu JTL-Shop 7
Neu Paypal 2.2.1; Fehler "Der Zahlungsanbieter hat eine Anmeldung gefordert" Plugins für JTL-Shop 2
Neu Sortierung der Variationswerte funktioniert nicht mehr Shopify-Connector 19
Neu Wert aus „Eigenes Feld“ eines Artikels im Lieferschein unter der Artikelbezeichnung anzeigen Druck-/ E-Mail-/ Exportvorlagen in JTL-Wawi 0
Neu Rabatte aus dem JTL-Shop werden in der Wawi nur als Netto-Preis übernommen, Rabatt % gehen verloren Onlineshop-Anbindung 2
Freie Felder in der Artikelliste anzeigen JTL-Wawi 2.0 3
ändern von Servernamen nach Neuinstallation von SQL und Verbindung mit neuem Server in der Wawi JTL-Wawi 2.0 2
Neu Erstellung der Sitemap bei WaWi Abgleich funktioniert nicht Allgemeine Fragen zu JTL-Shop 0
Neu Unterschiedliche Abnahmeintervalle von Variationskombinationen in der Warenkorbmatrix Templates für JTL-Shop 0
Neu Betrag auf der Rechnung nach Rechnungskorrektur User helfen Usern - Fragen zu JTL-Wawi 1
Neu PDF Anhänge in der Bestellbestätigung anhängen missglückt JTL-Shop - Fehler und Bugs 1
Neu Anzahl der URLs in der Sitemap ändern Allgemeine Fragen zu JTL-Shop 3
Neu Ab welcher JTL Wawi Version ist der OnPremise REST API Endpoint POST /v2/returns oder POST /v1/returns für Create Return verfügbar? Schnittstellen Import / Export 0

Ähnliche Themen