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

Weinewald24

Aktives Mitglied
18. Januar 2018
46
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.061
670
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
46
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.061
670
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
46
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
46
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
284
165
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
46
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.061
670
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
46
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
Neu Export von Buchungsdaten zur Differenzbesteuerung als CSV Datei Schnittstellen Import / Export 0
Neu JTL-POS Datensicherung - Export/Import von Datensätzen Allgemeine Fragen zu JTL-POS 1
Import und Export von eigenen Feldern, JTL-Wawi 1.8 13
Neu JTL Search: Full Export mit Cron ??? JTL-Search 1
Neu Sendungsnummer oder Tracking-Link auf Export-Vorlage anzeigen Gelöste Themen in diesem Bereich 6
Neu XML Export Artikel Stammdaten für Mercateo Schnittstellen Import / Export 1
Neu Fehler bei Export mit Versandart DHL / Die Sequenz enthält keine Elemente. JTL-ShippingLabels - Fehler und Bugs 0
Gelöst Für Datev Export, Konto 4400 ändern Allgemeine Fragen zu JTL-POS 7
JTL-Ameise Export Verkaufsrechnungen // Beleglink für Steuerberaterin JTL-Wawi 1.9 1
Versanddaten Export bearbeiten nicht möglich JTL-Wawi 1.9 0
Neu Export / Exportformate: Anleitung bzw. Infoseite mit zulässigen Tags ? Betrieb / Pflege von JTL-Shop 0
Neu Export der Export- und Importvorlagen JTL Ameise - Eigene Exporte 4
Neu Export der Ebay Angebote unter V1.9 benötigt die 8-fache Zeit JTL-Ameise - Ideen, Lob und Kritik 0
Neu Seit gestern Meldung: Problems creating SAAJ object model mit Export bei Internetmarke JTL-Track&Trace - Fehler und Bugs 2
Neu Ameise Export in SQL Abfrage umwandeln User helfen Usern - Fragen zu JTL-Wawi 11
Nach Update auf 1.9 / Export Rechnungskorrekturen Zeile Ust doppelt JTL-Wawi 1.9 8
Neu Sitemap Export Bug? JTL-Shop - Fehler und Bugs 1
Neu Ameise Export Kundengruppensichtbarkeit User helfen Usern - Fragen zu JTL-Wawi 1
Neu Suche Ameisen Export, der mir alle aktiven Amazon Angebote ausgibt. JTL-Ameise - Fehler und Bugs 3
Neu Ablage von E-Mails bei einem Auftrag User helfen Usern - Fragen zu JTL-Wawi 4
Neu USt-ID von Shopify an JTL übertragen Shopify-Connector 0
Neu Amazon Lister 2.0 - Code 99016 - Ein Maximum von 1 Vorkommen (oder Vorkommnissen) ist für das Attribut color zulässig Amazon-Lister - Fehler und Bugs 0
Neu Anbindung von JTL an Onlinehandel für GPSR (Produktsicherheit) Schnittstellen Import / Export 3
Neu Importieren von Blöcken in den JTL-Shop OnPage Composer Templates für JTL-Shop 1
Paktisch+ zeigt möglichen versandt von zukünftig erscheinenden Artikeln JTL-Wawi 1.9 4
Neu Update Wawi von 1.0.11 auf 1.9 Installation von JTL-Wawi 7
Neu Hersteller ändert SKU von Kind Artikel (Varianten) | Vater beleibt gleich - wie verfahren bei "gemischtem" Lager alt/neu User helfen Usern - Fragen zu JTL-Wawi 3
Neu Artikelübersicht - Doppelte Anzeige von Ust und Versandinformationen JTL-Shop - Fehler und Bugs 5
Neu Wie kann ich bestimmte Wörter in der Suchfunktion von JTL-Shop ausschließen? Allgemeine Fragen zu JTL-Shop 0
SCX: „Verfügbarer Bestand“ weicht von „Verkaufskanal Menge“ ab - JTL 1.8.12.0 JTL-Wawi 1.8 0
Neu Eingabe von deutscher USt.-ID - weiße Seite JTL-Shop - Fehler und Bugs 1
Neu Vererben der Bildern einer Variation auf alle anderen Variationen, wie beim Vererben von Vater zu Kind-Artikeln, möglich wie? User helfen Usern - Fragen zu JTL-Wawi 0
Neu Umsetzung von JTL Plan & Produce für das Unternehmen Dienstleistung, Jobs und Ähnliches 2
Bestseller verschwinden immer wieder von der Startseite Einrichtung JTL-Shop5 0
Von Workflow lokal gespeicherte Datei direkt wieder löschen lassen JTL-Wawi 1.8 1
Frage zum DATEV Rechnungsservice 2.0 - Vorkontierung und Aufteilung von Buchungen JTL-Wawi 1.9 0
Neu Email Rechnung mit PDF von Ebay blockiert ? eBay-Anbindung - Fehler und Bugs 2
Maximal unzuverlaässiges ermitteln von fba Bedarf über die Umlagerungen in jtl. JTL-Wawi 1.9 0
Neu Sortierung von Kindartikelbildern (Variationen) in Shopify Shopify-Connector 2
Neu Update von 5.1.5 auf 5.3.3 Installation / Updates von JTL-Shop 2
Neu Nach Abbruch von "Auftrag anlegen" wird anderes Programm angezeigt Arbeitsabläufe in JTL-Wawi 2
Neu Bestimmte Kunden/Kundengruppen von Bewertungsmail ausschließen Betrieb / Pflege von JTL-Shop 3
Neu Verwaltung von priorisierten und von Vorgabeplätzen Arbeitsabläufe in JTL-WMS / JTL-Packtisch+ 0
Lagerartikel mit Variation, von denen manche kein Lager brauchen JTL-Wawi 1.9 1
Neu Komponente von OPC zentrieren Allgemeine Fragen zu JTL-Shop 2
Neu Amazon Custom Orders mit Bildern von Kunden Amazon-Anbindung - Ideen, Lob und Kritik 0
Neu HTTP ERROR 500 beim Aufrufen von https://boni-shop24.de JTL-Shop - Fehler und Bugs 4
Neu Amazon Bestellungen von gestern Abend fehlen Amazon-Anbindung - Fehler und Bugs 2
Gelöst Nutzung von JTL POS im B2B Bereich mit späterer Zahlung Allgemeine Fragen zu JTL-POS 1
Neu Paket X von Y auf Shippinglabel einfügen - GLS Druck-/ E-Mail-/ Exportvorlagen in JTL-Wawi 0

Ähnliche Themen