Neu Export von Kunden, die in der Vergangenheit bereits bestimmte Artikel gekauft haben

Weinewald24

Aktives Mitglied
18. Januar 2018
51
3
Berlin
Export von Kunden, die in der Vergangenheit bereits bestimmte Artikel gekauft haben.

Wer kann mir helfen?
Ich bräuchte eine SQL-Abfrage, die mir sämtliche Kunden ausgibt, die in der Vergangenheit bereits bestimmte Artikel gekauft haben. Ideal wäre, wenn ich sowohl nach Artikelbezeichnungen als auch nach Artikelnummern suchen könnte und ich gleich mehrere Suchbegriffe (Bezeichnungen oder Artikelnummern) auf einmal eingeben könnte.

Vielen Dank im Voraus
 

John

Sehr aktives Mitglied
3. März 2012
3.973
980
Berlin
Das geht auch ohne SQL.
Du kannst einfach in der Liste (aller) Aufträge nach einer Position suchen. Danach werden nur die Aufträge gelistet, die die Position enthalten.
Dann die relevanten Spalten der Kunden einblenden und die ganze Tabelle nach CSV exportieren. Rechtsklick in Spaltenkopf Tabelleninhalt, Export ist im Kontextmenü.
 
  • Gefällt mir
Reaktionen: Weinewald24

Weinewald24

Aktives Mitglied
18. Januar 2018
51
3
Berlin
Das geht auch ohne SQL.
Du kannst einfach in der Liste (aller) Aufträge nach einer Position suchen. Danach werden nur die Aufträge gelistet, die die Position enthalten.
Dann die relevanten Spalten der Kunden einblenden und die ganze Tabelle nach CSV exportieren. Rechtsklick in Spaltenkopf Tabelleninhalt, Export ist im Kontextmenü.
Vielen Dank, aber das wusste ich bereits.
DIese Variante funktioniert aber nur einzeln und es werden dann auch immer die Daten zum Zeitpunkt der Bestellung (Adresse, Mailadressen) gezogen, die sch zwischenzeitlich geändert haben könnten. Des Weiteren sind nicht mehr sämtliche dieser Kunden "aktiv", sodass ich die Datensätze einzeln prüfen müsste.

Besser wäre eine Variante, die mit der Kundennummer aus der Bestellung den Kunden aus dem (aktiven) Kundenbestand verknüpft. So wäre das Ergebnis aktueller in Bezug auf (Mail-)Adressen.
 

John

Sehr aktives Mitglied
3. März 2012
3.973
980
Berlin
Mal so als Ansatz...berücksichtig aber keine Stornos.

Code:
DECLARE @ArtNr nvarchar(100) = 'DieArtNummer';

SELECT
tkunde.cKundenNr,
Verkauf.tAuftragPosition.kAuftrag,
Verkauf.tAuftragPosition.cArtNr,
Verkauf.tAuftrag.kKunde,
tAdresse.cFirma,
tAdresse.cVorname,
tAdresse.cName,
tAdresse.cMail
FROM Verkauf.tAuftragPosition
JOIN Verkauf.tAuftrag ON Verkauf.tAuftrag.kAuftrag = Verkauf.tAuftragPosition.kAuftrag
JOIN tkunde ON tkunde.kKunde = Verkauf.tAuftrag.kKunde
JOIN tAdresse ON tAdresse.kKunde = Verkauf.tAuftrag.kKunde
WHERE tAdresse.nStandard = 1
AND cArtNr = @ArtNr
ORDER BY tkunde.cKundenNr

bzw. das hier wenn Kunden nur einfach vorkommen sollen

Code:
DECLARE @ArtNr nvarchar(100) = 'DieArtNummer';

SELECT DISTINCT
tkunde.cKundenNr,
Verkauf.tAuftragPosition.cArtNr,
Verkauf.tAuftrag.kKunde,
tAdresse.cFirma,
tAdresse.cVorname,
tAdresse.cName,
tAdresse.cMail
FROM Verkauf.tAuftragPosition
JOIN Verkauf.tAuftrag ON Verkauf.tAuftrag.kAuftrag = Verkauf.tAuftragPosition.kAuftrag
JOIN tkunde ON tkunde.kKunde = Verkauf.tAuftrag.kKunde
JOIN tAdresse ON tAdresse.kKunde = Verkauf.tAuftrag.kKunde
WHERE tAdresse.nStandard = 1
AND cArtNr = @ArtNr
ORDER BY tkunde.cKundenNr
 
  • Gefällt mir
Reaktionen: Weinewald24

Weinewald24

Aktives Mitglied
18. Januar 2018
51
3
Berlin
Mal so als Ansatz...berücksichtig aber keine Stornos.

