Funktionswunsch: Gruppe mit intelligenter Funktion

Auch für mich klingt das wahnsinnig kompliziert - was natürlich drauf hindeutet, dass ich nicht verstehe um was es geht. Ich drehe das was du geschrieben hast um, und zeige auf, wie ich vorgehen würde. Das hilft dir vielleicht meine Denke zu verstehen - und so besser die Unterschiede zu deinen Bedürfnissen aufzuzeigen:

Ich habe eine Rechnung von fax.de. Diese stecke ich in meinen (Unter-) Ordner Rechnungen. Ich kennzeichne sie händisch (oder automatisiert) mit einem Tag als Steuerrelevant. Alles andere mache ich mit intelligenten Gruppen - d.h. wenn es mir wichtig ist, alle Rechnungen von fax.de in einer Gruppe zu haben, lege ich eine intelligente Gruppe an, die nach fax.de, dem Wort Rechnung, der IBAN, meiner Kundennummer o.ä. sucht, um zuverlässig diese Art von Rechnung anzuzeigen. Brauche ich nun eine intelligente Gruppe, die Rechnungen aus dem November 2021 anzeigt, lege ich eine an, die alle Rechnungen mit Datum 01.11.2021 bis 30.11.2021 anzeigt. Weil die Rechnungen alle in einer Gruppe liegen, können sich hieraus zig intelligente Gruppen bedienen. So bin ich auch zukunftssicher - ich kann mich jederzeit aus dieser einen Datenquelle bedienen und neue “Suchen” (d.h. intelligente Gruppen) anlegen.

Edit:

Das verlangt fast nach weiteren Angaben, vor allem in Kombination mit deiner Aussage, dass die AI nicht funktioniert. Das klingt danach, als wären die Dokumente nicht mit einer korrekten Textschicht hinterlegt.

Mein Post habe ich geschrieben während du den Post unmittelbar darüber geschrieben hast; ich glaube die Antwort auf meine Frage ist “Geschmackssache”. Es bleibt für mich das Gefühl, dass du das Potenzial von DT hier nicht nutzt, sondern viel mehr ein digitales Abbild einer analogen Welt schaffst.

So, aber dieser Thread fing mit einem Wunsch deinerseits an - davon möchte ich nicht ablenken :slight_smile: Danke, dass du dir die Zeit genommen hast, deinen Weg und so deine Beweggründe zu erklären.

1 Like

Das Skript kann ich interessanter Weise gar nicht in DT3 finden, obwohl ich dachte alle Skripte installiert zu haben.
Es würde mir, wenn ich den Namen richtig verstehe, aber auch nicht weiterhelfen, da meine Dokumente zum größten Teil beim Scannen alle als Namen das Scanndatum erhalten, und eine Unterscheidung danach eben nicht sinnvoll möglich ist.
Ich habe auch schon damit experimentiert, den Namen des Dokumentes aus dem Inhalt automatisch erstellen zu lassen, aber das funktioniert leider nur bei einem kleinen Teil der hier vorliegenden Dokumente halbwegs vernünftig, und der zusätzliche Aufwand, den Namen dann wieder zu korrigieren, ist mir ehrlich gesagt zu hoch.

Wenn das systematisch genauso passiert, würde ich das mit einem Script erledigen lassen, das von einer smart rule ausgeführt wird.

Ist natürlich dein Bier, aber Rechnungen aus 30 Jahren, bei einer Aufbewahrungspflicht von 10? Es gibt sicherlich Dokumente, die man länger als 10 Jahre braucht, aber das sind doch eher wenige.

Dann würde ich in der Regel, die das OCR macht, gleich den Namen richtig vergeben. Ggf in Zusammenarbeit mit einem Script.

Ich habe nie behauptet, kein komplizierter Mensch zu sein… :innocent:
Nein, im Ernst, auch Du packst die Rechnung in einen Unterordner, und taggst sie anschließend.
Ich würde gerne im Eingang die Rechnung taggen, und das verschieben in den Unterordner der Automatik überlassen.
Beim taggen ist es vom Aufwand her eigentlich Wurscht, ob ich hier nur ein Tag erfasse, oder 5. Ich schreibe 10-Finger-Blind, das geht sehr schnell, das manuelle verschieben hingegen dauert immer recht lange im Vergleich dazu.
Und wie legst Du die intelligente Gruppe mit dem Rechnungsdatum an?
Dazu muss ja entweder Deine Rechnung das Datum als Tag haben, oder im Dateinamen so benannt sein.
Alternative ist eine Suche, und da bekomme ich dann regelmäßig eben auch andere Dokumente (z.B. Kontoauszüge) mit angezeigt, die dann in der intelligenten Gruppe nichts zu suchen haben.

