Neu Permanentes Löschen der Kunden- und Verkaufsdaten

Tobi_G

Neues Mitglied
17. Dezember 2019
18
5
Hallo,
dies ist mein erster Beitrag hier in dem Forum, daher entschuldigt etwaige Fehler meinerseits.

Wie der Titel bereits sagt möchte ich in JTL alle Kunden und Verkaufsdaten permanent aus der Datenbank löschen. Wie ich in anderen Beiträgen bereits gelesen hatte, geht das nicht über die normalen Wawi Funktionen. Der Grund für meine Frage ist, dass ich ein Programm schreibe, welches alle Kundendaten von einer API neu einliest und das geht nicht solange die Kundennummer in der Datenbank noch vorhanden ist. Ein Löschen des gesamten Servers ist in sofern keine Option da ein Kollege bereits einige wichtige Konfigurationen vorgenommen hat.

Ein erster Versuch mit dem nachfolgenden SQL Skript hat scheinbar noch nicht den gewünschten Effekt gehabt und bevor ich das Rad neu erfinde wäre es schön wenn mir hier jemand helfen kann.


truncate table tbestellung;
truncate table tbestellpos;
truncate table tbestelleigenschaft;
update tpk set nummer=1 where cname='tbestellpos';
update tpk set nummer=1 where cname='tbestelleigenschaft';


Das System befindet sich auf einem Server von dem ein vollständiger Snapshot erstellt wurde, d.h. man muss keine Angst haben dass Daten verloren gehen, bei einem Fehler kann der Server schnell neu aufgesetzt werden.

Ich verstehe auch vollkommen alle Warnungen und Hinweise die ich mehrfach von Moderatoren hier gelesen habe, unwissende Nutzer sollten nicht an der Datenbank herumspielen. Daher kann ich auch gern anbieten diesen Beitrag wieder zu löschen sobald ich eine Lösung gefunden habe.

Grüße TG
 

Rico Giesler

Offizieller Servicepartner
SPBanner
10. Mai 2017
13.244
1.522
Grundsätzlich ist vom Löschen von Daten in der DB abzuraten, da hier einfach zu viele Dinge ineinanderspielen.
Sei es die Statsitiken, Historieneinträge, Kundendaten, Bestelldaten, Einkaufspreise,...
Daher ist es einfacher ein leeres System entweder neu zu konfigurieren oder per Ameise mit den gewünschten Daten zu füllen.
 

Tobi_G

Neues Mitglied
17. Dezember 2019
18
5
So, entschuldige die etwas längere Antwortzeit. Ich bin jetzt weitergekommen und hab eine Frage zu den stored procedures:

Die Funktion spBestellungLoeschen nimmt als parameter einen int. Den konnte ich problemlos übergeben und die Funktion ausführen.
Zusammen mit einer While Schleife und vorherhiger max(kBestellung) konnte ich daher alle Bestellungen löschen.

Das selbe funktioniert aber nicht bei Maintenance.spKundenDatenDelete oder sp.AdresseDelete. Diese beiden Funktionen benutzen einen user defined Type, einen eigenen Datentypen der eine Readonly Tabelle darstellt. Und da ist der Knackpunkt. Ich kann selbst einen Datentypen deklarieren und mit Werten füllen beim übergeben bekomme ich diesen Fehler:

"[S0001][2786] Der Datentyp des 1-Ersetzungsparameters stimmt nicht mit dem erwarteten Typ der Formatspezifikation überein."

Wie kann ich die Funktion ausführen? Kann ich den Datentypen irgendwie selbst auf readonly setzen?
 

Tobi_G

Neues Mitglied
17. Dezember 2019
18
5
War mein Fehler, ich hab gerade gemerkt, dass die sp_KundenDatenDelete gar keinen Fehler wirft. Ich war davon ausgegangen dass es das selbe Problem verursacht wie AdresseDelete.

Was ich aber gemerkt habe ist, dass die Einträge nicht komplett gelöscht werden sondern dass dann in den Zeilen einfach nur "deleted" steht.
Gibt es eine Möglichkeit das noch sauberer wegzulöschen? Also dass quasi bei einem "select * from tKunde" nichts mehr zurückgegeben wird?
 

Tobi_G

Neues Mitglied
17. Dezember 2019
18
5
Also das Ergebnis von 2 Tagen Recherche und SQL Arbeit sind folgende 2 SQL Skripte:

