Ablago – Paketkatalog

← Alle Pakete

Trennblatt

Teilt einen Sammelscan an Trennblättern mit Barcode in mehrere Posts und lässt die Trennblätter weg. Ein Archivnummer-Aufkleber auf einem Brief setzt gleich dessen Archivnummer. Läuft abgeschottet im Paket-Läufer, ohne Netz.

Version 1.0.2 · von Thomas Meissner

Post und Scannen

Was mitkommt

legt nichts in der Ablage an

Dieses Paket legt nichts in deiner Ablage an – keine Mappentypen, keine Ansichten, keine Beispielmappen. Es bringt nur eine Funktion mit (siehe „Was das Paket darf“).

Was das Paket darf

kein Zugriff auf Netzwerk und Internet
  • Mappen lesen: Post ?
  • Mappen anlegen und ändern: Post ?
  • Dokumente lesen und Volltext schreiben ?
  • kein Zugriff auf Netzwerk und Internet ?
  • Reagiert auf diese Ereignisse: ?
    • Ein Dokument wurde hochgeladen ?

Beschreibung

ausführlich

Mit dem Paket Trennblatt scannst du einen ganzen Stapel Briefe auf einmal, und in Ablago wird trotzdem jeder Brief eine eigene Post. Du legst zwischen zwei Briefe ein Trennblatt mit Barcode. Der Sammelscan kommt wie gewohnt als eine Post in Ablago. Das Paket findet die Trennblätter, teilt den Scan dort und lässt die Trennblätter weg.

Klebt auf einem Brief ein Archivnummer-Aufkleber von Ablago, bekommt das Dokument der neuen Post gleich diese Archivnummer.

Das Paket läuft im Paket-Läufer von Ablago: abgeschottet als WebAssembly, ohne Netz.

So geht’s

  1. Trennblatt drucken: vorlage/trennblatt.pdf (A4, mit 100 % drucken). Ein paar Blätter reichen, du kannst sie immer wieder verwenden.
  2. Stapel vorbereiten: Lege zwischen je zwei Briefe ein Trennblatt. Vor den ersten Brief brauchst du keins, schadet aber auch nicht.
  3. Scannen: Scanne den ganzen Stapel in ein PDF. Scannst du beidseitig, ist das kein Problem: Die leere Rückseite eines Trennblatts fällt mit weg.
  4. In Ablago: Das PDF kommt wie jede andere Post in Ablago, über den Eingangsordner, das E-Mail-Postfach oder + Post.
  5. Fertig: Nach ein paar Sekunden siehst du unter Post für jeden Brief eine neue Post „Betreff (Teil 1)“, „(Teil 2)“ … mit Stand Neu. Die ursprüngliche Post hat danach Stand Erledigt, behält den ganzen Scan und verweist auf die neuen Posts. Es geht also nichts verloren.
Brief A · Trennblatt · Brief B · Trennblatt · Brief C (2 Seiten)
   → Post „Scan (Teil 1)“: Brief A
   → Post „Scan (Teil 2)“: Brief B
   → Post „Scan (Teil 3)“: Brief C, beide Seiten

Archivnummer gleich mit

Hast du in der Werkbank unter Nummernkreise Archivnummer-Aufkleber gedruckt (Barcode DMS-ASN:<nummer>), dann klebe einen davon auf den Brief, bevor du scannst. Das Paket liest den Aufkleber und setzt die Nummer am Dokument der neuen Post. Später findest du das Papieroriginal über diese Nummer, und ein Handscanner springt im Suchfeld direkt zum Dokument. Ein Aufkleber auf dem Trennblatt selbst gilt für den Brief danach.

Liegt kein Trennblatt im Scan, setzt das Paket nur die Archivnummer am Dokument (ein Brief, ein Aufkleber). Gibt es die Nummer schon an einem anderen Dokument, lässt das Paket sie weg und schreibt eine Warnung ins Protokoll.

Wann das Paket teilt

