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.040
660
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.040
660
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
109
126
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.040
660
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 JTL-POS Datensicherung - Export/Import von Datensätzen Allgemeine Fragen zu JTL-POS 0
Import und Export von eigenen Feldern, JTL-Wawi 1.8 13
Externe Otto Rechnungen von Export ausschließen: DATEV Rechnungsdaten - Rechnungen Otto.de - Anbindung (SCX) 0
JTL-Ameise Export Verkaufsrechnungen // Beleglink für Steuerberaterin JTL-Wawi 1.9 0
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
Gelöst Finanzamt-Kassennachschau // GDPdU-Export Allgemeine Fragen zu JTL-POS 3
Neu FFN Export Vorlage erstellen? User helfen Usern - Fragen zu JTL-Wawi 0
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 0
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 1
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
Neu Nutzung von JTL POS im B2B Bereich mit späterer Zahlung Allgemeine Fragen zu JTL-POS 0
Neu Paket X von Y auf Shippinglabel einfügen - GLS Druck-/ E-Mail-/ Exportvorlagen in JTL-Wawi 0
Neu Tagesabschluss Beleg von/bis 4 stellig auf Ausdruck, obwohl Nummernfolge 5-stellig (letzte Nummer abgeschnitten) Allgemeine Fragen zu JTL-POS 0
Neu CMD-Line-Version von JTL-Ameise User helfen Usern - Fragen zu JTL-Wawi 3
Neu Sonderpreise von JTL zu Woocommerce WooCommerce-Connector 0
Neu Nach Update von PayPal Checkout wird PayPal Zahlungsart entfernt Plugins für JTL-Shop 4
Neu Canonical-Tag von Kinderartikel Allgemeine Fragen zu JTL-Shop 3
update von 1.3.21.1 auf Version 1.8.12.2 JTL-Wawi 1.8 6
Neu Das Drucken von Versandetiketten dauert lange JTL-ShippingLabels - Fehler und Bugs 2
Versanddienstleister von Track&Trace DHL, GLS, DPD JTL-Wawi 1.8 0
In Diskussion Workflow zum Drucken von Shipping Labels JTL-Workflows - Ideen, Lob und Kritik 3
Neu Probleme beim Update von 5.2.4 auf 5.3.3 Installation / Updates von JTL-Shop 6
Neu Automatischer Abgleich von Artikel Daten Schnittstellen Import / Export 5
Workflow - Vorbestellung ausschließen von Storno JTL-Wawi 1.9 1
Neu Zweisprachiger Druck von Bestellformularen User helfen Usern - Fragen zu JTL-Wawi 2
In Diskussion Kopieren oder Auslösen von Workflows in anderen Bereichen (Von Rechnung nach Kunde) JTL-Workflows - Ideen, Lob und Kritik 2
Neu Anbindung von JTL WaWi an zwei verschiedene Kassensysteme User helfen Usern - Fragen zu JTL-Wawi 8
Neu Warenkorb - löschen von Artikeln Betrieb / Pflege von JTL-Shop 3
Neu Bewertungssterne von Child-Artikeln in Artikellisten Templates für JTL-Shop 0
Neu Mandant von lokal zu online verschieben User helfen Usern - Fragen zu JTL-Wawi 7
Versand von Sperrgut mit JTL-Shipping-Labels, Abmessungen eingeben JTL-ShippingLabels - Ideen, Lob und Kritik 1

Ähnliche Themen