AlleKundenLoeschen.sql
AlleBestellungenLoeschen.sql

Siehe Anhang

Beide greifen auf bereits hinterlegte stored procedures zurück.
AlleKundenLoeschen -> Maintenance.spKundenDatenDelete
AlleBestellungenLoeschen -> spBestellungLoeschen

Diese werden ganz einfach in einer while schleife aufgerufen, beginnend vom max wert des jeweiligen primarykeys bis (einschließlich) 1.

Beim "select * from tBestellungen" ist bereits nichts mehr zu sehen, die Ausführung für AlleKundenLoeschen.sql läuft noch, da dies sehr langsam ist.
Auf unserem Setting ist es ca 3 Einträge pro Sekunde. Sollte aber auch in einer leeren Tabelle münden.

Hoffe ich konnte damit dem ein oder anderen helfen.

Natürlich alle Angaben ohne Gewähr und auf eigene Gefahr. Immer vorher ein Backup machen! Und nur dann wirklich ausführen wenn ihr euch sicher seid dass nichts passieren kann.
Bitte auch vorher ohne die WhileLoop und mit einzelnen Datensätzen testen!!

Viele Grüße
TG

PS: Das Forum erlaubt keine Dateianhänge mit Endung ".sql" daher hab ich kurz ein ".txt" angefügt.

PPS: Falls einer der Moderatoren oder Admins hier trotzdem noch Lust hat mir zu sagen ob meine Lösung so in Ordnung ist oder ob es einen besseren Weg gibt bin ich gern offen für Vorschläge. ;)
 

Anhänge

  • AlleBestellungenLoeschen.sql.txt
    233 Bytes · Aufrufe: 62
  • AlleKundenLoeschen.sql.txt
    426 Bytes · Aufrufe: 54

Tobi_G

Neues Mitglied
17. Dezember 2019
18
5
Achso noch eine Frage:

Kann es sein dass die Extern.dll nichts anderes macht als auf die storedprocedures zuzugreifen?
 
  • Gefällt mir