Code:
DECLARE @ArtNr nvarchar(100) = 'DieArtNummer';

SELECT
tkunde.cKundenNr,
Verkauf.tAuftragPosition.kAuftrag,
Verkauf.tAuftragPosition.cArtNr,
Verkauf.tAuftrag.kKunde,
tAdresse.cFirma,
tAdresse.cVorname,
tAdresse.cName,
tAdresse.cMail
FROM Verkauf.tAuftragPosition
JOIN Verkauf.tAuftrag ON Verkauf.tAuftrag.kAuftrag = Verkauf.tAuftragPosition.kAuftrag
JOIN tkunde ON tkunde.kKunde = Verkauf.tAuftrag.kKunde
JOIN tAdresse ON tAdresse.kKunde = Verkauf.tAuftrag.kKunde
WHERE tAdresse.nStandard = 1
AND cArtNr = @ArtNr
ORDER BY tkunde.cKundenNr

bzw. das hier wenn Kunden nur einfach vorkommen sollen

Code:
DECLARE @ArtNr nvarchar(100) = 'DieArtNummer';

SELECT DISTINCT
tkunde.cKundenNr,
Verkauf.tAuftragPosition.cArtNr,
Verkauf.tAuftrag.kKunde,
tAdresse.cFirma,
tAdresse.cVorname,
tAdresse.cName,
tAdresse.cMail
FROM Verkauf.tAuftragPosition
JOIN Verkauf.tAuftrag ON Verkauf.tAuftrag.kAuftrag = Verkauf.tAuftragPosition.kAuftrag
JOIN tkunde ON tkunde.kKunde = Verkauf.tAuftrag.kKunde
JOIN tAdresse ON tAdresse.kKunde = Verkauf.tAuftrag.kKunde
WHERE tAdresse.nStandard = 1
AND cArtNr = @ArtNr
ORDER BY tkunde.cKundenNr
Fantastisch. Vielen Dank.
Werde ich gleich morgen ausprobieren :)
 

Weinewald24

Aktives Mitglied
18. Januar 2018
51
3
Berlin
Mal so als Ansatz...berücksichtig aber keine Stornos.

Code:
DECLARE @ArtNr nvarchar(100) = 'DieArtNummer';

SELECT
tkunde.cKundenNr,
Verkauf.tAuftragPosition.kAuftrag,
Verkauf.tAuftragPosition.cArtNr,
Verkauf.tAuftrag.kKunde,
tAdresse.cFirma,
tAdresse.cVorname,
tAdresse.cName,
tAdresse.cMail
FROM Verkauf.tAuftragPosition
JOIN Verkauf.tAuftrag ON Verkauf.tAuftrag.kAuftrag = Verkauf.tAuftragPosition.kAuftrag
JOIN tkunde ON tkunde.kKunde = Verkauf.tAuftrag.kKunde
JOIN tAdresse ON tAdresse.kKunde = Verkauf.tAuftrag.kKunde
WHERE tAdresse.nStandard = 1
AND cArtNr = @ArtNr
ORDER BY tkunde.cKundenNr

bzw. das hier wenn Kunden nur einfach vorkommen sollen

Code:
DECLARE @ArtNr nvarchar(100) = 'DieArtNummer';

SELECT DISTINCT
tkunde.cKundenNr,
Verkauf.tAuftragPosition.cArtNr,
Verkauf.tAuftrag.kKunde,
tAdresse.cFirma,
tAdresse.cVorname,
tAdresse.cName,
tAdresse.cMail
FROM Verkauf.tAuftragPosition
JOIN Verkauf.tAuftrag ON Verkauf.tAuftrag.kAuftrag = Verkauf.tAuftragPosition.kAuftrag
JOIN tkunde ON tkunde.kKunde = Verkauf.tAuftrag.kKunde
JOIN tAdresse ON tAdresse.kKunde = Verkauf.tAuftrag.kKunde
WHERE tAdresse.nStandard = 1
AND cArtNr = @ArtNr
ORDER BY tkunde.cKundenNr
Und an welcher Stelle trage ich die Artikelnummer bzw. Artikelname für die Suche ein?
 

frankell

Sehr aktives Mitglied
9. September 2019
2.557
777
Flensburg
Und an welcher Stelle trage ich die Artikelnummer bzw. Artikelname für die Suche ein?
In der ersten Zeile hat @John die Variable deklariert. Du ersetzt also DieArtNummer mit der Artikelnummer. Die einfachen Anführungszeichen müssen stehenbleiben.
Für die Suche nach einem Artikelnamen müsstest Du noch sagen, in welcher Sprache Du einen Artikelnamen angibst (suchst) und ob der Artikelname überall gleich ist (man kann den global (überall identisch) setzen, aber auch differenziert nach Wawi und den eingestellten Plattformen). Wenn Deutsch (kSprache = 1) und global (kPlattform =1; kShop=0) ist es easy.
 
  • Gefällt mir