Zur Tante Edit:
Ich habe regelmäßig das Problem, dass DT3 Dokumente nicht findet, und ich den Suchindex neu aufbauen muss. Woran das liegt, kann ich nicht sagen.
Die Dokumente sind alle als PDF+Text hinterlegt, das OCR mache ich zumeist in DT3Pro direkt.
Und ja, ich nutze von der AI die in DT3 vorhanden sein soll, zumindest bewusst, nichts.
Immer wenn ich versuche, nach Anleitung, eine Funktion hiervon sinnvoll zu nutzen, stoße ich an Grenzen, und bekomme Resultate, die eben für mich nicht funktionieren. Das fängt schon bei so einfache Sachen an, wie dem Suchergebnis nach “Relevanz”. Das was ich dann wirklich suche, liegt in der Mehrzahl der Fälle irgendwo mitten drinnen, und hat eine relativ geringe Relevanz von DT3 zugewiesen bekommen. Warum? Keine Ahnung!?
Ich bin überzeugt davon, dass es auch andere, und mit Sicherheit sogar wesentlich bessere Wege gibt, mit Dokumenten in DT3 umzugehen, aber die stehen mir (im Moment) leider nicht zur Verfügung.

Eine Funktion, wie ich sie mir im Ausgangsbeitrag gewünscht habe, würde mir die Arbeit wesentlich erleichtern, da ich dann nur noch taggen müsste, und nicht umständlich zu jedem Tag eine eigene Regel schreiben müsste, die dann ebenfalls in einem völlig unübersichtlichen Haufen an Regeln irgendwo verschwindet, um im Zweifelsfall dann sogar mehrfach geschrieben wird, weil ich mich nicht erinnere, dies schon mal gemacht zu haben.

Wie müsste dieses Skript den aussehen, dass sämtliche Tags, und Gruppen beinhaltet, und eben auch für neue Tags funktionieren würde?

Ich habe darüber hinaus nie behauptet, dass es alles Rechnungen sind, oder? :wink:
Unabhängig davon habe ich aber die Erfahrung gemacht, dass es nicht nur immer mal wieder ein altes Dokument gibt, dass man dann eventuell doch noch braucht (habe erst kürzlich wegen einer solchen Konstellation einen Rechtsstreit mit rund 100.000€ Streitwert gewonnen, weil ich ein 15 Jahre altes Dokument vorlegen konnte, von dem der Gegner gehofft hatte, dass es nicht mehr existiert), sondern der Aufwand diese alten Dokumente raus zu sortieren, und zu löschen, steht im Prinzip auch in keiner Relation zu den heutigen Kosten von Speicherplatz.

Und die Vergabe eines richtigen, sinnvollen Namens beim OCR scheitert bei mir leider daran, dass dies hier nur für einen kleinen Teil meiner Dokumente sinnvoll funktioniert. Bei allen anderen müsste ich mühsam nacharbeiten, was überhaupt keinen Sinn macht, zumal es aus meiner Sicht relativ sinnfrei ist, sich einerseits bei der Namensgebung zu verbiegen, um einen “sprechenden Namen” zu vergeben, wenn ich andererseits das Ganze auch über eine sinnvolle Arbeit mit Tags und Gruppen lösen kann.

Siehe

Ich würde das so umbauen, dass das Objekt am Anfang nur die Zuordnung zwischen Tags und Datenbank/Gruppe definiert. Das ist ein bisschen Schreibarbeit am Anfang, aber der Code selbst ist trivial. Und neue Tags muss man manuell hinzufügen.
Alternativ könnte das Script auch für die Tags eines Datensatzes die richtige Gruppe suchen. Das funktioniert aber vermutlich nur, wenn die Zuordnungen eineindeutig (aka bijektiv) sind.

Manuelles Vergeben von Tags für 100000 Dokumente ist nicht unbedingt kostenfrei. Aber wie gesagt: dein Bier.

