Verwiesen an Support Wareneingangsarchiv und gelöschte Artikel - Ein Minenfeld...

Status
Es sind keine weiteren Antworten möglich.

gutberle

Sehr aktives Mitglied
29. März 2011
1.292
395
Bei der Suche nach Gründen für ein anderes Problem bin ich zufällig darauf gestossen, dass eine Unzahl von Einträgen in meinem Wareneingansarchiv zwar per Datum vermerkt sind, aber keinen Eintrag zu Artikeln oder Lieferanten haben.

Zuerst dachte ich, hier wäre etwas wirklich, wirklich faul, dann habe ich mir die zugehörigen Tabellen aber in der Datenbank angeschaut und da wurde mir klar, was hier los ist...

Es handelt sich hierbei schlicht um alle Wareneingangsbewegungen zu Artikeln, die irgendwann später gelöscht worden sind. Das klingt irgendwie logisch und nein, eigentlich ist das auch kein Bug, aber das Ganze ist trotzdem ein echtes Minenfeld, denn wer denkt schon daran, dass er/sie durch das heutige Löschen eines jahrelang verkauften Artikels auch rückwirkend ALLE Spuren dieses Artikels vernichtet.

Alles was Artikel angeht läuft in der Wawi in der Tabelle tArtikel zusammen und wenn man einen Artikel erst Inaktiv macht und dann über die DB-Verwaltung löscht, wird der Eintrag zu diesem Artikel aus Tabelle tArtikel physikalisch gelöscht. Alle Referenzen auf diesen Artikel in allen historischen Angeboten, Aufträgen, Rechnungen, etc. laufen aber über die interne Artikelnummer und die Tabelle tArtikel. Was das bedeutet kann sich jeder selbst ausmalen.

Wie gesagt, ein Bug ist das per se nicht, es erzeugt aber einen derart "bug-artigen" Zustand, dass ich das Problem hier dringend zur Sprache bringen wollte und bin auf Eure Einschätzungen gespannt...
 
Zuletzt bearbeitet:

MichaelH

Sehr aktives Mitglied
17. November 2008
13.827
1.545
Na ja, an sich müsste die WAWI den Artikel prüfen ob es Bewegungen gab und wenn ja, dann darf ein Löschen gar nicht möglich sein ... gilt an sich für alle Stammdaten und Konto-Arten, Artikelkonto, Kundenkonto ... ich würde das schon eher als "Bug" bezeichnen, als ein nettes Feature.
 

gutberle

Sehr aktives Mitglied
29. März 2011
1.292
395
Worauf das aber hinausläuft, ist so eine Art "zustandsbasiertes Arbeiten", bei dem jede Aktion (Angebot, Auftrag...) mit dem zu ihrem Zeitpunkt aktuellen Zustand der Wawi fixiert wird. Das ist natürlich wünschenswert, widerspricht aber dem Grundprinzip relationaler Datenbanken, denn immer dann, wenn ich nicht alle Daten explizit in meinen Beleg aufnehme, sondern per Referenz und dynamisch aus anderen Tabellen hole, erzeugt jede Änderung am referenzierten Eintrag in der anderen Tabelle in der Zukunft auch einen geänderten "historischen" Zustand meines Angebots.

@MichaelH: Ich weiß, dass Du das alles weißt, aber ich schreib's noch mal für die, denen das noch nicht so klar ist: Stellt Euch einfach ein Angebot im Jahr 2010 vor, das an "Hänschen Klein" ging. Inzwischen will der aber "Hans Klein" genannt werden. Ruft Ihr Euer Angebot aus 2010 noch einmal auf, dann ist es an "Hans Klein" adressiert, hoppla. Und wenn sich in 2016 die Spezifikationen des Artikels, den Ihr "Hänschen Klein" in 2010 angeboten habt, ändert und Ihr dann das Angebot aus 2010 aufruft, respektive noch einmal druckt, etc., dann ... richtig, lautet es auf die neuen Spezifikationen des Artikels, nochmal hoppla!

Wir hatten dieses Thema hier im Forum ja schon mehrfach am Wickel und ich hatte für dieses echte Dilemma ja hier als einzige wirklich Lösung schon die interne Speicherung des "zustandsbasierten Outputs" in einem Format wie PDF/A 3 und mit Zugferd Daten für die leichte Wawi-interne Extraktion der Zustandsdaten vorgeschlagen und irgendwo hier im Forum habe ich inzwischen gelesen, dass sich auch JTL gegenüber diesen Ideen öffnet.

