Neu Verkaufsmengen | nur berechnete Aufträge beachten

  • 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/

SLINGSHOT

Neues Mitglied
3. November 2020
13
2
Moin,

ich finde leider keine Antwort in dem Forum deshalb der neue Thread.

Aktuell nutze ich diese Abfrage. Sie beinhaltet Produkte auf Bestellungen aber ignoriert ob diese ausgeliefert oder berechnet wurden. Ich würde die abfrage gerne ändern auf ausgelieferte oder berechnete Aufträge ändern da dies für mich wichtiger ist (Vorbestellungen möchte ich also nicht hier drin haben). Es sollen also die Verkäufe (berechnete) Menge anzeigt werden.

1611139325436.png

Vielleich kann mir hier jemand weiterhelfen?

Danke :)
 

SLINGSHOT

Neues Mitglied
3. November 2020
13
2
Bitte stelle doch mal den SQL-Code "dieser Abfrage" mit rein.
Hier ist der SQL Code:

SELECT tPlattform.cName AS 'Plattform',
ISNULL(jAktTag.absatz, 0) AS 'Heute',
ISNULL(jGestern .absatz, 0) AS 'Gestern',
ISNULL(jAktMonat.absatz, 0) AS 'Akt. Monat',
ISNULL(jVorMonat.absatz, 0) AS 'Vormonat',
ISNULL(jLetzte30Tage.absatz, 0) AS 'Letzte 30 Tage',
ISNULL(jLetzte3Monate.absatz, 0) AS 'Letzte 3 Monate',
ISNULL(jAktJahr.absatz, 0) AS 'Akt. Jahr',
ISNULL(jLetzte365Tage.absatz, 0) AS 'Letzte 365 Tage',
ISNULL(jVorjahr.absatz, 0) AS 'Vorjahr',
ISNULL(jGesamt.absatz, 0) AS 'Gesamt'
FROM tPlattform
LEFT JOIN (
SELECT 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
AND YEAR(tBestellung.dErstellt) = YEAR(getdate())
AND MONTH(tBestellung.dErstellt) = MONTH(getdate())
AND DAY(tBestellung.dErstellt) = DAY(getdate())
GROUP BY nPlatform
) as jAktTag on jAktTag.nPlatform = tPlattform.nPlattform
LEFT JOIN (
SELECT 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
AND YEAR(tBestellung.dErstellt) = YEAR(DATEADD(DAY, -1, getdate()))
AND MONTH(tBestellung.dErstellt) = MONTH(DATEADD(DAY, -1, getdate()))
AND DAY(tBestellung.dErstellt) = DAY(DATEADD(DAY, -1, getdate()))
GROUP BY nPlatform
) as jGestern on jGestern.nPlatform = tPlattform.nPlattform
LEFT JOIN (
SELECT 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
AND YEAR(tBestellung.dErstellt) = YEAR(getdate())
AND MONTH(tBestellung.dErstellt) = MONTH(getdate())
GROUP BY nPlatform
) as jAktMonat on jAktMonat.nPlatform = tPlattform.nPlattform
LEFT JOIN (
SELECT 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
AND YEAR(tBestellung.dErstellt) = YEAR(DATEADD(MONTH, -1, getdate()))
AND MONTH(tBestellung.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(tbestellpos.nAnzahl), 0.0)), 2) AS absatz
FROM tbestellung
JOIN tbestellpos ON tbestellpos.tBestellung_kBestellung = tBestellung.kBestellung
WHERE tbestellpos.tArtikel_kArtikel = @Key
AND tBestellung.nStorno = 0 -- Stornierte Aufträge nicht beachten
AND tbestellung.cType = 'B'
AND tBestellung.dErstellt > DATEADD(DAY, -30, getdate())
GROUP BY nPlatform
) as jLetzte30Tage on jLetzte30Tage.nPlatform = tPlattform.nPlattform
LEFT JOIN (
SELECT 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.nStorno = 0 -- Stornierte Aufträge nicht beachten
AND tbestellung.cType = 'B'
AND tBestellung.dErstellt > DATEADD(MONTH, -3, getdate())
GROUP BY nPlatform
) as jLetzte3Monate on jLetzte3Monate.nPlatform = tPlattform.nPlattform
LEFT JOIN (
SELECT 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.nStorno = 0 -- Stornierte Aufträge nicht beachten
AND tbestellung.cType = 'B'
AND YEAR(tBestellung.dErstellt) = YEAR(getdate())
GROUP BY nPlatform
) as jAktJahr on jAktJahr.nPlatform = tPlattform.nPlattform
LEFT JOIN (
SELECT 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.nStorno = 0 -- Stornierte Aufträge nicht beachten
AND tbestellung.cType = 'B'
AND tBestellung.dErstellt > DATEADD(DAY, -365, getdate())
GROUP BY nPlatform
) as jLetzte365Tage on jLetzte365Tage.nPlatform = tPlattform.nPlattform
LEFT JOIN (
SELECT 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.nStorno = 0 -- Stornierte Aufträge nicht beachten
AND tbestellung.cType = 'B'
AND YEAR(tBestellung.dErstellt) = YEAR(DATEADD(YEAR, -1, getdate()))
GROUP BY nPlatform
) as jVorjahr on jVorjahr.nPlatform = tPlattform.nPlattform
JOIN (
SELECT 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.nStorno = 0 -- Stornierte Aufträge nicht beachten
AND tbestellung.cType = 'B'
GROUP BY nPlatform
) as jGesamt on jGesamt.nPlatform = tPlattform.nPlattform
WHERE tPlattform.cName NOT IN ('XML-Import', 'Amazon.com.mx') -- XML-Import und Amazon Mexiko wollen wir exemplarisch ausschliessen
UNION
SELECT 'Alle Plattformen' AS 'Plattform',
(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.nStorno = 0 -- Stornierte Aufträge nicht beachten
AND tbestellung.cType = 'B'
AND YEAR(tBestellung.dErstellt) = YEAR(getdate())
AND MONTH(tBestellung.dErstellt) = MONTH(getdate())
AND DAY(tBestellung.dErstellt) = DAY(getdate())) as 'Heute',
(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.nStorno = 0 -- Stornierte Aufträge nicht beachten
AND tbestellung.cType = 'B'
AND YEAR(tBestellung.dErstellt) = YEAR(DATEADD(DAY, -1, getdate()))
AND MONTH(tBestellung.dErstellt) = MONTH(DATEADD(DAY, -1, getdate()))
AND DAY(tBestellung.dErstellt) = DAY(DATEADD(DAY, -1, getdate()))) as 'Gestern',
(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.nStorno = 0 -- Stornierte Aufträge nicht beachten
AND tbestellung.cType = 'B'
AND YEAR(tBestellung.dErstellt) = YEAR(getdate())
AND MONTH(tBestellung.dErstellt) = MONTH(getdate())) as 'Akt. Monat',
(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.nStorno = 0 -- Stornierte Aufträge nicht beachten
AND tbestellung.cType = 'B'
AND YEAR(tBestellung.dErstellt) = YEAR(DATEADD(MONTH, -1, getdate()))
AND MONTH(tBestellung.dErstellt) = MONTH(DATEADD(MONTH, -1, getdate()))) as 'Vormonat',
(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.nStorno = 0 -- Stornierte Aufträge nicht beachten
AND tbestellung.cType = 'B'
AND tBestellung.dErstellt > DATEADD(DAY, -30, getdate())) as 'Letzte 30 Tage',
(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'
AND tBestellung.nStorno = 0 -- Stornierte Aufträge nicht beachten
AND tBestellung.dErstellt > DATEADD(MONTH, -3, getdate())) as 'Letzte 3 Monate',
(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'
AND tBestellung.nStorno = 0 -- Stornierte Aufträge nicht beachten
AND YEAR(tBestellung.dErstellt) = YEAR(getdate())) as 'Akt. Jahr',
(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'
AND tBestellung.nStorno = 0 -- Stornierte Aufträge nicht beachten
AND tBestellung.dErstellt > DATEADD(DAY, -365, getdate())) as 'Letzte 365 Tage',
(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'
AND tBestellung.nStorno = 0 -- Stornierte Aufträge nicht beachten
AND YEAR(tBestellung.dErstellt) = YEAR(DATEADD(YEAR, -1, getdate()))) as 'Vorjahr',
(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'
AND tBestellung.nStorno = 0 -- Stornierte Aufträge nicht beachten
) as 'Gesamt'
ORDER BY Plattform
 