Alleine die Tatsache, dass ich eben jedes Tag dem Skript hinzufügen müsste, disqualifiziert diese Option leider völlig, zumal ich vom fachlichen her nicht in der Lage wäre, es umzuschreiben.
Was bringt es mir den für einen Vorteil, dann irgendwann ein Monster von Skript mit hunderten oder tausenden von Tags zu haben, das weder noch überschaubar ist, noch (vermutlich) in einer vertretbaren Zeit abgearbeitet werden kann.
Ich sehe so schon häufig genug Zini (Spaß am Dienstag – Wikipedia) in DT3, das muss ich nicht auch noch durch solche Skripte verschlimmern.

Und ja, die Dokumente zu taggen ist nicht kostenfrei, weil es meine Arbeitszeit kostet, aber es geht wesentlich schneller, einfach alle Dokumente quasi stumpfsinnig (mache ich jeden Tag 20Min. vor dem zu Bett gehen mit müdem Kopp) zu taggen, als vorher noch bei jedem Dokument überlegen zu müssen, was es nun ist, ob es weg kann, und wenn ja, nach welcher Zeit (es gilt nämlich bei weitem nicht für alles eine 10 Jahres Frist, das wäre nun wirklich zu einfach), und ob diese dann auch schon abgelaufen ist, und es nicht möglicherweise eben doch noch mal gebraucht wird!

Ne - Dokumente erhalten bei mir beim Import bereits automatisch das richtige Erstellungsdatum (entweder über eine generische intelligente Regel, oder für - wenige einzelne - Dokumente bei denen das nicht funktioniert mittels einer eigenen Regel). Das erleichtert mir das Sortieren, Suchen usw. und ist für mich essentiell. Jedes Dokument hat also bei mir dasselbe Erstellungsdatum im Dateisystem wie auf dem Dokument selbst.

Das ist natürlich eine Frage der Suche/intelligenten Gruppe - will sagen, Kontoauszüge kann ich locker ausschließen indem ich ein Begriff aus dem Kontoauszug als negative Qualifizierung verwende.

Ohne Zweifel, das alles zu erstellen kostet Zeit - für mich aber eine lohnende Investition, weil inzwischen das meiste voll automatisch abläuft. Was nicht automatisch geht (vor allem Dokumente die Einzelstücke sind) funktioniert mit der AI.

Ich überlege, ob das gescriptet werden kann - also verschiebe Datei mit Tag “xyz” in die Gruppe mit demselben Tag…

Kann es. Aber der OP hält das für zu umständlich und langsam.

@chrillek
Zusatz:
Ich habe mir gerade Dein Skript mal angesehen.
Sorry, ich kann verstehen dass es Leute gibt, denen so was Spaß macht, und die damit arbeiten wollen.
Du hast hier, wenn ich das richtig verstehe, alleine 37 Zeilen Code geschrieben, um eine simple Telefonrechnung zu verarbeiten.
Kommt die Rechnung von jemand anderem, und sieht daher anders aus, bzw. enthält andere Informationen, oder muss woanders hin, schreibst Du wieder so viel, oder muss das kopierte Anpassen!

Sorry, aber das ist ein Hobby, aber nichts was in irgend einer Weise in der Arbeitswelt eine Relevanz hat!

Im Endeffekt läuft es aber doch auch bei Dir darauf hinaus, dass entweder Du Glück hast, und die “automatisierte” Namensvergabe funktioniert, oder Du bist wieder bei der Handarbeit.
Ich habe das vor einiger Zeit mal bei mir getestet, nachdem mir die sprechenden Namen auch von verschiedener Seite empfohlen wurden, und es funktioniert mit meinen Dokumente eben zu einem erheblichen Teil nicht, z.B. weil im relevanten Bereich verschiedene Daten sind, bestimmte Informationen bei dem einen Rechnungsersteller an der einen, bei einem andern an einer anderen Stelle stehen, und ich im Übrigen eben auch viele Dokumente habe, bei denen es sich überhaupt nicht um Rechnungen handelt, sondern um irgendwelche Schreiben oder was weiß ich was.
Die Handarbeit, die dabei entsteht, ist enorm.
Und wenn ich dann doch für sehr viele Dokumente eigene Regeln bereits beim Benennen benötige, dann sind wir eben wieder da, wo ich eigentlich von weg will, nämlich hier irgendwann mit hunderten von Regeln zu sitzen, die kein Mensch mehr überblickt, und die im Zweifel bei jeder Änderung an der Organisation auch noch mühsam angepasst werden müssen.
Ich habe z.B. am Anfang die Regeln so geschrieben, das sie nur stündlich ausgeführt werden, damit ich Zeit habe, das Dokument zu bearbeiten, und es mir nicht zwischendurch sozusagen verschoben wird.
Ich habe dann festgestellt, dass es 5 Minuten auch getan hätten, und darf jetzt manuell alle Regel überprüfen, und anpassen, da ich von “aussen” nicht sehen kann, ob es eine “alte” Regel ist, oder nicht.