Das Paket schaut sich ein hochgeladenes PDF an, wenn alles davon stimmt:

  • Es liegt in einer Post mit Stand Neu, die eingeht (keine versendete E-Mail).
  • Die Post hat genau dieses eine Dokument, also einen Sammelscan. Eine E-Mail mit mehreren Anhängen bleibt, wie sie ist.
  • Der Kanal der Post ist unter „Nur Post aus diesen Kanälen“ gewählt, oder dort ist nichts gewählt.
  • Das PDF hat höchstens so viele Seiten wie eingestellt.

Findet es kein Trennblatt oder nur einen Brief, ändert es nichts.

Was das Paket darf

Bei der Installation zeigt Ablago diese Rechte und lässt sie dich bestätigen:

  • Mappen lesen, anlegen und ändern: Post. Das Paket liest die Post, in die der Scan kam, und legt beim Teilen neue Posts an. Andere Mappen sieht es nicht. Löschen kann ein Paket nie.
  • Dokumente schreiben. Das Paket holt die Seiten als Graustufenbild, teilt das PDF und setzt die Archivnummer.
  • Kein Netz.
  • Es reagiert auf Dokument hochgeladen.

In der Historie der Posts steht „Paket Trennblatt“ als Urheber.

Einstellungen

Unter Werkbank → Pakete → Trennblatt → Einstellungen:

Einstellung Standard Bedeutung
Barcode auf dem Trennblatt DMS-TRENNEN Inhalt des Barcodes, an dem das Paket teilt. Groß- und Kleinschreibung zählen nicht.
Trennblatt behalten Nein Ja: Jedes Trennblatt bleibt als erste Seite der neuen Post.
Leere Rückseite mit entfernen Ja Eine leere Seite direkt nach einem Trennblatt (beidseitiger Scan) fällt mit weg.
Nur Post aus diesen Kanälen leer (alle) Eingangsordner, E-Mail-Postfach, Hochgeladen, Scan, WebDAV, API, Import
Archivnummer aus dem Aufkleber übernehmen Ja Barcode DMS-ASN:<nummer> auf einer Seite setzt die Archivnummer.
Auflösung (dpi) 300 150–400. Für Trennblätter reichen 150 dpi, kleine Archivnummer-Aufkleber brauchen 300.
Höchstens so viele Seiten 60 Längere Scans prüft das Paket nicht.

Eigener Barcode

Du willst einen anderen Inhalt als DMS-TRENNEN, zum Beispiel weil ein anderes Programm schon so ein Trennblatt nutzt? Dann trag ihn in den Einstellungen ein und erzeuge dein Trennblatt so:

python3 vorlage/trennblatt.py --text MEIN-TRENNBLATT mein-trennblatt.pdf

Das Skript braucht nur Python 3, keine weiteren Pakete. Jedes Trennblatt mit einem Code-128-Barcode dieses Inhalts funktioniert.

Messung

In Ablago 0.91 (Paket-Läufer mit Standardgrenzen: 256 MB, 120 s) auf amd64 mit 300 dpi:

Scan Dauer eines Aufrufs Speicher
5 Seiten (3 Briefe, 2 Trennblätter) 1,8 s 9 MB
8 Seiten, beidseitig und schief gescannt etwa 6 s 9 MB

Den größten Teil der Zeit braucht Ablago, um die Seiten zu rastern. Mit dem Standard von 60 Seiten bleibt ein Aufruf deutlich unter der Zeitgrenze. Willst du längere Stapel teilen, setz die Auflösung auf 150 dpi (Archivnummer-Aufkleber werden dann oft nicht mehr gelesen).

Grenzen

  • Das Paket liest Code 128, so wie Ablago seine Aufkleber druckt. QR-Codes liest es nicht.
  • Barcodes auf stark schiefen Seiten (mehr als etwa 15°) oder auf sehr kleinen Aufklebern bei niedriger Auflösung findet es unter Umständen nicht. Dann bleibt der Scan ungeteilt, und du kannst ihn in Ablago von Hand teilen (Post → Dokument → Seiten bearbeiten).
  • Eine Post mit mehreren Dokumenten teilt das Paket nicht.

Voraussetzungen

  • Ablago 0.94.0 oder neuer (Paket-Läufer, Seite als Graustufenbild, Post teilen per API, Archivnummer per API, Recht nur für Post).

