Alle Artikel
Workflow7 Min. Lesezeit

Serienerfassung: Was beim Batch-Workflow Zeit spart

Standort und Typ werden einmal gesetzt. Jede Aufnahme landet in einer Queue; Upload, Analyse und Cover laufen weiter, während du das nächste Objekt fotografierst.

OI

Open Inventory

Technische Notizen · MIT-lizenziert

Drei Personen mit Schutzbrillen arbeiten gemeinsam an einer Maschine in einer Werkstatt.
Reale Kontextfotografie eines Werkstattteams. Das Motiv zeigt weder Open Inventory noch den beschriebenen Batch-Workflow. Foto: Mikhail Nilov / Pexels.

Kurz zusammengefasst

  • Gemeinsame Felder werden pro Batch wiederverwendet
  • Resource-, Media-, Analyse- und Cover-Schritte laufen getrennt
  • Stabile Idempotency-Keys verhindern Duplikate bei definierten Retries

Echte App-Aufnahme

Serienerfassung in der laufenden Web-App

Eigens angelegte Demo-Daten
Echte Open-Inventory-Webansicht der Serienerfassung mit Fotoablage und Demo-Daten
Echte Aufnahme der Fotoablage mit eigens angelegten Demo-Inhalten und einem realen Objektfoto.
01

Das eigentliche Problem

Welche Eingaben pro Batch wiederverwendet werden

Bei einer Serie kosten die wiederholten Kontextwechsel mehr Zeit als ein einzelnes Textfeld. Typ und Standort ändern sich innerhalb eines Regals oft nicht. Deshalb setzt du diese Werte einmal und übernimmst sie für die folgenden Aufnahmen.

Für jedes Foto legt der Client einen eigenen Auftrag an. Der Server erstellt zuerst den Inventareintrag, danach die Medien. Analyse und Cover sind optionale, getrennte Schritte. Ein Fehler beim Cover muss also nicht die bereits hochgeladenen Fotos verwerfen.

„In Sekunden statt Stunden“ beschreibt das Ziel für die Aufnahme vor Ort, nicht eine veröffentlichte Benchmark. Die Verarbeitung kann danach weiterlaufen. Gesamtdauer und Durchsatz hängen von Netz, Server, Bildgröße und aktivierten externen Diensten ab.

02

Der Ablauf

Die Queue in fünf Schritten

  1. 01

    Batch-Kontext setzen

    Wähle gemeinsame Werte, zum Beispiel Typ „Werkzeug“ und Standort „Werkstatt · Regal B2“. Cover-Erzeugung und Analyse bleiben optional.

  2. 02

    Aufnahmen lokal vorbereiten

    Nimm ein Hauptfoto und bei Bedarf weitere Blickwinkel auf. Modellnummern und Typenschilder gehören auf separate, scharfe Bilder.

  3. 03

    Resource und Medien anlegen

    Der Client erstellt den Eintrag und lädt anschließend die Bilder hoch. Beide Stufen haben eigene Status- und Fehlerzustände.

  4. 04

    Queue weiterarbeiten lassen

    Du startest die nächste Aufnahme, während frühere Jobs weiterlaufen. Definierte Wiederholungen nutzen stabile Operation-IDs und serverseitige Idempotency-Keys.

  5. 05

    Ergebnisse prüfen

    Kontrolliere Name, Tracking-Modus, Standort und Bilder. Seriennummern und benutzerdefinierte Felder werden nicht durch ein brauchbares Foto ersetzt.

03

Browser und iPhone

Web-Client und iOS-App im Vergleich

Der Web-Client kombiniert Browser-Kamera und vorhandene Dateien. Das passt zu Laptop oder Tablet am Arbeitstisch. Die native SwiftUI-App nutzt AVFoundation direkt und enthält zusätzlich Code-Scanner und RoomPlan-Pfade.

Unter iOS werden Fotos und Stage-Status in einer servergebundenen Outbox unter Application Support persistiert. Nach einem Neustart prüft die App den letzten bestätigten Schritt und setzt dort fort. Das ist keine Offline-Synchronisation des ganzen Datenmodells, sondern eine persistente Upload-Queue.

  • Browser-Kamera benötigt HTTPS oder localhost; alternativ lassen sich Fotos hochladen.
  • Für die native App muss dein selbst gehosteter Server vom iPhone erreichbar sein. Öffentliche Verbindungen sollten HTTPS verwenden.
  • Optionale KI-Schritte verlassen den eigenen Server: Analyse nutzt OpenAI, Cover können über OpenAI oder Google laufen, Fotozählung über Replicate.
  • Barcode-Erkennung ersetzt keine inhaltliche Prüfung, wenn mehrere Artikel denselben oder gar keinen Code tragen.
04

Nach der Aufnahme

Nach der Verarbeitung: Felder und Bilder prüfen

Die Queue liefert zunächst einen bearbeitbaren Datensatz. Danach musst du prüfen, ob Standort, Tracking-Modus, Menge und Bilder zum realen Objekt passen. Für Seriennummern oder sicherheitsrelevante Angaben sollte kein Modellvorschlag ungeprüft übernommen werden.

Der komplette Pfad liegt im MIT-lizenzierten Repository: Web-Client, REST-Routen und die SwiftUI-Outbox sind Open Source. Damit lassen sich Queue-Verhalten und Datenfluss direkt im Code prüfen und bei Bedarf ändern.

Weiterführend

Vom Artikel in die Praxis