Seite 1 von 10
1265: Plugin: Datenschutz-Filter
Verfasst: 23.04.2009, 10:57
von Imanuel
Hallo zusammen,
Wie der Titel bereits andeutet, habe ich ein neues Plugin geschrieben, das die Aufbereitung einer Ahnendatei zur Veröffentlichung deutlich erleichert.
Der Einfachheit halber folgt ein Auszug aus der mitgelieferten TXT-Datei:
Das Datenschutz-Filter Plugin für Ahnenblatt bereinigt auf Befehl alle Personen, die den eingestellten Filterkriterien entsprechen.
Als Bereinigung stehen dabei sowohl die Löschung aller Daten bis auf den Namen als auch die komplette Löschung der Person zur Verfügung.
Das Resultat kann dann als CSV-Datei gespeichert und von Ahnenblatt wiedereingelesen werden.
Die ursprüngliche Ahnenblatt-Datei wird dabei nicht angetastet, um einen versehentlichen Datenverlust möglichst auszuschließen.
Die bearbeiteten Personen werden im Programm als Liste ausgegeben, inklusive der fraglichen Zeitangabe.
Bei allen relevanten Angaben, die nicht im Standardformat vorliegen, wird das ermittelte Datum mit angegeben.
Vorsicht: Das Plugin unterstützt kein Unicode, bei Sonderzeichen ist also besondere Vorsicht angebracht!
Für Fragen, Anregungen sowie Problemfälle stehe ich gerne zur Verfügung
Das war's soweit,
Imanuel
------------------------------------------
Die Datei steht im Downloadbereich des Portals (in der Kategorie "Plugins") zur Verfügung:
Plugin: Datenschutz-Filter
Verfasst: 23.04.2009, 12:43
von Nachfahre
Hallo Imanuel,
Herzlich Willkommen in Forum.
Was für ein grandioser Auftritt hier, mit dem ersten Eintrag sofort ein Plug-In der Gemeinschaft zur Verfügung zu stellen.
Vielen Dank.
Die Idee finde ich klasse, da man so die Datenschutz-Aufgabe an der Wurzel packen kann und folgenden Plug-Ins sich um nicht mehr mit diesem Thema beschäftigen müssen.
Den "buckligen Anhang" gleich mit raus zu löschen ist super.
Bei anderen Lösungen entstanden oftmals leidige Personeninseln.
liebe Grüße,
- Othmar
Verfasst: 23.04.2009, 19:51
von Imanuel
Hallo Othmar,
Freut mich, daß es gefällt.
Was ich noch vergessen hatte zu erwähnen:
Es werden die nicht erkannten Datumsangaben in dem Textfeld angezeigt - in meiner Datei mit 371 Personen werden alle erkennbaren Daten erkannt.
Falls das mal nicht ganz hinhauen sollte, Meldung hierher! - dann kann ich die Datumserkennung nachschleifen.
Dazu ein paar nähere Informationen:
Wenn nur eine Jahreszahl erkannt wird, gilt der 31.12. diesen Jahres.
Dabei wird bei den letzten beiden Stellen jedes eventuell gefundene "x" mit einer 9 ersetzt, so daß beispielsweise 17xx als 1799 eingelesen wird.
Wenn zudem ein Monat erkannt, wird der 28. diesen Monats angenommen (so schaut Faulheit bei Programmierern aus
)
Fragezeichen, Kleiner- bzw. Größerzeichen sowie Tilden (~) werden gelöscht.
Bei Schrägstrichen werden die beiden Teile davor und danach jeweils als eigenständige Datumsangaben eingelesen und - soweit ein Datum erkannt wird - das spätere davon angenommen.
Wenn also irgendwo "22.07.1994 / 1995" eingegeben wurde, zählt der 31.12.1995 als erkannt.
Viele Grüße,
Imanuel
Verfasst: 24.04.2009, 20:01
von Jürgen T.
Hallo Imanuel,
vielen Dank für das neue Plugin.
Ich habe allerdings folgende Fehlermeldung erhalten, als ich mit der Beispiel.ahn getestet habe:
Verfasst: 24.04.2009, 20:32
von Jürgen T.
Hallo Imanuel,
noch einmal ich.
Ein weiterer Test mit der Beispiel.ahn:
Das Datum für die Berücksichtigung der Geburtsdaten auf 50 gesetzt (geht auch mit anderen Jahresangaben) und gestartet.
=> Im Listenfenster läuft die Anzeige ständig durch.
Verfasst: 24.04.2009, 21:15
von Imanuel
Hallo Jürgen,
Probier es doch bitte mal mit dem Häkchen "Betroffene Personen komplett löschen" aus - ohne selbiges habe ich das Testen während der Entwicklung sträflich vernachlässigt, wie mir gerade klargeworden ist.
Das sollte zumindest den zweiten Fehler beheben, der ersten werde ich schon auch finden.
Ich kümmere mich in den nächsten Tage um die Probleme, bis dahin bitte ich um Geduld
Entgegen vorheriger Aussage habe ich die Probleme doch heute noch behoben; Der Ausgangsbeitrag enthält die aktuelle Version.
Der erste Fehler hat mich auf einen Amoklauf des Algorithmus' hingewiesen - es wurden zum Teil nicht datenschutzrelevante Personen gelöscht.
Ich empfehle allen Nutzer des Plugins dringend, auschließlich die aktuelle Version zu benutzen!
Viele Grüße und danke für die Hinweise,
Imanuel
Verfasst: 16.05.2009, 11:58
von Torquatus
Hallo Imanuel,
Imanuel hat geschrieben:Der Ausgangsbeitrag enthält die aktuelle Version.
Die habe ich heute heruntergeladen und installiert.
Der erste Fehler hat mich auf einen Amoklauf des Algorithmus' hingewiesen - es wurden zum Teil nicht datenschutzrelevante Personen gelöscht.
Aha
Da hat also der Computer falsch gedacht?
Aber jetzt scheint sich gar nichts mehr zu tun. Siehe unten.
Scheint ein Mengenproblem zu sein, denn mit der Beispiel.ahn klappt es.
Schön wäre es schon, wenn das Plugin funktionieren würde
Verfasst: 16.05.2009, 14:39
von Imanuel
Hallo Torquatus,
Torquatus hat geschrieben:Hallo Imanuel,
Aha
Da hat also der Computer falsch gedacht?
Die Ursache der Fehlfunktion des von mir erdachten Algorithmus ist selbstverständlich in einem Denkfehler meinerseits zu suchen
Torquatus hat geschrieben:Aber jetzt scheint sich gar nichts mehr zu tun. Siehe unten.
Scheint ein Mengenproblem zu sein, denn mit der Beispiel.ahn klappt es.
Das ist für mich ohne weiteres natürlich schwer nachzuvollziehen - ich werde mir aber mal eine Datei mit 20000 Personen basteln um den Fehler eingrenzen zu können.
Bis dahin könntest du deinem sicherlich im Übermaß vorhandenen Willen zur Mithilfe Ausdruck verschaffen, indem du das Plugin startest, um dann im Plugin-Ordner nach einer Datei namens "Datenschutz-Filter.tmp" zu suchen und diese - sofern sie existiert - mit einem beliebigen Texteditor zu öffnen um mir mitteilen zu können, ob der Inhalt dem einer beliebigen von Ahnenblatt gespeicherten CSV-Datei entspricht.
Torquatus hat geschrieben:Schön wäre es schon, wenn das Plugin funktionieren würde
Da sind wir einer Meinung.
Viele Grüße
Imanuel
Verfasst: 16.05.2009, 21:06
von Imanuel
Hallo
Bin schon wieder da.
Eine zufällig erstellte Datei mit 32.767 Personen kann das Plugin fehlerfrei einladen - siehe Screenshot.
Könntest du mal nach dem im letzten Beitrag beschriebenen Datei sehen und mir Bescheid geben?
Imanuel
PS: Ich habe nochmal einen kleinen Programmfehler behoben, der allerdings keine weiteren Folgen hatte - daher die neue Versionsnummer 1.2.1 im Ausgangsbeitrag.
Verfasst: 17.05.2009, 09:51
von Torquatus
Hallo Imanuel,
Imanuel hat geschrieben:Eine zufällig erstellte Datei mit 32.767 Personen kann das Plugin fehlerfrei einladen - siehe Screenshot.
"Einladen" ist auch nicht mein Problem. "Ausführen" nach dem Klick auf "Löschen" funktioniert nicht; da kommr sofort (ohne Zeitverzögerung) die Meldung "0 Personen gelöscht".
Anmerkung: Löschen ist nicht gerade ein Begriff, auf den User gerne klicken; wie wäre es mit "Datenschutz anwenden" o.ä.?
Könntest du mal nach dem im letzten Beitrag beschriebenen Datei sehen und mir Bescheid geben?
Die vom Plugin "Datenschutz-Filter" erzeugte Datei "Datenschutz-Filter.tmp" ist 100% inhaltsidentisch mit einer soeben mit Ahnenblatt erzeugten "'Datei.csv".
Wenn ich im Plugin auf "Speichern" klicke, wird eine Datei mit 5 Bytes Inhalt (Hexa: FF FE 22 0D 0A) erzeugt.
PS: Ich habe nochmal einen kleinen Programmfehler behoben, der allerdings keine weiteren Folgen hatte - daher die neue Versionsnummer 1.2.1 im Ausgangsbeitrag.
Trotzdem habe ich auch mit dieser Version getestet. Das Ergebnis ist identisch mit Vers. 1.2.0.
Übrigens: Andere Plugin, wie "Insel-Finder", die auch ins Plugin-Verzeichnis von Ahnenblatt schreiben, laufen bei mir problemlos.
Verfasst: 17.05.2009, 20:56
von Mic
Hallo Imanuel,
ich bin brennend an deinem Datenschutz-Plugin interessiert, aber wenn ich das Tool starten will, heißt es "Datei C:\Program Files\Ahnenblatt\Plugins\Datenschutz-Filter.tmp lässt sich nicht öffnen".
Sie existiert auch nicht im Plugin-Ordner. Ich habe die heruntergeladenen drei Datenschutz-Dateien dort hinein kopiert.
Habe ich etwas falsch gemacht??
Mic
Verfasst: 17.05.2009, 21:37
von Imanuel
Hallo Torquatus,
Auf dem Screenshot, den du hochgeladen hast, steht in der oberen linken Ecke des Plugins "0 Personen" - das heißt, das Plugin kann deine Datei garnicht erst korrekt einladen.
Auf der Inhalt der gespeicherten Datei spricht dafür, weil das Plugin über eine Standardkomponente eine Textdatei speichert - wenn keine solche dabei herauskommt, muß vorher schon etwas schiefgelaufen sein.
Den Fehler habe ich aber - aller Wahrscheinlichkeit nach - gerade gefunden; Meine anfängliche Vermutung, daß die Datei in UTF-8 gespeichert worden ist (womit das Plugin nicht umgehen kann), scheint zielführen gewesen zu sein.
Wenn ich nämlich bei meinen 443 Personen Sonderzeichen mit aufnehme, mag das Plugin auch niemanden mehr einladen.
Das habe ich jetzt insofert korrigiert, als die Datenübergabe jetzt immer mittels ANSI durchgeführt wird.
Daß das nicht die beste Lösung ist, ist mir klar - aber vorerst ist das besser als nichts.
So dürften deine Personen - bis auf ihre Sonderzeichen - jetzt eingeladen werden.
Gleichzeitig ist mir beschämenderweise aufgefallen, daß noch Testfunktionen mitgelaufen sind - die Dateien
vorher.txt und
nachher.txt können jederzeit gelöscht werden und erscheinen ab 1.2.2 nicht neu
Und Hallo auch Mic,
Dein Problem kann ich noch nicht genau einordnen.
Du hast die drei Dateien in den Plugin-Ordner entpackt, dann aus Ahnenblatt heraus über den Menüpunkt "Tools" den Datenschutz-Filter gestartet; Und dabei besagte Meldung erhalten?
Kannst du das ganze bitte nochmal machen, und dann im Plugin-Ordner nochmal nach der Datei schauen, aber - und das ist wichtig - dies während das Plugin noch läuft, weil eine eventuell vorhandene "Datenschutz-Filter.tmp" beim Beenden des Plugins gelöscht wird.
Bis dann,
Imanuel
Verfasst: 17.05.2009, 21:49
von Mic
Hallo Imanuel,
wie du es im ersten Absatz beschreibst, ist es.
Die Fehlermeldung erscheint sofort, wenn ich das Tool starten will - ich habe also keine Zeit, nachzusehen. Vielleicht liegt es daran, dass ich Vista als Betriebssystem habe und eventuelle User-Ordner anders heißen? Das war das Problem beim letzten Plugin, das Jürgen mir geschrieben hat, für eine Ansi-Gedcom-Datei.
Hmm.. Program Files heißt bei mir "Programme" - kann es daran liegen?
Mic
Verfasst: 17.05.2009, 22:18
von Imanuel
Hallo Mic,
Ich selbst benutze Windows XP, kann dein Problem auf meinem Computer daher leider nicht nachstellen.
Allerdings denke ich, daß ich das Plugin mittels der angehängten ABP-Datei Vista-kompatibel gemacht habe - ersetze mal die in deinem Plugin-Ordner vorhandene Datei mit dieser hier, dann sollte es gehen.
Wenn doch nicht, dann speichere deine Datei als CSV-Datei, nenne sie "Datenschutz-Filter.tmp" und kopiere sie zusammen mit der Datei "Datenschutz.exe" in einen beliebigen Ordner.
Die "Datenschutz.ini" kannst du um deiner Einstellungen Willen auch mitnehmen.
Die EXE-Datei kannst du dann einfach per Doppelklick starten, und dann sollte alles funktionieren - es sei denn, du hast dann auch "0 Personen" im Plugin.
In diesem Fall schaue mal nach einem erfolglosen Start per Ahnenblatt-Menü im temporären Verzeichnis nach dem dem Ordner "ahnen_temp" und dort nach der Datei "Datenschutz-Filter.tmp".
Damit dann gleiches Spiel wie mit der manuell gespeicherten CSV-Datei.
Und wenn es dann immer noch nicht funktioniert, helfe ich gerne später nochmal
Gibt es eigentlich irgendwo eine Dokumentation der ABP-Dateien?
Ich habe am Anfang des Datenschutz-Entwicklung mal danach gesucht, aber nichts gefunden.
Viele Grüße,
Imanuel