Und ein Skript wäre toll!
Aber dann eines, das universell funktioniert, erkennt welches Tag zu welcher Gruppe gehört, und niemals manuell mit neuen Tags oder Gruppen “gefüttert” werden muss.
So 10 Zeilen wären super… :wink:

Oder aber ein kleines Kästchen in den “Informationen” einer Gruppe, in das ich einfach ein Tag rein setzen kann, und dann die “AI” von DT3 den Rest übernimmt, nachdem ich das Tagging im Eingang beendet habe… :grinning:
Oder Alternativ die Möglichkeit, die Inhalte von Intelligenten Gruppen tatsächlich in diese Gruppen zu verschieben…!

1 Like

Wow. Du schaffst es mit wenigen Worten, dich in die Herzen zu schreiben. Klar, wenn man täglich den Telefonanbieter wechselt, dann hilft einem sowas nicht weiter. Aber was will man dann mit DEVONthink?

Du verstehst es nicht richtig. Aber Du darfst das gerne glauben.

Nein. Aber auch das darfst Du gerne glauben.

1 Like

Ich habe mir mal das Skript angesehen, dass Du unter dem von Dir hier genannten Beitrag veröffentlicht hast.
Lasse ich die ersten Kommentierungen unberücksichtigt, dann komme ich auf über 230 Zeilen Code.
Es ist selbstverständlich möglich, dass ich das völlig falsch verstehe, und man mit dem Skript tatsächlich einen tollen Eisbecher mit Sahne bestellt, aber so wie ich das interpretiere dann ist das Skript dazu angelegt, 6 verschiedene Dokumente zu bearbeiten, diesen Tags zuzuweisen, und sie in bestimmte Gruppen zu verschieben.
Du hast dafür spezifische Codezeilen verfasst, um in Kontoauszügen, Telefonrechnungen etc. nach bestimmten Wörter oder Daten zu suchen, um die Dokumente entsprechend zu identifizieren, und zu verarbeiten.
Bei der Telefonrechnung versucht das Skript z.B. das Datum heraus zu lesen, und wenn dies nicht gelingt, dann soll es im Dateinamen gesucht werden.
Ähnliches machst Du mit Deinen Einkommensabrechnungen, Nebenkosten etc.

Im Ergebnis ist dies ein riesiger Aufwand, für eine doch recht übersichtliche Anzahl an Dokumente.
Klar ließe sich das Skript anpassen, aber es müsste im Zweifel für jede Dokumentenart nicht nur eine Zeile mit dem Tag und der Gruppe angelegt werden, sondern eben auch entsprechende Codezeilen, in denen das Skript dann nach den relevanten Daten in der Textschicht sucht usw.

Deswegen sage ich, dass dies eher ein Hobby ist!
Es macht schlicht für eine Anwendung wie die meine überhaupt keinen Sinn, mit einem derartigen Akt auf die Daten loszugehen. Bis da das erste Dokument verschoben ist, habe ich dutzende, oder sogar hunderte, von Dokumenten von Hand getaggt, und in die entsprechenden Ordner verschoben. Zumal ein solches Skript im Zweifel auch noch Fehleranfällig ist, wenn irgend ein kleines Zeichen im Code fehlt o.ä. geht im Zweifel erst einmal die Fehlersuche los, und wenn ein Absender einer Rechnung o.ä. etwas an seinem Format ändert, dann muss auch das u.U. angepasst werden.
Ich weiß mittlerweile, dass Du Deine Skripte liebst, und ich kann auch verstehen, wenn das jemand kann, dass er es dann auch als Herausforderung ansieht, alles damit zu erledigen, egal wie umständlich das im Ergebnis ist, da ist dann der Weg das Ziel!
Aber für eine produktive Anwendung, wie ich dies bräuchte, ist dies eben viel zu aufwändig, und daher für meine Anwendung nicht zu gebrauchen.