Worauf ich aber hinaus will, ist keine DMS- sondern eine Archivfunktion und hier liegt vielleicht eine Lösung auch für die Artikel. Wenn Artikel, die "bespielt" worden sind, nicht mehr gelöscht, sondern nur noch archiviert werden können, also weiterhin existieren, aber anders als inaktive Artikel auch nicht wieder reaktiviert werden können, sondern nur noch die Historie zugänglich machen, dann wäre schon viel gewonnen.

Und ja, Du hast natürlich recht, das gleiche gilt für alle Kontenarten. Wenn also alle Stammdaten zwar geändert werden können, aber nach der ersten Nutzung nur archiviert und nicht mehr gelöscht werden können und wenn gleichzeitig alle Aktivitäten/Belege, die sie verwenden, mit dem speichern/drucken/versenden (schwierig...) in einer für die Wawi als gekapselte Mini-Datenbank zugänglichen (> PDF/A3 und Zugferd) Form archiviert werden, dann sind wir ein gutes Stück weiter.
 

MichaelH

Sehr aktives Mitglied
17. November 2008
13.827
1.545
Jein, es gibt Stammdaten, Konten und Bewegungsdaten.
Die Bewegungsdaten nehmen die Infos aus den Stammdaten/Konten mit in ihre Tabellen.
Eine rein relationale Datenbank ist und war noch nie sinnvoll, es gibt auch so was wie geplante und notwendige Redundanz - und sei es sogar aus Gründen der Performance.

Daher ist es kein Problem und keine Änderung im Angebot von 2010 zu finden, wenn dies korrekt programmiert ist.
Ist das Angebot noch "änderbar", dann muss ich mit einer Änderung durch geänderte Stammdaten rechnen, ansonsten nicht.

Die alte WAWI ist (genial) trivial programmiert und hat eben entsprechende Folgeproblemchen die man recht einfach verhindern könnte.
Da es nun ja die neue WAWI gibt und irgendwann auch alles neu sein wird, wird sich das Problem von selbst erledigen ... ;) ... aber 100% relational wird sie hoffentlich nicht, es sei denn die Stammdaten werden datumsrelevant gespeichert (Zeitstempel) und wäre auch nur etwas für Leute (ziemlich) frisch von der Uni die nach 3 Jahren gerne graue Haare in ihrer Lockenpracht haben wollen, weil die Komplexität ihre Fähigkeiten überschreitet.
 

gutberle

Sehr aktives Mitglied
29. März 2011
1.292
395
In der Theorie hast Du natürlich recht, aber leider macht die Wawi hier die Theorie nicht mit, denn auch wenn zwar sie keine voll-relationale Datenbank implementiert, ist die Menge an Informationen, die aus den Stamm- und Kontendaten physikalisch mit in die Bewegungsdaten übernommen wird, mehr als überschaubar, eigentlich eher verschwindend gering.

Letztlich sind es nur die Felder, die Du z.B. bei einem Angebot direkt ändern kannst, die auch dort, also in der Tabelle tbestellung gespeichert werden oder wie bei den Liefer- und Rechnungsadressen in eigenen Tabellen (tlieferadresse, trechnungsadresse). Alles andere wird über Relationen dynamisch aus Stamm- und Kontendaten gezogen und zwar immer mit dem dortigen aktuellen Zustand zum Zeitpunkt des Abrufs.

Die Artikelbezeichnung wird zum Beispiel direkt im Angebot selbst abgelegt und überlebt deshalb auch Änderungen am Artikel, falls Du aber eine Kurz- oder Langbezeichnung in Deinen Angeboten ausgibst, dann folgt die der Evolution Deiner Artikel und deshalb stimmt das, was ich oben zum Zustand des Angebots aus 2010 nach einer Artikeländerung in 2015 gesagt habe, eben leider doch.

Manchmal ist das nur ärgerlich, aber wenn sich wesentliche Merkmale eines Artikels über die Jahre ändern, das Herstellerland z.B. von USA nach China wandert oder sich die TARIC in 2017 ändert, dann ist es auch rechtlich echt hakelig, dass eine erneute Druck- oder Speichern-Ausgabe des alten Angebots aus 2010 eine TARIC Nummer ausgibt, die erst 7 Jahre später gültig ist und der Artikel ganz plötzlich völlig andere "zugesicherte Eigenschaften" hat, als zum Zeipunkt des Angebots - bei einem Auftrag auch als zum Zeitpunkt seines Verkaufs! Das ist gar nicht gut...

