Hallo,
ich habe aktuelle die Dateinamen meiner Dokumente wie folgt:
20250420-Gruppe-Untergruppe-Bezeichnung
Habe dies so gemacht, damit ich nach Datum sortieren kann.
Kann ich dem Dokument selbst ein Datum hinterlegen und den Dateinamen anders nennen, so dass ich trotzdem nach Datum sortieren kann?
Oder wie macht ihr das?
Danke
Wozu schreibst du die Gruppen in den Namen?
Ich benutze Firma-Datum, weil Firmen für mich wichtiger sind als die Daten. Es kommen also erst alle Dokumente der Allianz, nach Datum sortiert, dann die der DKB, auch nach Datum sortiert.
Diesen Satz verstehe ich nicht. Was spricht denn dagegen, dass Datum im Dateinamen unterzubringen?
Dagegen spricht, dass ich gerne das deutsche Datumsformat angeben wollen würd. Für die Sortierung aber nicht möglich. Daher die Frage, ob im Dokument selbst ein Feld verfügbar ist, in dem man das Datum eingeben kann und auch danach sortieren kann.
Die Benennung ist ja je nach Benutzer unterschiedlich, für mich machen die Gruppen einen sehr großen Sinn.
Custom meta data field. Danach kann man in der jeweiligen Ansicht sortieren.
Das mit den Gruppen verstehe ich nicht. Entweder, du musst den Dateinamen ändern, wenn das Dokument in eine andere Gruppe kommt – fehleranfällig. Oder es bleibt immer in derselben Gruppe, dann wiederholt der Name nur eine anderswo vorhandene Information. Chaque un à son goût, natürlich.
Ich habe das bei mir wie folgt hinterlegt:
20250301_huk24_beitragsrechnung_2025-2026
YYYY.MM.DD_Unternehmen_Dokumentenbezeichnung_teilweise noch ein Bezug auf den Rechnungszeitraum, wo es Sinn macht.
Alles in Kleinschreibung.
Der OP möchte ja gerade ein “deutsches” Datum im Namen, also. 20032025 – DDMMYYYY
Deine Sichtweise ist nicht arg zukunftssicher. Wenn ich in einer Gruppe “Versicherung” meine Dokumente hinterlege, dann wird das ganz schnell unübersichtlich.
so habe ich es doch auch (siehe erster Beitrag). Aber nicht gerade toll.
Und das wird übersichtlicher, wenn die Dokumente in der Gruppe liegen und “DD-MM-YYYY Versicherungen Untergruppe irgendwas” heißen?
Das sind jetzt nur die Vertragsdaten/-änderungen. Rechnungen landen anderswo. Aber egal.
Was Du machen kannst
- Ein benutzerdefiniertes Metadatum erzeugen, z.b. “MeinDatum”
- Eine intelligente Regel erstellen
Mit dieser Regel würdest Du das Dokumentendatum in Dein benutzerdefiniertes Feld übernehmen. Wenn Du jetzt noch dieses Feld in der Listenansicht zu den ausgewählten Feldern hinzufügst, kannst Du danach sortieren.
Falls Du nicht das Dokumentendatum in MeinDatum
übernehmen willst, sondern das Datum aus dem Dateinamen, musst Du die intelligente Regel anpassen und ein Skript verwenden, etwa sowas
function performsmartrule(records) {
const app = Application("DEVONthink") // oder "DEVONthink 3"
records.forEach(r => {
const name = r.name();
if (/^\d{8}/.test(name)) {
// Dateiname beginnt mit acht Ziffern
const datumTeile = name.match(/(\d{4})(\d\d)(\d\d)/);
const ISOdatum = datumTeile.slice(1).join('-');
const meinDatum = new Date(ISOdatum);
app.addCustomMetaData(meinDatum, {for: "meindatum", to: r});
}
})
}
Das kannst Du als JavaScript Script in die Regel einfügen. Der Code guckt erst, ob der jeweilige Dateiname mit acht Ziffern beginnt. Ist das der Fall, packt er mit einem regulären Ausdruck (match
) Jahr, Monat und Tag in ein Array datumTeile
. Dessen erstes Element ist immer das gesamte Match, also YYYYMMDD. Das brauchen wir nicht. Also wirft das Script dieses Element weg (slice(1)
). Es bleibt ein Array mit den Elementen YYYY, MM, und DD übrig. Diese fügt es per join
zu einem String zusammen, dessen Elemente durch einen -
getrennt sind. ISODatum
ist also von der Form YYYY-MM-DD
. Daraus macht new Date()
ein Date
-Objekt, das schließlich addCustomMetaData
als meindatum
-Feld des aktuellen Datensatzes setzt.
Lässt sich sicherlich auch in AppleScript machen, dazu habe ich aber keine Lust.