Übrigens, glauben tun die Leute die an bestimmten Wochentagen in die Gotteshäuser rennen, oder aber in Dallas auf die Rückkehr von JFK, Jr. warten!
Ich habe damit allerdings so überhaupt nichts am Hut!!

Ach ja, richtig interessant finde ich, dass Du in dem von Dir verlinkten Beitrag, im Grunde auf genau das gleiche Problem hinweist, für das ich mir hier eine Anpassung von DT3 wünsche!
Soweit liegen wir also wohl nicht auseinander, wir haben nur unterschiedliche Anforderungen an den Weg zum Ziel…

Der Aufwand relativiert sich mit der Wiederholung; d.h. einen solchen Aufwand zu treiben für Dokumente die mir nur ein oder zwei mal zugehen lohnt sich für mich nicht. Kommt bei mir eine E-Mail an, dass eine neue Telefonrechnung vorliegt, öffnet sich die entsprechende Downloadseite automatisch (die für die Handyrechnung gleich mit), der Download wird - weil ich keinen externen JS-Zugriff auf den Browser freischalten möchte - händisch angestoßen, die heruntergeladene Datei automatisch nach DT überführt, sowie umbenannt, als gelesen markiert und in den richtigen Ordner verschoben. In diesem finden sich dann noch intelligente Unterordner, die zwischen Mobilfunk und Internet/Festnetz trennen. Bei 24 Dokumenten im Jahr hat sich der Aufwand für mich gelohnt. Dasselbe Grundgerüst habe ich mit minimalem Aufwand an diverse andere Dokumente angepasst. Schreiben der Versicherung werden anhand von Merkmalen erkannt und dem richtigen Vertrag und Ordner zugeordnet. Bestimmte Dokumente müssen bei Eintreffen bei mir unverzüglich an bestimmte Empfänger verteilt werden; das ist inzwischen voll automatisiert. Manche Dokumente erhalten automatisch ein Verfallsdatum und werden zu gegebenem Zeitpunkt dann automatisch gelöscht. Die Formatänderung bei den Dokumenten war bisweilen für mich kein Problem, weil meine Kriterien immer erhalten blieben. Lästiger ist da schon die teilweise monatliche Änderung der an sich standardisierten Text in E-Mails, die in der Anfangszeit meine Mailregeln gebrochen haben.

Für mich hatte das alles weniger Hobbycharakter als viel mehr der Wunsch danach, möglichst wenige repetitive Aufgaben selbst erledigen zu müssen. Die Erfahrung die ich dabei gesammelt habe hat mir geholfen, sehr viel komplexere Skripte anzulegen die handschriftlich ausgefüllte Formulare abarbeiten und nur noch notwendigen zusätzlichen Input erfragen. Zeitgleich ist ein Tagsystem für mich ungeeignet - ich kann mich nie erinnern, für welche Logik ich mich entschieden hab, muss also nachschauen, wie ich denn das letzte mal ein solches Dokument verschlagwortet hab.

Viele Wege führen schlussendlich nach Rom. In der Tendenz bin ich wenig zuversichtlich, dass dein Wunsch - geäußert im ersten Post - in Erfüllung geht (wenngleich sich dazu nur DT abschließend äußern kann); wenn ich aber die Tage Zeit habe, überlege ich, ob man das nicht Skripten kann (nehme Tag von Datei, suche nach erstem Ordner mit demselben Tag, verschiebe Datei dorthin; das wäre dann völlig generisch. Einzig fällt mir grad spontan nicht ein, wie man vermeiden könnte, dass das Skript dabei jedes mal die gesamte Datenbankstruktur nach dem Ordner durchsuchen muss).

1 Like

Ich wollte Dir mit der Bezeichnung als Hobby nicht zu nahe treten.
Wenn man nur eine relativ überschaubare Zahl an unterschiedlichen Dokumenten hat, dann ist das sicherlich umsetzbar.
Das ist bei mir aber leider nicht der Fall.