SportNet

Aktives Mitglied
16. Oktober 2014
84
17
wenn bei dir " berechnet wurden " bedeutet, dass eine Rechnung erstellt wurde, kannst du in jedem Select einen Join auf tRechnung machen.

So wären dann Aufträge, die keine Rechnung haben, nicht mit in den Daten drin.
 

SLINGSHOT

Neues Mitglied
3. November 2020
13
2
Genau das heißt es. Könntest du mir vielleicht ein Beispiel geben damit ich weiß wie das auszusehen hat?

Vielen Dank schon mal!
 

SportNet

Aktives Mitglied
16. Oktober 2014
84
17
Ergänze in jeder Berechnung folgendes: join trechnung on trechnung.tBestellung_kBestellung = tBestellung.kBestellung

hier ein Beispiel:


SQL:
SELECT ROUND(CONVERT(FLOAT, ISNULL(SUM(tbestellpos.nAnzahl), 0.0)), 2) AS absatz
FROM tbestellung
JOIN tbestellpos ON tbestellpos.tBestellung_kBestellung = tBestellung.kBestellung
join trechnung on trechnung.tBestellung_kBestellung = tBestellung.kBestellung
WHERE tbestellpos.tArtikel_kArtikel = 34816
AND tbestellung.cType = 'B'
AND tBestellung.nStorno = 0 -- Stornierte Aufträge nicht beachten
Bedenke aber auch, dass das die Zahlen VOR "Gutschriften" sind. Daher wenn ein KD etwas retourniert, müsste man dies ggf. wieder abziehen.
 

