01 – Übersicht
Der Squeeze Pull-Job holt fertig gelesene Belege per Squeeze REST-API v2 nach DOCUMENTS ab und ersetzt den SOAP-Export. Diese Seite beschreibt Funktionsweise und Statuswerte für den Mappentyp Invoice. Stand 09.11.2026.
Was ist der Pull-Job
Bisher hat Squeeze fertig gelesene Belege per SOAP nach DOCUMENTS geschoben. Beim Pull holt DOCUMENTS die Belege selbst über die REST-API v2 von Squeeze ab. Je Mappentyp gibt es ein eigenes Job-Skript, das im Scheduler viertelstündlich läuft und die generische Bibliothek Squeeze_Pull_Lib aufruft.
Der Job fragt im Queue-Step „Export“ nur die Belege der konfigurierten Squeeze-Klasse ab. Je Beleg legt er eineeinen AkteVorgang an oder aktualisiert eineeinen vorhandene.vorhandenen. Er schreibt Kopffelder, Positionen (Gentable) und Anhänge und meldet den Beleg danach über das Export-Interface „Pull“ als FINISHED an Squeeze. Erst dann gilt dieder AkteVorgang als fertig und darf in den Workflow.
Die Zuordnung Beleg → AkteVorgang läuft ausschließlich über das Feld SqueezeID.
Ablauf je Beleg
AkteVorgang suchen: überSqueezeID.AkteVorgang anlegen: Gibt eskeinekeinenAkte,Vorgang, wirdsieer neu angelegt und sofort mitSqueezeIDundSqueezeStatus = Unfinishedgespeichert.EineEinenAkteVorgang aufProcessedüberschreibt der Job nie.- Daten schreiben: Kopffelder, Positionen und Anhänge, danach speichern. Felder, die es am Mappentyp nicht gibt, werden übersprungen (Hinweis im Log). Der Beleg wird trotzdem übernommen.
- Abschließen: Bei Erfolg geht FINISHED an Squeeze, dann wird
SqueezeStatus = Processedgesetzt, optional mit direktem Workflow-Start. Bei einem Fehler wirdSqueezeStatus = ERRORgesetzt und kein FINISHED gemeldet. Der Beleg bleibt im Export und der nächste Lauf versucht es erneut.
Häufigkeit und Menge je Lauf
Beides ist einstellbar:
- Ausführungshäufigkeit: über die Einplanung des Jobs
Invoice_JOB_SqueezePullim Scheduler. - Belege je Lauf: über den Schalter
MAX_DOCS_PER_RUNinSqueeze_Pull_Lib, im Paket100. Was ein Lauf nicht schafft, übernimmt der nächste.
Empfehlung: viertelstündlich mit 100 Belegen starten. Staut sich der Export, zuerst das Intervall verkürzen (z.B. auf 5 Minuten), statt MAX_DOCS_PER_RUN stark zu erhöhen. Kurze Läufe machen Fehler schneller sichtbar, und bis DOCUMENTS 6.1 gibt es keinen HTTP-Timeout für die Squeeze-Aufrufe.
MAX_DOCS_PER_RUN ist kein Parameter, sondern eine Konstante in Squeeze_Pull_Lib und gilt damit für alle Mappentypen. Läuft ein Lauf länger als das Intervall, startet der nächste nicht parallel, sondern wartet über die Parallel-Sperre (siehe Betrieb und Fehlersuche).
SqueezeStatus anam der AkteVorgang
| Wert | Bedeutung | Workflow | Nächster Lauf |
|---|---|---|---|
Unfinished |
wird übernommen oder Lauf abgebrochen | nein | macht mit |
ERROR |
Fehler erkannt, Grund im Log | nein | versucht es erneut |
Processed |
fertig, FINISHED von Squeeze bestätigt | ja | überspringt, überschreibt nie |
Die Werte New, Analyze, Split usw. stammen aus SOAP bzw. der Analyse. Der Pull-Job setzt sie nicht.
Wichtig: Den Workflow-Start für Unfinished und ERROR sperrt der Userexit ue_beforeStartWorkflow in Invoice__UserExit_CustomLib. Fehlt er, startet Invoice_JOB_StartWorkflow auch unfertige Akten.Vorgänge.