Was die Umsetzung mit einem Script angeht:
DT3 kann das was ich will ja im Prinzip bereits mit den intelligenten Ordnern, nur am “echten” verschieben hapert es hier.
Gäbe es eine Möglichkeit, den Inhalt eines Intelligenten Ordners daraufhin zu prüfen, ob er aus dem Eingang kommt, und wenn dies so ist, mit dem Inhalt einen neuen “normalen” Ordner generieren (oder diesen in einen bereits erzeugten Ordner verschieben) der in der gleichen Struktur (also ggfls. mit übergeordneten Ordnern) erzeugt wird, nur in einer anderen Datenbank?

Das dürfen nur ein paar Zeilen sein. Ich sehe zwei potenzielle Schwierigkeiten:

  • mehr als ein Tag => sucht man für jeden und nimmt den ersten Treffer?
  • identisch benannte Gruppen in mehreren Datenbanken (“Rechnungen”) => wo landet der Datensatz?

Das soll dich aber nicht abhalten, deinem Hobby nachzugehen :stuck_out_tongue_winking_eye:

:stuck_out_tongue:

ad 1) ja
ad 2) ich würde die Gruppen auch taggen, und so nach dem Tag und nicht nach dem Gruppennamen suchen; bei mehrere Gruppen mit demselben Tag: first come, first served.

Aber der Post unmittelbar über deinem verlangt wiederum nach einem ganz anderen Mechanismus - das heißt zuerst sollte festgelegt sein, was denn eigentlich passieren soll; dann kann man das potentiell Skripten.

Warum, wenn es für den OP manuell viel schneller geht?

Aus Spaß an der Sache, natürlich :cowboy_hat_face:

Das ist trivial. Alles, was man erlernen und/oder vorbereiten muss, verbraucht erst einmal Zeit fürs Erlernen und Vorbereiten, die man währenddessen für die Sache selbst hätte verwenden können. In der Zeit, in der man Fahrradfahren lernt, hätte man locker ans Ziel gehen können. Sobald man aber fahren kann, kommt man schneller hin. Oder etwas problemnäher: Ein simples Skript zu schreiben, das “Hello World!” ausgibt – egal, in welcher Programmiersprache und unabhängig davon, ob man die Sprache schon beherrscht oder nicht –, dauert länger, als direkt “Hello World!” zu schreiben.

Auch, es zehnmal per Hand zu schreiben geht noch schneller. Aber hundertmal? Irgendwann kippt es eben, und ab da zieht der automatisierte Vorgang davon.

Der Aufwand für die Vorbereitung von Automatisierung ist also nicht das Problem, es kommt auf sein Verhältnis zu dem an, was sie leisten soll.

Von der puren Gesamtmenge Ihrer Daten her spricht alles erst einmal für einen automatisierten Prozess. Aber wenn für jeweils kleine Teil-Datensätze immer wieder eine neue Automatisierung benötigt wird, dann sieht das anders aus.

Und, wichtig, damit meine ich keineswegs nur ein potentielles Skript, sondern auch Ihre vielen Intelligenten Regeln. Die sind ja auch nur Automatisierung, in einer anderen Form halt und in einer, die Sie technisch beherrschen.

Aber auch die müssen angelegt werden und für sie müssen, damit sie greifen, die Dokumente getaggt werden. Wie viele Dokumente bewegen solche Regeln denn dann überhaupt? Und weil es sich doch um die Erfassung eines Papierarchivs handelt, wie viele Regeln werden mehr als einmal über einen kurzen Zeitraum benötigt? Ich meine damit: Faxe von Person oder Firma X von 1997 werden einmal abgelegt, und neue kommen nicht mehr hinzu.

Ich gehe davon aus, dass Sie Ihre alten Dokumente nicht wild durcheinander scannen, sondern dass sie sortiert sind. Ich vermute sogar, dass die Ordner-Struktur, die Sie in DEVONthink angelegt haben, die Struktur Ihrer Papierordner mehr oder weniger genau nachbildet.

Und da geht manuelles Ablegen tatsächlich langsamer als immer wieder zu taggen und Regeln anzulegen? (Diese Frage ist wirklich als Frage und keinesfalls als Vorwurf gemeint. Ich kenne Ihren Fall nur aus der Ferne, Sie sitzen ständig dran und sind daher der einzige, der die richtige Antwort kennt.)

3 Likes