In Bearbeitung Artikelverwaltung -> Retourenübersicht nach Plattform und Zeit

  • Temporäre Senkung der Mehrwertsteuer Hier findet ihr gesammelt alle Informationen, Videos und Fragen inkl. Antworten: https://forum.jtl-software.de/threads/mehrwertsteuer-senkung-vom-01-07-31-12-2020-offizieller-diskussionthread-video.129542/

Thomas Lisson

Administrator
Mitarbeiter
24. März 2006
15.556
256
Köln
Hi zusammen,

anbei eine Übersicht über Retouren zum ausgewählten Artikel in der Artikelverwaltung. So könnt ihr schnell sehen, über welche Plattform die meisten Retouren kommen oder ab wann sie sich häufen, etc.
Berücksichtigt werden alle Retouren - egal in welchem Status sie sind. Für die Retourenquote werden alle Verkäufe gezählt - unabhängig davon, ob die Bestellungen ausgeliefert wurden.

SQL:
SELECT    tPlattform.cName AS 'Plattform',
        ISNULL(jAktMonat.rm, 0) AS 'Akt. Monat',
        ISNULL(jVorMonat.rm, 0) AS 'Vormonat',
        ISNULL(jLetzte30Tage.rm, 0) AS 'Letzte 30 Tage',
        ISNULL(jLetzte3Monate.rm, 0) AS 'Letzte 3 Monate',    
        ISNULL(jAktJahr.rm, 0) AS 'Akt. Jahr',
        ISNULL(jLetzte365Tage.rm, 0) AS 'Letzte 365 Tage',
        ISNULL(jVorjahr.rm, 0) AS 'Vorjahr',
        ISNULL(jGesamt.rm, 0) AS 'Gesamt',
        ISNULL(jRetourenGesamt.Retourenquote, '0%') AS 'Retourenquote'