Für Entwickler

Datei Inhalt
code/trennblatt.cpp das Modul (Ablago-Paket-ABI 1): Ereignis → Seiten über die API → Barcodes → Post teilen, Archivnummer setzen
code/barcode.c, code/barcode.h eigener, kleiner Code-128-Leser (Zeichensätze A, B, C) für Graustufenbilder: tastet Zeilen und Spalten ab, örtliche Schwelle, Kanten auf Bruchteile eines Bildpunkts, liest in beide Richtungen, Prüfziffer
code/json.h kleiner JSON-Leser (aus dem Paket Texterkennung)
code/bauen.sh Bau mit dem WASI-SDK, ohne fremde Bibliotheken; danach der Test des Barcode-Lesers, wenn ein C-Compiler da ist
vorlage/trennblatt.py, vorlage/pdf.py erzeugen vorlage/trennblatt.pdf, nur mit der Standardbibliothek
tests/barcode_test.c künstliche Scans: schief, verrauscht, unscharf, verlaufene Tinte, auf dem Kopf, quer, kleinste Aufkleber; Textseiten ohne Fehllesung
tests/beispiel.py Beispiel-PDFs: 3 Briefe mit 2 Trennblättern, dasselbe beidseitig und schief „gescannt“, ein Scan ohne Trennblatt
tests/modul_test.mjs das gebaute Modul in Node mit einer Nachbildung der Ablago-Importe und der API
tests/pruefen.sh alles zusammen
WASI_SDK=$(werkzeuge/wasi-sdk.sh) python3 werkzeuge/bauen.py pakete/trennblatt   # Modul und Test des Barcode-Lesers
pakete/trennblatt/tests/pruefen.sh                                                # alle Tests (braucht node und Poppler)

Die Schnittstelle beschreibt das Entwicklerhandbuch von Ablago unter Pakete mit Code.

Lizenz

Apache-2.0 (siehe LICENSE). Das Paket enthält keinen fremden Code.

Änderungen

Version 1.0.2

1.0.2

  • Texte: Das Programm heißt jetzt Ablago (dms-registry #111). Inhalt, Rechte und Verhalten sind unverändert.

1.0.1

  • Rechte: nur noch Post lesen, anlegen und ändern (dms:post) statt aller Mappentypen ("*"). Andere Mappen sieht das Paket nicht mehr. Braucht DMS 0.94.0 oder neuer. Verhalten sonst unverändert.

1.0.0

  • Erste Fassung: teilt einen Sammelscan in einer neuen Post an Trennblättern mit Code-128-Barcode (DMS-TRENNEN) in mehrere Posts; Trennblätter und ihre leeren Rückseiten fallen weg.
  • Archivnummer-Aufkleber (DMS-ASN:<nummer>) setzen die Archivnummer am Dokument der neuen Post.
  • Einstellungen: Barcode-Inhalt, Trennblatt behalten, leere Rückseite, Kanäle, Archivnummer, Auflösung, Seitenzahl.
  • Eigener Code-128-Leser ohne fremde Bibliotheken; Trennblatt zum Ausdrucken (vorlage/trennblatt.pdf).

Für Fortgeschrittene und Entwickler

Version, Lizenz, Quellcode, Downloads
Version
1.0.2 vom 03.11.2026
Lizenz
Apache-2.0
Nötige Ablago-Version
>=0.94.0
Abhängigkeiten
keine
Quellcode
auf GitHub ansehen

Alle Versionen

VersionDatumAblagoDownload
1.0.203.11.2026>=0.94.0Archiv
1.0.101.11.2026>=0.94.0Archiv
1.0.001.11.2026>=0.88.0Archiv

Fehler oder Wunsch zu diesem Paket melden (auf GitHub; übertragen wird nur der Paketname)

Passt dazu

Weitere Pakete von Thomas Meissner

Adresse deines Ablago

Zum Beispiel https://dms.example.org oder http://192.168.1.20:3000. Die Adresse bleibt nur in diesem Browser; die Seite sendet nichts an dein Ablago.