Reaktionen: Weinewald24

Weinewald24

Aktives Mitglied
18. Januar 2018
51
3
Berlin
In der ersten Zeile hat @John die Variable deklariert. Du ersetzt also DieArtNummer mit der Artikelnummer. Die einfachen Anführungszeichen müssen stehenbleiben.
Für die Suche nach einem Artikelnamen müsstest Du noch sagen, in welcher Sprache Du einen Artikelnamen angibst (suchst) und ob der Artikelname überall gleich ist (man kann den global (überall identisch) setzen, aber auch differenziert nach Wawi und den eingestellten Plattformen). Wenn Deutsch (kSprache = 1) und global (kPlattform =1; kShop=0) ist es easy.
Hier schreibt ein wahrer Profi. Respekt! Da ich Wein verkaufe, sind die Artikelnamen im SHOP und in der WAWI gleich und ausschließlich in Deutsch
 

John

Sehr aktives Mitglied
3. März 2012
3.973
980
Berlin
..dann ist ein Join auf tArtikelBeschreibung wie von @frankell vermutlich angedacht nicht unbedingt nötig. vStandardArtikel wäre sowieso einfacher.
Aber hier kann man es sich noch einfacher machen und gleich
cName in Verkauf.tAuftragPosition nehmen, denn beim erstellen des Auftrags wurde der Artikelname hier reinkopiert...

Zu berücksichtige: wurde der Artikelname in den Stammdaten seit Auftragserstellung geändert, so wird weiterhin nach dem Namen, der im Auftrag steht gesucht.
 

Weinewald24

Aktives Mitglied
18. Januar 2018
51
3
Berlin
..dann ist ein Join auf tArtikelBeschreibung wie von @frankell vermutlich angedacht nicht unbedingt nötig. vStandardArtikel wäre sowieso einfacher.
Aber hier kann man es sich noch einfacher machen und gleich
cName in Verkauf.tAuftragPosition nehmen, denn beim erstellen des Auftrags wurde der Artikelname hier reinkopiert...

Zu berücksichtige: wurde der Artikelname in den Stammdaten seit Auftragserstellung geändert, so wird weiterhin nach dem Namen, der im Auftrag steht gesucht.
Ich werde das in den nächsten Tagen testen und Bescheid geben, ob es klappt bzw. ich damit zurechtkomme. Bereits jetzt herzlichen Dank für die professionelle Hilfe, die gerne mit eine guten Flasche Wein honorieren möchte.
 