FROM tPlattform
LEFT JOIN (
    SELECT    nPlatform,
            ROUND(CONVERT(FLOAT, ISNULL(SUM(tRMRetourePos.fAnzahl), 0.0)), 2) AS rm
    FROM tbestellung
    JOIN tRMRetoure ON tRMRetoure.kBestellung = tBestellung.kBestellung
    JOIN tRMRetourePos ON tRMRetourePos.kRMRetoure = tRMRetoure.kRMRetoure
    WHERE    tRMRetourePos.kArtikel = @Key
            AND YEAR(tRMRetoure.dErstellt) = YEAR(getdate())
            AND MONTH(tRMRetoure.dErstellt) = MONTH(getdate())
    GROUP BY nPlatform
) as jAktMonat on jAktMonat.nPlatform = tPlattform.nPlattform
LEFT JOIN (
    SELECT    nPlatform,
            ROUND(CONVERT(FLOAT, ISNULL(SUM(tRMRetourePos.fAnzahl), 0.0)), 2) AS rm
    FROM tbestellung
    JOIN tRMRetoure ON tRMRetoure.kBestellung = tBestellung.kBestellung
    JOIN tRMRetourePos ON tRMRetourePos.kRMRetoure = tRMRetoure.kRMRetoure
    WHERE    tRMRetourePos.kArtikel = @Key
            AND YEAR(tRMRetoure.dErstellt) = YEAR(DATEADD(MONTH, -1, getdate()))
            AND MONTH(tRMRetoure.dErstellt) = MONTH(DATEADD(MONTH, -1, getdate()))
    GROUP BY nPlatform
) as jVorMonat on jVorMonat.nPlatform = tPlattform.nPlattform
LEFT JOIN (
    SELECT    nPlatform,
            ROUND(CONVERT(FLOAT, ISNULL(SUM(tRMRetourePos.fAnzahl), 0.0)), 2) AS rm
    FROM tbestellung
    JOIN tRMRetoure ON tRMRetoure.kBestellung = tBestellung.kBestellung
    JOIN tRMRetourePos ON tRMRetourePos.kRMRetoure = tRMRetoure.kRMRetoure
    WHERE    tRMRetourePos.kArtikel = @Key
            AND tRMRetoure.dErstellt > DATEADD(DAY, -30, getdate())
    GROUP BY nPlatform
) as jLetzte30Tage on jLetzte30Tage.nPlatform = tPlattform.nPlattform
LEFT JOIN (
    SELECT    nPlatform,
            ROUND(CONVERT(FLOAT, ISNULL(SUM(tRMRetourePos.fAnzahl), 0.0)), 2) AS rm
    FROM tbestellung
    JOIN tRMRetoure ON tRMRetoure.kBestellung = tBestellung.kBestellung
    JOIN tRMRetourePos ON tRMRetourePos.kRMRetoure = tRMRetoure.kRMRetoure
    WHERE    tRMRetourePos.kArtikel = @Key
            AND tRMRetoure.dErstellt > DATEADD(MONTH, -3, getdate())
    GROUP BY nPlatform
) as jLetzte3Monate on jLetzte3Monate.nPlatform = tPlattform.nPlattform
LEFT JOIN (
    SELECT    nPlatform,
            ROUND(CONVERT(FLOAT, ISNULL(SUM(tRMRetourePos.fAnzahl), 0.0)), 2) AS rm
    FROM tbestellung
    JOIN tRMRetoure ON tRMRetoure.kBestellung = tBestellung.kBestellung
    JOIN tRMRetourePos ON tRMRetourePos.kRMRetoure = tRMRetoure.kRMRetoure
    WHERE    tRMRetourePos.kArtikel = @Key
            AND YEAR(tRMRetoure.dErstellt) = YEAR(getdate())
    GROUP BY nPlatform
) as jAktJahr on jAktJahr.nPlatform = tPlattform.nPlattform
LEFT JOIN (
    SELECT    nPlatform,
            ROUND(CONVERT(FLOAT, ISNULL(SUM(tRMRetourePos.fAnzahl), 0.0)), 2) AS rm
    FROM tbestellung
    JOIN tRMRetoure ON tRMRetoure.kBestellung = tBestellung.kBestellung
    JOIN tRMRetourePos ON tRMRetourePos.kRMRetoure = tRMRetoure.kRMRetoure
    WHERE    tRMRetourePos.kArtikel = @Key
            AND tRMRetoure.dErstellt > DATEADD(DAY, -365, getdate())
    GROUP BY nPlatform
) as jLetzte365Tage on jLetzte365Tage.nPlatform = tPlattform.nPlattform
LEFT JOIN (
    SELECT    nPlatform,
            ROUND(CONVERT(FLOAT, ISNULL(SUM(tRMRetourePos.fAnzahl), 0.0)), 2) AS rm
    FROM tbestellung
    JOIN tRMRetoure ON tRMRetoure.kBestellung = tBestellung.kBestellung
    JOIN tRMRetourePos ON tRMRetourePos.kRMRetoure = tRMRetoure.kRMRetoure
    WHERE    tRMRetourePos.kArtikel = @Key
            AND YEAR(tRMRetoure.dErstellt) = YEAR(DATEADD(YEAR, -1, getdate()))
    GROUP BY nPlatform
) as jVorjahr on jVorjahr.nPlatform = tPlattform.nPlattform
JOIN (
    SELECT    nPlatform,
            ROUND(CONVERT(FLOAT, ISNULL(SUM(tRMRetourePos.fAnzahl), 0.0)), 2) AS rm
    FROM tbestellung
    JOIN tRMRetoure ON tRMRetoure.kBestellung = tBestellung.kBestellung
    JOIN tRMRetourePos ON tRMRetourePos.kRMRetoure = tRMRetoure.kRMRetoure
    WHERE    tRMRetourePos.kArtikel = @Key
    GROUP BY nPlatform
) as jGesamt on jGesamt.nPlatform = tPlattform.nPlattform
LEFT JOIN (
SELECT jabsatzgesamt.nPlatform,
        CONCAT(ROUND((ISNULL(retourengesamt.rm, 0.0)/jabsatzgesamt.absatz)*100, 2), '%') as Retourenquote
FROM
(SELECT tbestellung.nPlatform,
    ROUND(CONVERT(FLOAT, ISNULL(SUM(tbestellpos.nAnzahl), 0.0)), 2) AS absatz
    FROM tbestellung
    JOIN tbestellpos ON tbestellpos.tBestellung_kBestellung = tBestellung.kBestellung
    WHERE tbestellpos.tArtikel_kArtikel = @Key
        AND tbestellung.cType = 'B'
        AND tBestellung.nStorno = 0 -- Stornierte Aufträge nicht beachten
    GROUP BY nPlatform) AS jabsatzgesamt
LEFT JOIN
    (SELECT nPlatform,
        ROUND(CONVERT(FLOAT, ISNULL(SUM(tRMRetourePos.fAnzahl), 0.0)), 2) AS rm
    FROM tbestellung
    JOIN tRMRetoure ON tRMRetoure.kBestellung = tBestellung.kBestellung
    JOIN tRMRetourePos ON tRMRetourePos.kRMRetoure = tRMRetoure.kRMRetoure
    WHERE    tRMRetourePos.kArtikel = @Key
    GROUP BY nPlatform) AS retourengesamt on retourengesamt.nPlatform=jabsatzgesamt.nPlatform)
        as jRetourenGesamt on jRetourenGesamt.nPlatform = tPlattform.nPlattform
