Public Access
Automatisierter Belegversand für DEVONthink aktualisiert
@@ -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]
|
||||||
|
|||||||
Reference in New Issue
Block a user