SLINGSHOT

Neues Mitglied
3. November 2020
13
2
Perfekt das hat geklappt! Vielen vielen Dank für die Hilfe!

Gutschriften interessieren mich weniger da wir als Vertrieb/Großhandel tätig sind und somit wenig Gutschriften erstellen.

Ein kleines Manko gibt es aber das ist nicht soo schlimm. Die Auswertung bezieht sich auf das Auftragsdatum und nicht auf das Rechnungsdatum. Gibt's da noch irgendeine Möglichkeit das noch einzustellen?

Nochmals vielen Dank!
 
Ähnliche Themen Forum Antworten Erstelldatum des Themas
Neu Bon Mail: von $header$ wird nur die erste Zeile ausgegeben JTL-POS - Fehler und Bugs 0
Neu JTL Shop 5 - Paypal Bezahlvorgang nur Weißes Bild - Switchen verschiedener Versandarten verbuggt und und und JTL-Shop - Fehler und Bugs 0
Neu Eine generelle Frage - warum sind im Editor alle Variablen in Englisch während in der JTL Dokumentation diese nur in Deutsch vorkommen Druck-/ E-Mail-/ Exportvorlagen in JTL-Wawi 4
Beantwortet DotLiquid: Einfache Addition scheint nur eine Verkettung zu sein JTL-Workflows - Fehler und Bugs 2
Gelöst Stückzahl teilbar funktioniert nur teilweise JTL-Wawi - Fehler und Bugs 5
Neu Eingangsrechnng kann nicht erstellt werden Alle Position nur geliferte Positionen grau Arbeitsabläufe in JTL-Wawi 1
Neu Merkmalwerte gezielt entfernen, wenn mehr als ein Merkmalwert vorhanden (eBay Problem xxx darf nur einen Wert haben) User helfen Usern - Fragen zu JTL-Wawi 0
Neu Multishop: merkmale nur in bestimmten Shops nutzen JTL-Wawi - Fehler und Bugs 4
Neu Nur den Packtisch+ öffnen? User helfen Usern - Fragen zu JTL-Wawi 4
Neu JTL Shop 5 Ladezeit 3 - 5 sek. aber JTL Shop 4 nur max. 2 Sekunden Allgemeine Fragen zu JTL-Shop 9
Neu Nur Bestände und Bestellungen abgleichen Shopify-Connector 12
Neu Listing auf Otto: BulletPoins nur noch 60 Zeichen möglich? User helfen Usern 0
Nur Mega Menü in Mobiler Ansicht Upgrade JTL-Shop4 auf JTL-Shop5 2
Beantwortet Linkgruppe: Spezialseite lässt sich immer nur in einer Linkgruppe anordnen Einrichtung JTL-Shop5 3
Neu Bestände werden nur noch nach Löschen des Cache richtig angezeigt! JTL-Shop - Fehler und Bugs 9
Beantwortet Workflow -> Artikel nach Verkauf mit Bestand kleiner 1 auf Einkaufliste -> funktioniert nur teilweise JTL-Workflows - Fehler und Bugs 1
Neu Artikelbeschreibung in HTML Form nur für den Vater oder für Vater und Kinderartikel? User helfen Usern - Fragen zu JTL-Wawi 3
Neu Ober-Kategorie im Menü ausblenden (-> nur Kategorie-Namen) ... Artikel dennoch anzeigen Allgemeine Fragen zu JTL-Shop 4
In Bearbeitung Sunmi Hardware nur von JTL? JTL-POS - Fragen zu Hardware 15
Neu Angabe von Wertgutscheinen u. Versandkosten nur noch netto möglich? WooCommerce-Connector 1
In Bearbeitung Automatische Dropshipping Bestellung - Bedingung für nur bei Lieferant x JTL-Workflows - Ideen, Lob und Kritik 1
In Bearbeitung Kein Initialer Import von Amazon Bestellungen? Nur neue Bestellungen werden abgeholt Amazon-Anbindung - Fehler und Bugs 3
Neu Nach upDate nur noch Fehler JTL-Shop - Fehler und Bugs 10
Neu Nur Anzahlungen bei Shopbestellungen JTL-Shop - Ideen, Lob und Kritik 1
Neu Vorlage Lieferantenbestellungen - Kopie: Benutzerdefiniert -> Versand nur bei einem Lieferanten Druck-/ E-Mail-/ Exportvorlagen in JTL-Wawi 0
Neu 2 Lager nur 1 darf mit zum Online-Shop synchronisiert werden User helfen Usern - Fragen zu JTL-Wawi 3
Neu Product-stream funktioniert nur wenn 1x vorhanden Allgemeine Fragen zu JTL-Shop 6
Neu Mit OnPage Composer nur 1 Portlet pro Seite? Einrichtung von JTL-Shop4 3
Beantwortet Nur eine Kategorie am Packtisch anzeigen Arbeitsabläufe in JTL-WMS / JTL-Packtisch+ 2
Beantwortet Leere Seite nur auf Android /Ipad Einrichtung von JTL-Shop4 5
In Bearbeitung JTL-POS unterstützt nur Artikel, die in EINER Kategorie liegen. Was bedeutet das genau? Allgemeine Fragen zu JTL-POS 3
Neu Synchronisation zwischen JTL_Wawi und JTL-POS klappt nur gelegentlich User helfen Usern - Fragen zu JTL-Wawi 5
In Bearbeitung Laufende Angebote filtern nach Wawi Kategorie funktioniert nur teilweise? eBay-Anbindung - Fehler und Bugs 3
Neu Gast Bestellung nur einmalig möglich pro Emailadresse? Allgemeine Fragen zu JTL-Shop 1
Abgelehnt Auftrag nicht vollständig! Woran erkennt der Verpacker, ob die Teillieferung erlaubt ist oder nur ein Fehlbestand existierte? Arbeitsabläufe in JTL-WMS / JTL-Packtisch+ 8
Neu Staffelpreis wird nur in Vorschau angezeigt nicht auf der Artikelseite JTL-Shop - Fehler und Bugs 6
Ähnliche Themen