UNION
SELECT 'Alle Plattformen' AS 'Plattform',
    (SELECT ROUND(CONVERT(FLOAT, ISNULL(SUM(tRMRetourePos.fAnzahl), 0.0)), 2) AS rm
    FROM tbestellung
    JOIN tRMRetoure ON tRMRetoure.kBestellung = tBestellung.kBestellung
    JOIN tRMRetourePos ON tRMRetourePos.kRMRetoure = tRMRetoure.kRMRetoure
    WHERE    tRMRetourePos.kArtikel = @Key
            AND YEAR(tRMRetoure.dErstellt) = YEAR(getdate())
            AND MONTH(tRMRetoure.dErstellt) = MONTH(getdate())) as 'Akt. Monat',
    (SELECT ROUND(CONVERT(FLOAT, ISNULL(SUM(tRMRetourePos.fAnzahl), 0.0)), 2) AS rm
    FROM tbestellung
    JOIN tRMRetoure ON tRMRetoure.kBestellung = tBestellung.kBestellung
    JOIN tRMRetourePos ON tRMRetourePos.kRMRetoure = tRMRetoure.kRMRetoure
    WHERE    tRMRetourePos.kArtikel = @Key
            AND YEAR(tRMRetoure.dErstellt) = YEAR(DATEADD(MONTH, -1, getdate()))
            AND MONTH(tRMRetoure.dErstellt) = MONTH(DATEADD(MONTH, -1, getdate()))) as 'Vormonat',
    (SELECT ROUND(CONVERT(FLOAT, ISNULL(SUM(tRMRetourePos.fAnzahl), 0.0)), 2) AS rm
    FROM tbestellung
    JOIN tRMRetoure ON tRMRetoure.kBestellung = tBestellung.kBestellung
    JOIN tRMRetourePos ON tRMRetourePos.kRMRetoure = tRMRetoure.kRMRetoure
    WHERE    tRMRetourePos.kArtikel = @Key
    AND tRMRetoure.dErstellt > DATEADD(DAY, -30, getdate())) as 'Letzte 30 Tage',
    (SELECT ROUND(CONVERT(FLOAT, ISNULL(SUM(tRMRetourePos.fAnzahl), 0.0)), 2) AS rm
    FROM tbestellung
    JOIN tRMRetoure ON tRMRetoure.kBestellung = tBestellung.kBestellung
    JOIN tRMRetourePos ON tRMRetourePos.kRMRetoure = tRMRetoure.kRMRetoure
    WHERE    tRMRetourePos.kArtikel = @Key
    AND tRMRetoure.dErstellt > DATEADD(MONTH, -3, getdate())) as 'Letzte 3 Monate',
    (SELECT ROUND(CONVERT(FLOAT, ISNULL(SUM(tRMRetourePos.fAnzahl), 0.0)), 2) AS rm
    FROM tbestellung
    JOIN tRMRetoure ON tRMRetoure.kBestellung = tBestellung.kBestellung
    JOIN tRMRetourePos ON tRMRetourePos.kRMRetoure = tRMRetoure.kRMRetoure
    WHERE    tRMRetourePos.kArtikel = @Key
    AND YEAR(tRMRetoure.dErstellt) = YEAR(getdate())) as 'Akt. Jahr',
    (SELECT ROUND(CONVERT(FLOAT, ISNULL(SUM(tRMRetourePos.fAnzahl), 0.0)), 2) AS rm
    FROM tbestellung
    JOIN tRMRetoure ON tRMRetoure.kBestellung = tBestellung.kBestellung
    JOIN tRMRetourePos ON tRMRetourePos.kRMRetoure = tRMRetoure.kRMRetoure
    WHERE    tRMRetourePos.kArtikel = @Key
    AND tRMRetoure.dErstellt > DATEADD(DAY, -365, getdate())) as 'Letzte 365 Tage',
    (SELECT ROUND(CONVERT(FLOAT, ISNULL(SUM(tRMRetourePos.fAnzahl), 0.0)), 2) AS rm
    FROM tbestellung
    JOIN tRMRetoure ON tRMRetoure.kBestellung = tBestellung.kBestellung
    JOIN tRMRetourePos ON tRMRetourePos.kRMRetoure = tRMRetoure.kRMRetoure
    WHERE    tRMRetourePos.kArtikel = @Key
    AND YEAR(tRMRetoure.dErstellt) = YEAR(DATEADD(YEAR, -1, getdate()))) as 'Vorjahr',
    (SELECT ROUND(CONVERT(FLOAT, ISNULL(SUM(tRMRetourePos.fAnzahl), 0.0)), 2) AS rm
    FROM tbestellung
    JOIN tRMRetoure ON tRMRetoure.kBestellung = tBestellung.kBestellung
    JOIN tRMRetourePos ON tRMRetourePos.kRMRetoure = tRMRetoure.kRMRetoure
    WHERE    tRMRetourePos.kArtikel = @Key) as 'Gesamt',
    (SELECT CONCAT(ROUND((retourengesamt.rm/jabsatzgesamt.absatz)*100, 2), '%') as Retourenquote
FROM
(SELECT ROUND(CONVERT(FLOAT, ISNULL(SUM(tRMRetourePos.fAnzahl), 0.0)), 2) AS rm
    FROM tbestellung
    JOIN tRMRetoure ON tRMRetoure.kBestellung = tBestellung.kBestellung
    JOIN tRMRetourePos ON tRMRetourePos.kRMRetoure = tRMRetoure.kRMRetoure
    WHERE    tRMRetourePos.kArtikel = @Key) AS retourengesamt
JOIN
    (SELECT ROUND(CONVERT(FLOAT, ISNULL(SUM(tbestellpos.nAnzahl), 0.0)), 2) AS absatz
    FROM tbestellung
    JOIN tbestellpos ON tbestellpos.tBestellung_kBestellung = tBestellung.kBestellung
    WHERE tbestellpos.tArtikel_kArtikel = @Key
        AND tbestellung.cType = 'B') AS jabsatzgesamt on 1=1) AS Retourenquote
