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.554
255
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 und Vorlage kennzeichnen nach Bearbeitung Arbeitsabläufe in JTL-Wawi 7
Neu Nach Update viele Produkte im Shop gelöscht JTL-Wawi - Fehler und Bugs 0
Neu Schopware jtl connector extrem langsam nach Server migration Shopware-Connector 4
Neu Massenhaft Beschreibungen von html Text nach Plain Text wandeln, Zeilenumbrüche erhalten? User helfen Usern - Fragen zu JTL-Wawi 0
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 14
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 0
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 6
In Bearbeitung Online Shop Abgleich nach Upgrade auf 1.5.31 defekt: xml ist inkompatibel mit TYPE_spUpdateEbayBilderLaufendGeplant JTL-Wawi - Fehler und Bugs 2
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 - Fehler und Bugs 4
Gelöst Kundendisply nach Pos Update ohne Funtion Einrichtung / Updates von JTL-POS 7
Neu Bilder nach Änderung der Beschreibung weg. User helfen Usern - Fragen zu JTL-Wawi 3
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 0
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
Neu Eingangsrechnung Bezahlen Setzen nach Update 1.5.10 JTL-Wawi - Fehler und Bugs 0
Neu Fehlermeldung beim Drucken von Adressetiketten nach Update auf 1.5.30.1 JTL-Wawi - Fehler und Bugs 1
Gelöst Nach Update auf 1.5.30.0 - WMS Picklisten dauern lange beim Druck oder stürzt ab JTL-WMS - Fehler und Bugs 1
Neu Übertrag und Zwischensumme nach Update auf 1.30.2 Druck-/ E-Mail-/ Exportvorlagen in JTL-Wawi 3
Gelöst TSE nach Start von JTL-POS App (1.0.2.4) nicht verfügbar, auch kein Icon da Gelöste Themen in diesem Bereich 1
Neu Rechnungsformular - letzte Spalte plötzlich nach rechts verschoben und so nicht mehr lesbar Druck-/ E-Mail-/ Exportvorlagen in JTL-Wawi 10
Neu Fehler nach Update 1.5.30.0 - Aufragsdruck sql_variant-Datentyp in Datetime & IGL Problem Druck-/ E-Mail-/ Exportvorlagen in JTL-Wawi 15
Gelöst Fehler nach Update von 1.0 auf 1.5.29.3 Gelöste Themen in diesem Bereich 3
Neu Filter nach Attributwert Allgemeine Fragen zu JTL-Shop 0
Neu Fehlermeldung nach Update auf JTL-WAWI 1.5.30.1 JTL-Wawi - Fehler und Bugs 3
Neu Fehler nach Update auf 1.5.30.0 beim Mailen JTL-Wawi - Fehler und Bugs 26
In Bearbeitung Neue Produkte werden von der Wawi nicht nach POS synchronisiert. JTL-POS - Fehler und Bugs 25
Neu Aufträge Filtern nach Ebay Nutzer bei 2 Ebay Accounts - geht nicht? JTL-Wawi - Fehler und Bugs 6
Neu Artikelstatistik nach Variationen Arbeitsabläufe in JTL-Wawi 0
Neu Online Abgleich Shopware nach Änderung der Kategorien nicht mehr möglich 502 500 Onlineshop-Anbindung 1
Neu Filtern nach Farben bei Aufträgen Arbeitsabläufe in JTL-Wawi 2
Gelöst Umleitungsfehler nach Artikelansicht JTL-Shop - BETA - Feedback und Bugmeldungen 6
Neu leere Maske nach Datenübertagung aus dem woocommerce Shop WooCommerce-Connector 0
Neu FBA Umlagerung nach PL via DE hat falsche Lieferadresse User helfen Usern - Fragen zu JTL-Wawi 3
Neu Aufstellung Verkäufe nach Bezahldatum und Lieferant - Ameise/SQL Schnittstellen Import / Export 2
Neu Shop Update von 4er auf 5er Shop nach Release? Installation / Updates von JTL-Shop 3
Neu Artikelpreise nach Login im Shop nicht mehr sichtbar User helfen Usern - Fragen zu JTL-Wawi 4
Neu Kundennummern auf Rechnung falsch nach Webshop Import JTL-Wawi - Fehler und Bugs 4
Neu Nach Update fehler beim start Installation von JTL-Wawi 3
Neu Sliderbilder nach Sprachen ablegen User helfen Usern - Fragen zu JTL-Wawi 1
Neu --Gelöst-- Doppel Artikel nach hinzufügen des Lieferant --Gelöst-- Gelöste Themen in diesem Bereich 3
Ähnliche Themen