Ähnliche Themen
Titel Forum Antworten Datum
JTL-Ameise: Export von Verkäufen auf Komponenten-Ebene JTL-Wawi 1.10 6
JTL Ameise - Export von HTML und wieder Re-Import JTL-Wawi 1.11 6
Neu JTL Exportformat Google - Produkte fehlen im Export Plugins für JTL-Shop 0
Beantwortet Eigener Export JTL Ameise Rückstände JTL Ameise - Eigene Exporte 1
Export Zahlungen Amazon marketplace bei Kombi OSS und FBA erfolgt nach JTL2DATEV unvollständig JTL-Wawi 1.9 0
Neu Export Kundendaten mit Label in WAWI 1.9.6.5 JTL Ameise - Eigene Exporte 1
Neu Ebay Artikel mit Fehlern / Export eBay-Anbindung - Ideen, Lob und Kritik 3
Neu Export der Umsätze kummuliert Allgemeine Fragen zu JTL-POS 0
Neu Im- und Export-Vorlage für eBay Bestandsabgleich JTL-Ameise - Ideen, Lob und Kritik 0
Neu Export eigene Felder User helfen Usern - Fragen zu JTL-Wawi 3
Neu Export einer eigenen Verkaufsstatistik JTL Ameise - Eigene Exporte 1
Neu Export/Import aller Amazon Angebote über die JTL-Ameise JTL-Ameise - Fehler und Bugs 1
Neu Bilder von Plattform A auch für Plattform B aktivieren Arbeitsabläufe in JTL-Wawi 0
Neu Frage zur Übertragung von JTL -> Shopify Shopify-Connector 0
Neu CSS GeoIP MwSt.-Finder 2.7.1 verhindert das Anlegen von Shop-Kundenkonten aus der Wawi Plugins für JTL-Shop 0
Rechnungen an Rechnungspostfächer von Kunden schicken ohne dass JTL auch andere Dokumente dorthin schickt? JTL-Wawi 1.11 2
Neu Onlineshop von Wawi entfernen Onlineshop-Anbindung 2
Neu Shop 5.6.1: Probleme beim Entfernen von Artikeln aus dem Warenkorb JTL-Shop - Fehler und Bugs 5
Neu Artikel Rücknahme über Kassenbon von letzter Woche in JTL-Pos JTL-POS - Ideen, Lob und Kritik 2
Artikelbezeichnung auf der Rechnung anpassen von "Artikelname" in "Kurzbeschreibung" JTL-Wawi 1.10 3
Neu DSGVO – Automatisierte Löschung von Kundendaten nach 10 Jahren (JTL-Wawi / JTL-Shop) User helfen Usern - Fragen zu JTL-Wawi 1
Update von 1.11.6 auf 1.11.7: JTL Worker verbindet nicht mehr mit Datenbank (WaWi schon) JTL-Wawi 1.11 1
Neu Zyklische Fehler beim Listen von T-Shirts Amazon-Lister - Fehler und Bugs 3
Neu Verbindungsabbruch von Wawi zu POS Einrichtung / Updates von JTL-POS 0
Neu In welcher Datenbank-Tabelle sind Wertelisten und deren IDS von Eigenen Felder gespeichert? User helfen Usern - Fragen zu JTL-Wawi 8
Neu Import von Rechnungen oder Lieferungen aus anderem System Starten mit JTL: Projektabwicklung & Migration 0
Neu OPC friert beim speichern von Änderungen ein nach JTL-Shop Update von Version 5.1.5 auf 5.6.1 JTL-Shop - Fehler und Bugs 0
Neu Erfahrungsbericht von JTL zu Myfactory Smalltalk 0
Neu von JTL-Wawi-Version 1.10.16.0 ist kein Update...möglich Installation von JTL-Wawi 2
Neu Produktverkauf von max. 24 Stück am Tag - wie umsetzen ? User helfen Usern - Fragen zu JTL-Wawi 1
Neu Ständig neue Angebote von JTL und Fallen bei Unaufmerksamkeit Smalltalk 26
Datenbank von Inaktiven Artikeln bereinigen JTL-Wawi 1.11 2
Neu WAWI 1.11.2 Änderung von E-Mailadresse in Rechnung hat keine Auswirkung JTL-Wawi - Fehler und Bugs 3
Abschalten von Verfügbarkeitsmails von Kunden JTL-Wawi 1.10 5
Neu SQL Worker.tStatus - Bedeutung von nStatus? JTL Ameise - Eigene Exporte 2
Neu 📢 Plugin "Kreditlimit Plugin für JTL-Shop 5 " von CIN GmbH Plugins für JTL-Shop 0
Nach Update auf 1.11.6 werden die Preisänderung nicht mehr von der Wawi an Amazon übertragen JTL-Wawi 1.11 0
Neu DHL versenden 4.0 - NullReferenceException beim Erstellen von Labels JTL-ShippingLabels - Fehler und Bugs 7
Neu Wechsel von JTL Shop 5 zu Shopify / ERP-Connector Produkte mit Variationen werden nicht übertragen Shopify-Connector 1
Neu Update von Wawi 1.3 auf Wawi 1.8 JTL-Wawi 1.6 1
Neu JTL übernimmt immer Standard Versand von Amazon Amazon-Anbindung - Fehler und Bugs 0
Neu Referenznummer Grösse auf den Versand Etiketten von DPD-Cloudservice und GLS Api JTL-ShippingLabels - Ideen, Lob und Kritik 0
Nachträgliche Änderung von Steuerart auf Innergemeinschaftliche Lieferung nicht möglich JTL-Wawi 1.11 4
Neu WMS CSV Import von Lieferscheinen Arbeitsabläufe in JTL-WMS / JTL-Packtisch+ 1
Neu Grundpreisanzeige von Liter, Meter und Stück JTL-Shop - Fehler und Bugs 5
Neu Shopware Connector sendet keine Zahlungs und Versandinfos von WAWI zu SW6 Shopware-Connector 7
Neu Alternative zu https://wawi-db.jtl-software.de/ - Wawi-Diff zur Darstellung von Datenbank-Änderungen User helfen Usern - Fragen zu JTL-Wawi 1
Neu Kundengruppenrabatt: Rabattbasis von UVP auf Bruttopreis pro Artikel umstellbar? Allgemeine Fragen zu JTL-Shop 0
Neu Übergabe von Pickliste nach Packtisch User helfen Usern - Fragen zu JTL-Wawi 7
Neu wnm Hinweisfenster - Update von 1.1.7 auf 1.1.8 funktioniert nicht Plugins für JTL-Shop 7

Ähnliche Themen