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

Weinewald24

Aktives Mitglied
18. Januar 2018
50
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.856
916
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
50
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.856
916
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
50
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
50
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.114
608
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
50
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.856
916
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
50
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
Export WaWi Daten von EcomData über BackUp Funktion - Wiedereinspielen am PC JTL-Wawi 1.10 7
Ameisen Export Netto-EK in Standardwährung fehlerhaft JTL-Wawi 1.10 0
Neu Datev Kassenbuch Export Allgemeine Fragen zu JTL-POS 0
Neu Nachdem Shop-Update auf 5.5.3, im Backend: Export-Manager nicht aufrufbar Installation / Updates von JTL-Shop 1
Neu Google Shopping (Plugin) Export immer leer Allgemeine Fragen zu JTL-Shop 4
Kann keinen neuen Export für Google Shopping mehr erstellen Allgemeine Fragen zu JTL-Shop 4
Export aller Kunden mit über xxx € Umsatz in xxx Tagen JTL-Wawi 1.10 15
Neu Zweites Bild auf Google Shopping Export mappen Plugins für JTL-Shop 0
Neu Google shopping export - neue Produkte markieren um eine Werbung nur für neue Produkte laufen zu lassen Technische Fragen zu Plugins und Templates 1
Neu Export Lieferanten-Filter JTL-Ameise - Ideen, Lob und Kritik 1
Neu Ordner export verändern Allgemeine Fragen zu JTL-Shop 2
Neu XML Export Vorlage Lieferscheinpositionen Druck-/ E-Mail-/ Exportvorlagen in JTL-Wawi 2
Neu Export Auftragspositionen mit Positionswerten und diversen Kundendaten JTL-Wawi 1.7 2
Neu Bild Export / Bild Import! User helfen Usern - Fragen zu JTL-Wawi 5
Neu Nach Update von 1.8.10.0 auf 1.10.14.1 werden Rechnungen nicht mehr zu Amazon hochgeladen!!! Amazon-Anbindung - Fehler und Bugs 0
Zahlungsabgleich von Konten JTL-Wawi 1.8 0
Neu Die folgenden Dateien sind nicht identisch mit den Dateien der aktuellen Version von JTL-Shop. Allgemeine Fragen zu JTL-Shop 0
Über 100 Bestellungen von SCX nicht importiert kaufland.de - Anbindung (SCX) 0
Neu Ausgabe von Artikeldaten außerhalb der "Position Table" - im Auftrag Druck-/ E-Mail-/ Exportvorlagen in JTL-Wawi 2
Neu E-Mail von DHL Abschaltung Geschäftskunden-Versand API GKV v3 zum 31.05.2026 Arbeitsabläufe in JTL-Wawi 10
Neu Rollende Kommissionierung – Pflicht zur Bestätigung von Lagerplatz und Pickmenge Arbeitsabläufe in JTL-WMS / JTL-Packtisch+ 0
nach update auf 1.10.11.0 nur 251 von 252 Steuerklassne JTL-Wawi 1.10 3
Neu Nach Update von WaWi 1.6 auf WaWi 1.10 kein Abgleich der Artikeldaten mehr möglich WooCommerce-Connector 0
Neu Unternehmensspezifische Anpassung von Vorlagen Druck-/ E-Mail-/ Exportvorlagen in JTL-Wawi 3
Neu Template von CFE auf Hosting Templates für JTL-Shop 2
Neu Version 2.1.0 von SpamProtector und SpamProtector Lite Plugins für JTL-Shop 10
Neu Fehlermeldungen beim Hochladen von Artikel über Amazon Lister 2.0 Amazon-Lister - Fehler und Bugs 0
Neu Fehler 500 im Child-Template nach Umstieg von 5.3.3 auf 5.5.3 Templates für JTL-Shop 8
Neu Fehler beim Übertragen von Bildern JTL - Shopware Thumbnail Problem height width dürfen nicht leer sein Shopware-Connector 5
Neu Import von SEO Meta Daten für Plattform Woocommerce WooCommerce-Connector 3
Neu Suche Dienstleister für Providerwechsel von Domainfactory zu All-Inkl Dienstleistung, Jobs und Ähnliches 7
Neu Suchen Wawi- und Shopspezialist (m/w/d) für Pflege von Bestandssystem inhouse in PLZ 24* Dienstleistung, Jobs und Ähnliches 0
Neu Wechsel von Shop 5 zu Shopify? Shopify-Connector 24
In Diskussion Workflow für das Austauschen von bestelltem Artikel in einem Auftrag gegen einen alternativen Artikel JTL-Workflows - Ideen, Lob und Kritik 3
Neu Import von SEO Meta Daten für Plattform Woocommerce JTL-Ameise - Ideen, Lob und Kritik 0
Neu Frage: Artikelimport aus Amazonlisting von Drittanbietern User helfen Usern - Fragen zu JTL-Wawi 4
Neu Upgrade von Wawi Version 1.5.48.2 auf aktuellere Version - was gibt es zu beachten? Installation von JTL-Wawi 5
Neu Suche Linux-Spezialisten für die Betreuung von unseren Servern Dienstleistung, Jobs und Ähnliches 1
Neu Sunmi OS (V3/T3) – Installation von JTL-POS ohne Play Store Allgemeine Fragen zu JTL-POS 5
Neu DHL Versenden 3.0 - Versand von US-Ware in die Schweiz blockiert JTL-ShippingLabels - Fehler und Bugs 0
Neu Warenein- und -ausgang JTL Packtisch von Kundenwaren Arbeitsabläufe in JTL-Wawi 0
Neu Update von 1.5.55.5 auf aktuell, welche Reihenfolge, SQL Express auf Standard Installation von JTL-Wawi 10
Automatischer Workflow für Versand von Gutscheinen versendet den Gutschein nicht JTL-Wawi 1.10 2
Update von 1.8.10 auf aktuelle Version sinnvoll? JTL-Wawi 1.8 2
In Diskussion Hilfe bei Verbindung von EC-Terminal (CCV A920) mit JTL-POS Allgemeine Fragen zu JTL-POS 3
Neu Server Error 500 nach dem Installieren von JTL Theme Editor Plugins für JTL-Shop 3
Neu seit 1.8.25 kein Aufschalten von Angeboten merh möglich mit 1.7.14.0 Amazon-Anbindung - Fehler und Bugs 10
Neu cName von tArtikelBeschreibung zweisprachig User helfen Usern - Fragen zu JTL-Wawi 1
Neu zweiten Mandanten für Ankauf von Ware? gleiche Firma, gleiche Person. Lizenzen? User helfen Usern - Fragen zu JTL-Wawi 2
Neu Rechnungsanzeige Amazon von "Bar" auf "Zahlung via Amazon Pay" Amazon-Anbindung - Fehler und Bugs 1

Ähnliche Themen