Automatisierter Belegversand für DEVONthink aktualisiert

2026-08-18 16:12:58 +00:00
parent 96712d9283
commit a221197302
+53 -117
@@ -80,12 +80,7 @@ Falls nach dem Clone noch `.applescript`-Dateien vorhanden sind, war `compile.sh
### Automatische Initialisierung ### Automatische Initialisierung
Nach der ersten Ausführung erstellt das System in der aktuellen DEVONthink-Datenbank unter... Nach der ersten Ausführung erstellt das System in der aktuellen DEVONthink-Datenbank unter `_config` die Steuerverzeichnisse.
<source>
_config/
</source>
...die Steuerverzeichnisse.
Die Konfigurationsdatei `belegversand.conf` befindet sich in DEVONthink unter `_config → belegversand.conf`. Die Konfigurationsdatei `belegversand.conf` befindet sich in DEVONthink unter `_config → belegversand.conf`.
#### Wichtigste Parameter #### Wichtigste Parameter
@@ -105,12 +100,8 @@ Die Konfigurationsdatei `belegversand.conf` befindet sich in DEVONthink unter `_
### Multiple Empfänger (CSV-Format) ### Multiple Empfänger (CSV-Format)
Mehrere E-Mail-Adressen können durch Kommas getrennt werden: Mehrere E-Mail-Adressen können durch Kommas getrennt werden:
- MAIL_TO_DEFAULT=recipient1@example.com, recipient2@example.com
<source> - MAIL_CC_TO_DEFAULT=cc1@example.com, cc2@example.com
MAIL_TO_DEFAULT=recipient1@example.com, recipient2@example.com
MAIL_CC_TO_DEFAULT=cc1@example.com, cc2@example.com
</source>
Die Adressen werden automatisch geparst und in Apple Mail einzeln eingefügt. Die Adressen werden automatisch geparst und in Apple Mail einzeln eingefügt.
## Verwendung ## Verwendung
@@ -136,140 +127,85 @@ Das System verhindert Versandvermischung über mehrere Jahre:
- Separate Protokolle: Jedes Buchungsjahr hat eigene Versendet-Ordner mit separaten Logs - Separate Protokolle: Jedes Buchungsjahr hat eigene Versendet-Ordner mit separaten Logs
- Outsider-Belege: Dokumente außerhalb der Jahresstruktur werden separat gehandhabt - Outsider-Belege: Dokumente außerhalb der Jahresstruktur werden separat gehandhabt
Beispiel-Struktur:
<source>
Belege/
├── 2026/
│ ├── 01_Januar/
│ ├── [weitere Monate]
│ └── Versendet/ [← Logs für 2026-Versand]
├── 2027/
│ ├── 01_Januar/
│ ├── [weitere Monate]
│ └── Versendet/ [← Logs für 2027-Versand]
└── Provisionsabrechnungen/
└── [← Separate Outsider-Logs]
</source>
### Dry-Run Modus ### Dry-Run Modus
Vor jedem echten Versand kann ein Dry-Run durchgeführt werden: Vor jedem echten Versand kann ein Dry-Run durchgeführt werden:
# Simuliert den kompletten Versandprozess - Simuliert den kompletten Versandprozess
# Erstellt Vorschau-Datei mit allen Details - Erstellt Vorschau-Datei mit allen Details
# Zeigt Dialog mit Zusammenfassung - Zeigt Dialog mit Zusammenfassung
# User kann bestätigen oder abbrechen - User kann bestätigen oder abbrechen
Die Vorschau-Datei wird auf der lokalen Festplatte gespeichert (Pfad konfigurierbar). Die Vorschau-Datei wird auf der lokalen Festplatte gespeichert (Pfad konfigurierbar).
=== Mail-Drafts === ### Mail-Drafts
Das System erstellt keinen automatischen Versand, sondern Mail-Drafts: Das System erstellt keinen automatischen Versand, sondern Mail-Drafts:
# ZIP-Archive werden erzeugt - ZIP-Archive werden erzeugt
# Apple Mail öffnet mit neuem Draft (nicht gesendet!) - Apple Mail öffnet mit neuem Draft (nicht gesendet!)
# User kann Template prüfen, weitere Empfänger hinzufügen - User kann Template prüfen, weitere Empfänger hinzufügen
# Benutzerdefinierter Versand per Knopfdruck in Mail - Benutzerdefinierter Versand per Knopfdruck in Mail
Dies ermöglicht volle Kontrolle über den Versand. Dies ermöglicht volle Kontrolle über den Versand.
=== Mail-Templates === ### Mail-Templates
Seit Version 1.4 unterstützt der Belegversand beliebig viele Mail-Templates.
Templates werden aus DEVONthink geladen (`_config/mail_vorlagen/`). Templates werden aus DEVONthink geladen (`_config/mail_vorlagen/`).
Das System zeigt einen Dialog zur Template-Auswahl, wenn mehrere Vorlagen vorhanden sind. Das System zeigt einen Dialog zur Template-Auswahl, wenn mehrere Vorlagen vorhanden sind.
Beispiel-Template: ## Protokollierung
<source> Die Versende-Vorgänge werden zweifach protokolliert.
Sehr geehrte/r Frau/Herr, - Maschinell lesbar im *.JSON-Lines Format für technische Weiterverarbeitung:
- Menschlich lesbar, im *.MD-Format, mit Übersichten nach Versandlauf:
beiliegend erhalten Sie die angeforderten Unterlagen. ## Troubleshooting
Mit freundlichen Grüßen ### Scripts funktionieren nicht
</source>
== Protokollierung == #### Problem: "Script nicht gefunden"
=== NDJSON-Logs ===
Maschinell lesbar im JSON-Lines Format für technische Weiterverarbeitung:
<source lang="json">
{"timestamp":"2026-01-15T10:30:45Z","type":"record","record_uuid":"abc123","record_name":"Invoice-001","status":"sent"}
{"timestamp":"2026-01-15T10:30:46Z","type":"email","to":"recipient@example.com","zip_file":"archive.zip","status":"created"}
{"timestamp":"2026-01-15T10:30:47Z","type":"tag","record_uuid":"abc123","tag":"gesendet","status":"applied"}
</source>
=== Markdown-Logs ===
Menschlich lesbar mit Übersichten nach Versandlauf:
<source>
# Belegversand Logs — 2026
## Versandlauf 2026-01-15 10:30
**Versendete Belege:** 5 Stück
**Empfänger:** recipient@example.com
**ZIP-Datei:** belegversand_2026-01-15_103045.zip
**Passwort:** [konfiguriert]
**Status:** Erfolgreich
### Versandte Dokumente
- Invoice-001 (UUID: abc123...)
- Invoice-002 (UUID: def456...)
...
</source>
== Troubleshooting ==
=== Scripts funktionieren nicht ===
==== Problem: "Script nicht gefunden" ====
Häufigste Ursache: `compile.sh` wurde nicht ausgeführt. Häufigste Ursache: `compile.sh` wurde nicht ausgeführt.
Lösung: #### Lösung:
# Prüfen ob `.scpt`-Dateien vorhanden sind: <code>ls ~/Library/Application\ Scripts/com.devon-technologies.think/Menu/Belegversand/Helpers/scripts/</code> - Prüfen ob `.scpt`-Dateien vorhanden sind: <code>ls ~/Library/Application\ Scripts/com.devon-technologies.think/Menu/Belegversand/Helpers/scripts/</code>
# Falls nur `.applescript`-Dateien vorhanden → <code>./compile.sh</code> erneut ausführen - Falls nur `.applescript`-Dateien vorhanden → <code>./compile.sh</code> erneut ausführen
# Auf Fehlermeldungen achten - Auf Fehlermeldungen achten
==== Problem: Script-Zugriff verweigert ==== ### Problem: Script-Zugriff verweigert
Lösung: #### Lösung:
# System Settings → Privacy & Security → Automation - System Settings → Privacy & Security → Automation
# DEVONthink sollte mit entsprechenden Rechten gelistet sein - DEVONthink sollte mit entsprechenden Rechten gelistet sein
# Script Editor öffnen und START.scpt öffnen - Script Editor öffnen und START.scpt öffnen
# Compile (⌘K) — sollte ohne Fehler durchlaufen - Compile (⌘K) — sollte ohne Fehler durchlaufen
=== ZIP wird nicht erstellt === ### ZIP wird nicht erstellt
* ZIP-Passwort in Config überprüfen (keine Sonderzeichen!) -ZIP-Passwort in Config überprüfen (###Keine### Sonderzeichen, keine Leerzeichen!)
* Ausreichend Festplatte vorhanden? - Ausreichend Festplatte vorhanden?
* Staging-Ordner in DEVONthink beschreibbar? - Staging-Ordner in DEVONthink beschreibbar?
=== Mail-Draft öffnet sich nicht === ### Mail-Draft öffnet sich nicht
* Apple Mail ist geöffnet? - Apple Mail ist geöffnet?
* Script-Zugriff für Mail aktiviert? - Script-Zugriff für Mail aktiviert?
* Mail-Templates-Ordner vorhanden? - Mail-Templates-Ordner vorhanden?
=== "Mixed-Year-Selection"-Fehler === ### "Mixed-Year-Selection"-Fehler
Dies ist kein Fehler, sondern Schutz vor Versandvermischung: Dies ist kein Fehler, sondern Schutz vor Versandvermischung:
; Lösung 1: Nur Belege aus einem Buchungsjahr auswählen - Lösung 1: Nur Belege aus einem Buchungsjahr auswählen
; Lösung 2: Belege in mehreren Versänden verteilen - Lösung 2: Belege in mehreren Versänden verteilen
=== Debug-Informationen aktivieren === ### Debug-Informationen aktivieren
In `belegversand.conf`: In `belegversand.conf`:
<source>
WRITE_DEBUG_LOG=true WRITE_DEBUG_LOG=true
</source>
Debug-Logs erscheinen dann in `/tmp/DT-Belegversand-debug.log`. Debug-Logs erscheinen dann in `/tmp/DT-Belegversand-debug.log`.
== Versionshistorie == == Versionshistorie ==
@@ -280,25 +216,25 @@ Debug-Logs erscheinen dann in `/tmp/DT-Belegversand-debug.log`.
; 1.1: Konfigurationssystem ; 1.1: Konfigurationssystem
; 1.0: Erste funktionale Version ; 1.0: Erste funktionale Version
== Entwicklung == ## Entwicklung
Quellcode liegt als `.applescript`-Dateien vor (lesbar, git-freundlich). Quellcode liegt als `.applescript`-Dateien vor (lesbar, git-freundlich).
Zur lokalen Entwicklung: Zur lokalen Entwicklung:
# Quelldateien (`.applescript`) editieren - Quelldateien (`.applescript`) editieren
# `./compile.sh` ausführen - `./compile.sh` ausführen
# In DEVONthink testen - In DEVONthink testen
# Bei Änderungen: `./compile.sh` erneut ausführen - Bei Änderungen: `./compile.sh` erneut ausführen
== Support == ## Support
Für technische Fragen oder Probleme: Für technische Fragen oder Probleme:
* Wiki-Dokumentation durchlesen (diese Seite) * Wiki-Dokumentation durchlesen (diese Seite)
* Debug-Log aktivieren und analysieren * Debug-Log aktivieren und analysieren
* Im Gitea-Repository ein Issue erstellen (falls Zugriff vorhanden) * Im Gitea-Repository ein Issue erstellen (falls Zugriff vorhanden)
== Externe Links == ## Externe Links
* [https://gitea.tuxi.ddnss.de/enchiriadis/DEVONthink-Belegversand-Automatisation Repository] (privat, erfordert Zugriff) - [https://gitea.tuxi.ddnss.de/enchiriadis/DEVONthink-Belegversand-Automatisation Repository] (privat, erfordert Zugriff)
* [https://www.devontechnologies.com DEVONthink Homepage] - [https://www.devontechnologies.com DEVONthink Homepage]
* [https://support.apple.com/mail Apple Mail Documentation] - [https://support.apple.com/mail Apple Mail Documentation]