Reaktionen: OuR
Ähnliche Themen
Titel Forum Antworten Datum
Neu Pickliste nach Teillieferung automatisch löschen Arbeitsabläufe in JTL-WMS / JTL-Packtisch+ 0
Kategorie lässt sich nicht löschen im Shop JTL-Wawi 1.10 2
Neu Für jeden Artikel Bild1 löschen mit der Ameise JTL-Ameise - Ideen, Lob und Kritik 3
Neu Bankverbindung in Wawi löschen ?! User helfen Usern - Fragen zu JTL-Wawi 0
Neu bitte löschen Shopify-Connector 0
JTL-Wawi App (1.11.x) – Lizenz angeblich belegt nach Löschen aller App-Registrierungen / kein Reset möglich JTL-Wawi App 3
Neu Anzeigen der Zahlungsart, die bei der Zahlung gesetzt wird Eigene Übersichten in der JTL-Wawi 10
Gelöst Bekannte Störung: Fehler "Der Inhaltstyp text/html stimmt nicht mit text/xml überein" bei der Labelerstellung JTL-ShippingLabels - Fehler und Bugs 1
Neu Praktiker: Ende der Beta-Phase User helfen Usern - Fragen zu JTL-Wawi 0
Neu JTW Wawi hängt beim Bearbeiten der Druckvorlage für Mahnungen User helfen Usern - Fragen zu JTL-Wawi 0
Lieferadresse entspricht der Rechnungsadresse - vorausgewählt Checkout Einrichtung JTL-Shop5 2
Neu Anzeige Kategorie Pfad in der Übersicht User helfen Usern - Fragen zu JTL-Wawi 1
Neu Reihenfolge der Länder (bei der Versandkostenberechnung) Betrieb / Pflege von JTL-Shop 2
Neu CSS GeoIP MwSt.-Finder 2.7.1 verhindert das Anlegen von Shop-Kundenkonten aus der Wawi Plugins für JTL-Shop 1
Prüfung der UST-ID-Prüfung schlägt fehl. (Innergemeinschaftliche Lieferung) JTL-Wawi 1.8 2
Neu Name der Versandart im Shop anzeigen Allgemeine Fragen zu JTL-Shop 36
Neu Amazon Abgleich - seit heute 12:26Uhr keine Übernahme der Bestellungen über Worker Amazon-Anbindung - Fehler und Bugs 9
Artikelbezeichnung auf der Rechnung anpassen von "Artikelname" in "Kurzbeschreibung" JTL-Wawi 1.10 4
Neu Fehler 35 XLM entspricht nicht der Konvention Plugins für JTL-Shop 4
Neu Schelle Peisänderung in der Tabellenansicht möglich? User helfen Usern - Fragen zu JTL-Wawi 2
Neu Update der Version 1.2.2.2 auf eine aktuelle Installation von JTL-Wawi 9
Neu Abbruch auf der Plattform löscht nicht mehr den Auftrag Arbeitsabläufe in JTL-Wawi 3
Neu Anzeige / Summe der Aufträge zu den Auftragspaketen in der Rechnung ?! User helfen Usern - Fragen zu JTL-Wawi 8
Neu QR Code Ausdruck der TSE Einrichtung / Updates von JTL-POS 0
Automatische Berechnung der Artikelmenge wenn Verkaufseinheit qm ist JTL-Wawi 1.10 4
Neu Der Auftrag wird nicht ausgeliefert. Der Auftrag befindet sich bereits auf einer anderen Pickliste. User helfen Usern - Fragen zu JTL-Wawi 1
Neu Bankverbindung in der Wawi ändern - Bankwechsel Installation von JTL-Wawi 2
Neu Fehler mit der Kartenzahlung Einrichtung / Updates von JTL-POS 9
Neu Artikel aus Shopware in der Wawi importieren und WMS redy machen Shopware-Connector 0
"Fehler beim Laden der Daten" in Liste Aufträge und Rechnungen JTL-Wawi 1.11 4
Neu Export der Umsätze kummuliert Allgemeine Fragen zu JTL-POS 0
Neu Der-Kurier anbindung an JTL JTL-ShippingLabels - Ideen, Lob und Kritik 3
Neu Fehler bei Artikel Filter in der Wawi JTL-Wawi - Fehler und Bugs 2
Neu Auffüllen der Tabelle Druck-/ E-Mail-/ Exportvorlagen in JTL-Wawi 3
Neu Google Merchantcenter - Download der Shoppingfeeds nicht mehr möglich Allgemeine Fragen zu JTL-Shop 6
Neu Übertragung an DATEV mit Besonderheit der Kasse (LS-POS) User helfen Usern - Fragen zu JTL-Wawi 0
Neu Einen Artikel in der POS in zwei MwSt. Varianten abbilden Allgemeine Fragen zu JTL-POS 3
Nach Update auf 1.11.6 werden die Preisänderung nicht mehr von der Wawi an Amazon übertragen JTL-Wawi 1.11 0
Wareneingänge werde nicht mehr in der Liste der Korrekturbuchungen angezeigt? JTL-Wawi 1.11 1
Bankverbindung in der xml ZugFerd ändern je nach Zahlungsart JTL-Wawi 1.11 5
Webinar: Strategien der E-Commerce-Leader - wie unterschiedliche Produktrollen Umsatz und Marge steigern Messen, Stammtische und interessante Events 0
Neu Feedbackrunde zur Umsetzung der Verpackungsverordnung (PPWR) in JTL-Wawi Umfragen rund um JTL 1
Neu Wo ist der Worker Status hin? Bei mir ist in Version 1.11.4 nicht mehr zu finden? User helfen Usern - Fragen zu JTL-Wawi 7
Neu Karussell gehen auf der Startseite nach Update auf 5.6.1 nicht mehr Betrieb / Pflege von JTL-Shop 8
Neu Eingabefeld der PayPal Kreditkartenzahlung wird bei eingeloggten Kundenkonto nicht angezeigt JTL-Shop - Fehler und Bugs 1
Neu Text unter der Rechnung User helfen Usern - Fragen zu JTL-Wawi 2
Neu Lieferschein Nummer wird auf der Rechnung wird komisch angezeigt Druck-/ E-Mail-/ Exportvorlagen in JTL-Wawi 2
Der ganze Betrieb hat keinen Zugriff auf JTL Wawi 1.11.4 meh JTL-Wawi 1.11 10
WMS Nachdruck Änderung der Versandart nicht mehr möglich JTL-Wawi 1.11 0
Neu angelegte Lieferantenbestellungen nicht sichtbar in der Übersicht Beschaffung JTL-Wawi 1.10 1

Ähnliche Themen