Und nein, die Option "änderbar" in den Wawi-Einstellungen hat leider keinen Einfluß darauf, weil die Dich nur vor den Änderungen direkt im Angebot/Auftrag und damit nur vor Änderungen an den im Angebot/Auftrag physikalisch abgelegten Daten schützt. Alle Änderungen an den externen Referenzen/Relationen bekommt diese Option überhaupt nicht mit. Und das Ganze hat leider auch nichts mit der Programmierung der Vorlage zu tun, siehe auch die weitere Diskussion zu diesem Thema hier, inklusive der Tatsache, dass alle alten Angebote, Aufträge, etc. - eigentlich alles - natürlich auch die Evolution von List & Label und Deiner L&L Vorlagen mitmacht.

Fazit ist, dass die einzige Lösung, um eine wirkliche Konstanz der Daten zu erzeugen, tatsächlich die Generierung von Archiv-Snapshots wie mit der von mir vorgeschlagenen internen Archivierung in Form von PDF/A3 mit Zugferd Daten wäre.

Aber um jetzt mal den Bogen wieder zurück zum Wareneingangsarchiv zu machen, auch dort wird natürlich heftig mit Relationen gearbeitet, siehe das eigentliche Problem dieses Threads, das ja genau dadurch entsteht, dass eine Relation ins Leere läuft. Das betrifft aber eben auch dort nicht nur die Artikel, sondern z.B. auch die Lieferanten, usw. Löscht man also Heute einen Lieferanten, fehlt er im Wareneingangsarchiv in alle Vergangenheit überall dort, wo er geliefert hat... - Das alles schreit förmlich danach, wie oben vorgeschlagen, für jegliche Kontendaten nach deren erster Benutzung keine Löschung, sondern nur noch eine Archivierung zu erlauben.
 

KevinK

Mitglied
1. April 2016
1.549
121
Hallo @gutberle,

inzwischen tritt das von Dir angesprochene Verhalten ja so nicht mehr in der aktuellen Version auf. Ich verstehe aber, worauf Du hinaus möchtest.

Das Thema "Löschen von Stammdaten - Auswirkungen auf referenzierte Daten" steht auf unserer ToDo. Es gibt hier einige Stellen, die wir prüfen müssen.

Bitte noch etwas Geduld :)
 