ORDER BY Plattform
EDIT am 27.09.2019 um 21:50

Viel Spaß damit!
 

Anhänge

Zuletzt bearbeitet:
Ähnliche Themen Forum Antworten Erstelldatum des Themas
Neu Artikel Bewertungen verschwunden nach Artikel Update Amazon-Anbindung - Fehler und Bugs 3
Neu Nach Update JTL Wawi auf 1.5.34.0: Sortierungskonflikt / Kollationen verändert JTL-Wawi - Fehler und Bugs 1
Neu Artikel wird nicht nach woocommerce übertragen WooCommerce-Connector 0
Neu Workflow nach Beendigung geschriebene .txt Datei öffnen oder direkt drucken User helfen Usern - Fragen zu JTL-Wawi 4
Neu Fehlermeldung nach versuchtem Shopabgleich Gambio-Connector 0
Neu Aufträge chronologisch sortiert nach (Eigenem Feld z.B. "Lagerort") ausdrucken User helfen Usern - Fragen zu JTL-Wawi 0
Neu Versandexport nach DHL immer mit 1 KG JTL-Wawi - Fehler und Bugs 2
Neu Pickliste nach Artikelkategorie sortieren Druck-/ E-Mail-/ Exportvorlagen in JTL-Wawi 0
In Bearbeitung Nach Windows Update keine Verbindung zur Datenbank JTL-Wawi - Fehler und Bugs 6
In Bearbeitung Fehler Import Aufträge nach update von 1.5.30.3 auf 1.5.33 JTL-Ameise - Fehler und Bugs 3
In Diskussion Workflow wird nach Änderung am Artikel durch Ameise nicht ausgelöst JTL-Workflows - Fehler und Bugs 3
Neu Fehlermeldung 1101 - Versand nach Norwegen User helfen Usern - Fragen zu JTL-Wawi 0
In Bearbeitung Links in Ebay-Designvorlage führen Nach Benutzernamenänderung ins Nichts eBay-Anbindung - Fehler und Bugs 3
Neu Versandart mit einem Workflow nach dem Import der Bestellung automatisch ändern User helfen Usern - Fragen zu JTL-Wawi 1
Neu Kunden/Bestellung --> Shopware 5 nach 6 Migration mit JTL Wawi Shopware-Connector 0
Neu Versandart nach Rechnungserstellung ändern User helfen Usern - Fragen zu JTL-Wawi 3
In Bearbeitung [WAWI-50669] Worker sendet alle Artikel wiederholt zum Shop nach Update auf 1.5.32.0 JTL-Wawi - Fehler und Bugs 31
Neu Versandarten - Kosten ansteigend nach Stückzahl User helfen Usern - Fragen zu JTL-Wawi 5
Gelöst Bon wird erst nach einigen Minuten gedruckt Gelöste Themen in diesem Bereich 5
Verwiesen an Support Packtisch braucht 3min für Auftragzuordnung nach Artikelnr-Eingabe JTL-WMS / JTL-Packtisch+ - Fehler und Bugs 1
Neu Nach Bestellung werden Preise mit 4 statt 2 Nachkommastellen in den Auftrag übersendet WooCommerce-Connector 1
Neu Preise nach übergabe von jtl zu woocommerce WooCommerce-Connector 0
Neu DHL Shipping nach Adressfix doppelte Versandlabels gedruckt JTL-ShippingLabels - Fehler und Bugs 1
In Diskussion Retouren - Artikelzustände nach Eintreffen der Ware ändern und Artikelnummer neu vergeben JTL-Workflows - Ideen, Lob und Kritik 6
Neu Nach Update auf Wawi 1.5 beschränkter zugriff auf den Modifed Shop Modified eCommerce-Connector 0
Neu Artikel und Vorlage kennzeichnen nach Bearbeitung Arbeitsabläufe in JTL-Wawi 7
Neu Nach Update viele Produkte im Shop gelöscht Shopware-Connector 4
Neu Schopware jtl connector extrem langsam nach Server migration Shopware-Connector 5
In Bearbeitung Massenhaft Beschreibungen von html Text nach Plain Text wandeln, Zeilenumbrüche erhalten? User helfen Usern - Fragen zu JTL-Wawi 2
Neu Error 500 nach Clean Installation von RC3 JTL-Shop - BETA - Feedback und Bugmeldungen 3
Neu Nach Update extreme Verbindungsprobleme zum Drucker - Kassenschublade öffnet sich nicht JTL-POS - Fehler und Bugs 16
In Bearbeitung Initialer Import von Amazon nach Einrichtung Einrichtung und Installation von JTL-eazyAuction 7
Neu Nach Update von 4.05 auf 4.06 funktioniert der Bestellvorgang nicht mehr Installation / Updates von JTL-Shop 4
Neu Artikeletikett nach Update nicht mehr druckbar Druck-/ E-Mail-/ Exportvorlagen in JTL-Wawi 8
Gelöst Artikel auf Einkaufliste sobald nach Verkauf Bestand auf Null geht. JTL-Workflows - Ideen, Lob und Kritik 3
Neu schwerwiegender Fehler nach Buchung Barentnahme nach Tagesabschluß JTL-POS - Fehler und Bugs 6
Neu Artikel nach Indiv. VK-Brutto filtern User helfen Usern - Fragen zu JTL-Wawi 1
Neu Fehler bei Sichtbarkeit Kundengruppe(Rabatt) nach Aktivierung von Kategorie für die JTL-POS JTL-POS - Fehler und Bugs 2
Neu Weiße Shop- und Adminseite nach update 4.06 auf V5 RC3 JTL-Shop - BETA - Feedback und Bugmeldungen 7
Gelöst Online Shop Abgleich nach Upgrade auf 1.5.31 defekt: xml ist inkompatibel mit TYPE_spUpdateEbayBilderLaufendGeplant JTL-Wawi - Fehler und Bugs 3
In Bearbeitung Artikelsuche in der Positionszuordnung im Sofortauftrag funktioniert nicht nach Kategorie JTL-Wawi - Fehler und Bugs 1
Gelöst WMS App 1.6 und Server Kompatibilität nach Wawi-Update auf 1.5.30.3 JTL-WMS / JTL-Packtisch+ - Fehler und Bugs 4
Gelöst Kundendisply nach Pos Update ohne Funtion Einrichtung / Updates von JTL-POS 7
In Bearbeitung Bilder nach Änderung der Beschreibung weg. User helfen Usern - Fragen zu JTL-Wawi 4
Neu Fehlermeldung bei Rechnungsdruck nach Update auf 1.5.30.2 User helfen Usern - Fragen zu JTL-Wawi 4
Neu Rabatt auf Rechnung ausweisen - Gesamtsumme und Summe nach MwSt getrennt User helfen Usern - Fragen zu JTL-Wawi 1
Neu Fehler nach öffnen einer E-Mail Servicedesk (Beta) 5
Neu Automatisches Backup nach Server-Neustart Arbeitsabläufe in JTL-Wawi 14
Neu Nach Shopabgleich Produkte doppelt im Shop Gambio-Connector 1
In Bearbeitung Eingangsrechnung Bezahlen Setzen nach Update 1.5.10 JTL-Wawi - Fehler und Bugs 1
Ähnliche Themen