Neu Statistik - Welcher Artikel liegt am längsten unverkauft im Lager?

karlheinz

Gut bekanntes Mitglied
4. November 2012
567
11
Immer wieder finden wir durch Zufall Artikel, die das letzte Mal vor langer Zeit verkauft wurden. Ist es möglich das man das mit der Statistik in der Wawi herausbekommt.
Welcher Artikel liegt am längsten unverkauft im Lager?
 

Karobube

Sehr aktives Mitglied
23. September 2020
214
158
Remote via AnyDesk
Firma
contact@karobube.com
Hallo Karl-Heinz,

im Statistiktool lassen sich leider nur die Artikel anzeigen, die mindestens 1mal im gewählten Zeitraum verkauft wurden. Wenn man den groß genug (Quartal/Jahr) wählt, könnte die Anzeige der Flops dennoch interessant sein, z.B. so:

50 Flops (aber eben trotzdem mindestens einmal verkauft) des letzten Quartals.
1628934340399.png


Mit einer SQL Abfrage kriegst Du alternativ eine Liste mit allen Verkaufszahlen aller Artikel z.B. im Zeitraum der letzten sechs Monate aufsteigend, d.h. nicht verkaufte und wenig verkaufte Artikel stehen oben an, außerdem zeigt sie Dir das Datum des letzten Verkaufs an.
Den Zeitraum kannst Du in der ersten Zeile bei MONTH, -6 mit DAY, MONTH oder YEAR und einer beliebigen Zahl, wie weit Du zurückschauen willst, anpassen. Je nach Artikel- und Bestellanzahl in der Datenbank kann die Abfrage einen Moment dauern:

DECLARE @d date=DATEADD(MONTH,-6,GETDATE())
SELECT
sum(case when tBestellung.dErstellt > @d and ISNULL(tBestellung.cType,'') = 'B' then convert(int, tbestellpos.nAnzahl) else 0 end) AS "Verkaeufe_im_Zeitraum",
MAX(tBestellung.dErstellt) AS "Letzter_Verkauf_Am",
tArtikel.cArtNr AS "Artikelnummer",
tArtikelBeschreibung.cName AS "Artikelname"
FROM tArtikel
FULL OUTER JOIN tbestellpos ON tArtikel.cArtNr = tbestellpos.cArtNr
FULL OUTER JOIN tBestellung ON tBestellung.kBestellung = tbestellpos.tBestellung_kBestellung
JOIN tSpracheUsed ON nStandard = 1
JOIN tArtikelBeschreibung ON tArtikel.kArtikel = tArtikelBeschreibung.kArtikel
AND tSpracheUsed.kSprache = tArtikelBeschreibung.kSprache
AND tArtikelBeschreibung.kPlattform = 1
GROUP BY tArtikel.cArtNr, tArtikelBeschreibung.cName
ORDER BY sum(case when tBestellung.dErstellt > @d and ISNULL(tBestellung.cType,'') = 'B' then convert(int, tbestellpos.nAnzahl) else 0 end) ASC


LG aus Grenoble KB
 
Zuletzt bearbeitet:

karlheinz

Gut bekanntes Mitglied
4. November 2012
567
11
Guten Morgen Karobube,
wenn die SQL Abfrage zum gewünschten Ergebniss führt, dann würde ich es ausprobieren. Gerade die Artikel die noch nicht verkauft wurden sind die, die wir suchen.
Ich nehme an den obigen Code in das freie Eingabefeld 1 kopieren, und was mche ich mit den obigen Abfragefenster Tabelle und Spalte auswählen?
 

Karobube

Sehr aktives Mitglied
23. September 2020
214
158
Remote via AnyDesk
Firma
contact@karobube.com
Guten Morgen Karl-Heinz,

direkte SQL Abfragen gehen aus der Wawi heraus leider nur mit Tricks - etwa irgendwo in eine Dot-Liquid-Email mit der Abfrage als HTML-Tabelle auslösen und an sich selbst schicken.

Sauber machst Du es über das SQL Server Management Studio: https://guide.jtl-software.de/jtl-wawi/datenbank/sql-auf-der-datenbank-ausfuehren/

da einfach mit denselben Serverdaten anbinden wie in der WaWi, dann im Baum links Databases->easybuziness, darauf rechtsklick->New Query, dann rechts im Fenster den Code einfügen und oben auf den grünen Play-Button "Execute". Dann hast Du unten die Ergebnistabelle, die Du mit rechtsklick auf die Kopfleiste->Save Results As als CSV für Excel oder Calc speichern kannst.

GLG
 

Stephan K.

Sehr aktives Mitglied
14. Mai 2014
1.258
299
Guten Morgen,
oh, das ist eine sinnvolle SQL-Abfrage für Pennerartikel. Danke sehr! Wird mein bisheriges Skript aus dem Forum ersetzen.
Eine kurze Ergänzung hätte ich noch: Kann man die Abfrage auf aktive Artikel beschränken?
 

Ähnliche Themen