41 lines
1.7 KiB
Markdown
41 lines
1.7 KiB
Markdown
|
|
# `paperless_ablage` — Dokument im Archiv ablegen
|
||
|
|
|
||
|
|
**Zweck:** Übergibt eine Datei aus dem Workflow an das Dokumentenarchiv (Paperless-ngx REST-API) inkl. Metadaten (Titel, Korrespondent, Dokumenttyp, Tags). Das Archiv verarbeitet den Upload asynchron; der Task liefert die Task-UUID zurück.
|
||
|
|
|
||
|
|
**Parameter**
|
||
|
|
|
||
|
|
| Name | Pflicht? | Default | Beschreibung |
|
||
|
|
|---|---|---|---|
|
||
|
|
| `datei` | **ja** | — | Abzulegende Datei |
|
||
|
|
| `titel` | nein | — | Dokumenttitel |
|
||
|
|
| `korrespondent` | nein | — | Korrespondent (Name/ID) |
|
||
|
|
| `dokumenttyp` | nein | — | Dokumenttyp |
|
||
|
|
| `tags` | nein | — | Tags (CSV) |
|
||
|
|
| `base_url` | nein | *(ENV `PAPERLESS_URL`)* | Basis-URL des Archivs |
|
||
|
|
| `token` | nein | *(ENV `PAPERLESS_TOKEN`)* | API-Token |
|
||
|
|
| `output_var` | nein | `paperless` | Prefix der Ausgabevariablen |
|
||
|
|
|
||
|
|
**Eingangswerte:** Platzhalter in allen Parametern, z. B. `{{latest_pdf_path}}` in `<datei>`.
|
||
|
|
|
||
|
|
**Ausgangswerte:**
|
||
|
|
- `<prefix>_task_uuid` — Task-UUID des Archivs (Verarbeitung läuft asynchron)
|
||
|
|
- `<prefix>_ok` — `"1"` bei erfolgreicher Übergabe
|
||
|
|
|
||
|
|
**XML-Beispiel**
|
||
|
|
|
||
|
|
```xml
|
||
|
|
<task type="paperless_ablage" id="archivieren">
|
||
|
|
<config>
|
||
|
|
<datei>{{latest_pdf_path}}</datei>
|
||
|
|
<titel>Rechnung {{re_nr}}</titel>
|
||
|
|
<korrespondent>{{lieferant}}</korrespondent>
|
||
|
|
<dokumenttyp>Eingangsrechnung</dokumenttyp>
|
||
|
|
<tags>rechnung,{{verfahren}},freigegeben</tags>
|
||
|
|
<base_url>{{paperless_url}}</base_url>
|
||
|
|
<output_var>paperless</output_var>
|
||
|
|
</config>
|
||
|
|
</task>
|
||
|
|
```
|
||
|
|
|
||
|
|
**Hinweis:** Zugang bevorzugt über die Umgebungsvariablen `PAPERLESS_URL`/`PAPERLESS_TOKEN` setzen, damit das Token nicht in der Workflow-XML steht. Fehlt der Zugang oder scheitert der Upload, endet der Task mit Fehler — bei nicht-blockierender Archivierung in einen `try_catch` legen.
|