Status
Es sind keine weiteren Antworten möglich.
Ähnliche Themen
Titel Forum Antworten Datum
Farbe zwischen Header und Footer ändern Einrichtung JTL-Shop5 0
Neu WMS Vorteile und Nachteile JTL-WMS / JTL-Packtisch+ - Ideen, Lob und Kritik 3
Neu Mehrsprachiger Shop-Aufbau: .de und .nl Domain - worauf muss man achten? Allgemeine Fragen zu JTL-Shop 0
Neu Wie kann ich mit der Wawi Ebay Rechnungen erstellen und nach ebay hochladen? eBay-Anbindung - Fehler und Bugs 3
Ameisen-Export Buchungsdaten (Rechnungen) - Mahndatum und Mahnstufe fehlen JTL-Ameise - Fehler und Bugs 0
Neu Workflow - Stücklisten im Auftrag abfragen und korrekt in einer Mail auflisten User helfen Usern - Fragen zu JTL-Wawi 1
Neu JTL 5, Footerdesign, Boxabstände und Ausrichtung korrigieren Gelöste Themen in diesem Bereich 5
Neu Firmen- und E-Mail Einstellungen - Text hevorheben (fett) und Anordnung in Vorlage anpassen Druck-/ E-Mail-/ Exportvorlagen in JTL-Wawi 18
4K Monitor und Skalierung JTL-Wawi 1.8 2
Neu Updatepolitik und Testen von Software - aktuell 5.2.4 Installation / Updates von JTL-Shop 8
Kunden und Artiekl ausblenden JTL-Wawi App 1
Neu Es werden nur jpg Bilder angezeigt und keine webP Gelöste Themen in diesem Bereich 3
Neu Auftragszahlung über Kasse, Auftrag wird nicht als "Verpackt und Versendet" markiert JTL-POS - Fehler und Bugs 1
Gelöst Kassenschublade und Drucker bei iMin D4 Pro JTL-POS - Fragen zu Hardware 3
Neu eBay zusammenfassen von Aufträgen und Buchhaltung User helfen Usern - Fragen zu JTL-Wawi 0
Neu Selbstabholer und eBay User helfen Usern - Fragen zu JTL-Wawi 6
Workflows: Versandgruppen finden und ansprechen JTL-Wawi 1.8 0
Auswertung POS-Umsätze nach Wochentag und Tageszeit JTL-Wawi 1.7 0
Neu Fehler bei Sprach- und Währungsumstellung Allgemeine Fragen zu JTL-Shop 0
Neu Verkaufspreis Differenz Shop und Wawi JTL-Shop - Fehler und Bugs 4
Neu Mehrere Sprachen aktivieren und verschiede Preise pro Land erstellen Betrieb / Pflege von JTL-Shop 1
Neu Paypal Plugin Version 1.2.0 läuft und 1.4.0. läuft nicht auf derselben Umgebung Plugins für JTL-Shop 0
Neu Was steckt hinter der Zahl von 53 Bildern auf Ebay bei Variationsartikeln (und einer unsinnigen Fehlermeldung der Wawi)? JTL-Wawi - Fehler und Bugs 2
Neu Filtereinstellungen: wenn Sonderpreis bei Vater- oder Kindartikeln, Anzeige von Vater- UND Kindartikeln User helfen Usern - Fragen zu JTL-Wawi 5
Neu Sprachvariablen nicht in korrekter Groß- und Kleinschreibung JTL-Shop - Fehler und Bugs 4
Neu Gewicht auf Rechnung (Artikelgewicht und Zusatzgewicht) Druck-/ E-Mail-/ Exportvorlagen in JTL-Wawi 1
Neu Neues Plugin: Google Translate / Übersetzer (DSGVO-konform und weitere Features) Plugins für JTL-Shop 2
Neu Workflow Aktion E-Mail senden kann nicht Plain und HTML Email zusammen versenden Arbeitsabläufe in JTL-Wawi 6
Neu JTL Shopify Connector und Billbee frage Shopify-Connector 0
Neu Neues Plugin: Instagram-Feed Portlet (Als Galerie- oder Slideransicht und weitere Features) + 3x kostenlose Lizenzen Plugins für JTL-Shop 4
In Bearbeitung Startschwierigkeiten Scanner und Bon Drucker Allgemeine Fragen zu JTL-POS 3
Neu JTL Worker 2.0 und tinetbestellung Technische Fragen zu den JTL-Connectoren 0
Neu Position Versandkosten und Versandkostenname in PositionTable ausblenden - neuen Vorlagen. Druck-/ E-Mail-/ Exportvorlagen in JTL-Wawi 3
Neu Liste aller Namespaces und dessen Aufgabe Allgemeine Fragen zu JTL-Shop 0
Kundenattribute aus Shop übernehmen und aus Wawi zurück an Shop übermitteln Einrichtung JTL-Shop5 1
Neu Warenkorb Hinweise bei Bestandsänderung und Preisänderung Allgemeine Fragen zu JTL-Shop 2
In Bearbeitung Artikel über csv-Datei bearbeiten und importieren Allgemeine Fragen zu JTL-POS 3
Verbindung zu Kundencenter geht verloren und Lizenz muss erneut abgteglichen werden JTL-Wawi 1.8 16
Landingpage Header und Footer erstellen zwecks Vorbestellung Einrichtung JTL-Shop5 0
Neu klare Warnung vor den Bausteinen und der PDF in Vorlagen User helfen Usern - Fragen zu JTL-Wawi 4
Neu JTL erstellt falsche Rechnungskorrekturen für Amazon.co.uk Aufträge und verweigert den Support Amazon-Anbindung - Fehler und Bugs 5
Neu Und ewig grüsst das Murmeltier. "The EntityManager is closed" Shopware-Connector 0
Alternativpositionen und gültig von bis JTL-Wawi 1.8 0
Debitorennummern für bestehende und neue Kunden anlegen JTL-Wawi 1.8 2
In Diskussion Bondrucker - im Allgemeinen und Speziellen (Metapace T 25) JTL-POS - Fragen zu Hardware 4
Neu Eigener (Home-) Server mit Windows UND Linux Starten mit JTL: Projektabwicklung & Migration 23
Neu Microsoft Remote Desktop Fehler Cloutapp Desktop und Lauscher JTL-Wawi - Fehler und Bugs 3
Auftrag und Rechnung Ausgabe funktioniert nicht Client JTL 1.8.10.0 JTL-Wawi 1.8 9
Zahlungsarten und Versandarten ERROR 500 Einrichtung JTL-Shop5 8
Gelöst Hardware für häufige Konstellationen mit USB und Swissbit TSE-Problem ab Android 11 JTL-POS - Fragen zu Hardware 5

Ähnliche Themen