Automatische Verarbeitung
Den Stand der Aufträge bei Ingram holt eine Aufgabe in der Aufgabenwarteschlange. Sie fragt jeden Auftrag ab, bei dem noch etwas aussteht, und schreibt zurück, was Ingram meldet. Business Central SaaS stellt einer Erweiterung keinen öffentlich erreichbaren Endpunkt bereit — der Status wird deshalb abgefragt, nicht zugestellt.
Die Datei-Importe (Preisliste, Verfügbarkeit), die Katalog-Abonnements und die Bestandsaktualisierung laufen getrennt davon über die Import-Aufgaben des Hubs — siehe Einrichtung.
Die Aufgabe
| Eigenschaft | Wert |
|---|---|
| Beschreibung | Ingram Micro - Auto Sync Orders |
| Codeunit | ALN MCIM Job Runner |
| Intervall | Synch.-Intervall (Minuten), ab Werk 60 |
| Zeitfenster | Montag bis Freitag, 06:00 bis 20:00 |
| Wiederholungen | 3 Versuche, 60 Sekunden Abstand |
Nach der Installation ist die Aufgabe angehalten. Gestartet wird sie, wenn Sie im Einrichtungsassistenten die automatische Synchronisierung aktivieren und fertigstellen, oder auf der Einrichtungsseite mit Automatische Synchronisierung aktivieren und Aufgabenwarteschlange anlegen/aktualisieren. Sie läuft nur, solange der Connector aktiviert und lizenziert ist.
Was ein Lauf tut
- Fremd aufgegebene Bestellungen finden (siehe unten).
- Offene Aufträge abfragen — Status Übermittelt, In Bearbeitung oder Im Rückstand, ohne Altersgrenze.
- Versendete Aufträge mit Nacharbeit abfragen — solange im Nachlaufzeitraum noch etwas fehlt.
- Rechnungen einlesen für versendete und abgeschlossene Aufträge der letzten 90 Tage.
- Rechnungen abgleichen, dann Zeitstempel, Protokoll und — wenn eingerichtet — die E-Mail an die Benachrichtigungs-E-Mail.
Jeder Auftrag wird in einer eigenen Transaktion aktualisiert — ganz oder gar nicht. Scheitert die Aktualisierung, bleiben Ingram-Bestellung und Einkaufsbestellung, wie sie vor dem Versuch waren; eine halb angewendete Preis- oder Mengenkorrektur bleibt nicht stehen. Dasselbe gilt für die Belegautomatik nach einer Rechnung. Der Lauf macht danach mit dem nächsten Auftrag weiter. Simulierte Aufträge werden nie abgefragt.
Was ein Abgleich schreibt
Auf die Ingram-Bestellung: Ingram-Auftragsnummer, Status und Ingrams Statustext, Auftragssumme, Währung, und je Zeile bestätigte, zurückgestellte und versendete Menge, Preis, Liefertermin, Sendungs-, Lieferschein- und Rechnungsnummer. Ist nichts mehr offen, wird Nachlauf abgeschlossen gesetzt.
Auf die Einkaufsbestellung — je nach Schalter auf der Einrichtungsseite:
- Kreditorenauftragsnr. und Kreditorenlieferungsnr., wenn sie noch leer sind
- korrigierte EK-Preise und Mengen
- zugesagtes Wareneingangsdatum
- Seriennummern
- mit Wareneingang autom. buchen: der Wareneingang für die gemeldeten Liefermengen, mengengenau — jede Teillieferung ergibt einen eigenen Wareneingang, gebucht zum gemeldeten Versanddatum
- mit Rechnung automatisch buchen: die Einkaufsrechnung, sobald der Rechnungsabgleich passt
Auf den Verkaufsauftrag beim Streckengeschäft: Liefertermin, Seriennummern und die Sendungsverfolgung.
An den Hub: jeden Statuswechsel in Ingrams eigener Formulierung, jede Sendungsnummer mit dem aus der Nummer erkannten Zusteller und jede eingelesene Rechnung.
Fehler und Protokolle
Scheitert bei einem Auftrag die Aktualisierung des Bestellstatus, der Rechnungsimport oder die Belegautomatik nach der Rechnung, hält der Connector den Grund an zwei Stellen fest:
- Am Auftrag im Feld Letzte Fehlermeldung der Ingram-Bestellung. Der Status bleibt unverändert. Ein späterer erfolgreicher Abgleich löscht die Meldung wieder — außer der Auftrag steht auf Fehler, denn dann erklärt die Meldung, warum er nie durchkam.
- Im Aktivitätsprotokoll des Hubs als Bestellabgleich mit Einkaufsbestellung, Ingram-Auftragsnummer, Schritt und vollständigem Fehlertext. Aus diesen Einträgen zählt das Dashboard die Sync-Fehler (24 h).
Für die Aktualisierung des Bestellstatus gilt das auch, wenn Sie Alle offenen Bestellungen aktualisieren von Hand starten.
Zusätzlich schreibt jeder Lauf der Aufgabe eine Zeile Bestellabgleich ins Lieferanten-Importprotokoll des Hubs — neben die Importläufe — mit Bestellungen synchronisiert und Bestellungen fehlgeschlagen.
Abruflimit und Wiederholungen
Ingram erlaubt 60 API-Aufrufe je Minute. Der Connector schickt deshalb höchstens einen Aufruf je Sekunde — in jedem Lauf und bei jeder Aktion.
Antwortet Ingram mit HTTP 429 (zu viele Aufrufe) oder einem Serverfehler (5xx), wiederholt der Connector den Aufruf mit wachsender Wartezeit. Nach fünf gescheiterten Versuchen in Folge pausieren die Aufrufe eine Minute; in dieser Zeit meldet jeder Aufruf „Ingram Micro hat mehrere Aufrufe hintereinander mit einem Fehler beantwortet, deshalb pausieren die Aufrufe für eine Minute. Versuchen Sie es gleich noch einmal."
Das Anlegen einer Bestellung wird nie automatisch wiederholt — siehe Eine Bestellung übertragen.
Nachlaufzeitraum
Ingram meldet den Status oft vor den Sendungsdetails, und eine Teillieferung meldet ihren Rest Tage später. Ein versendeter Auftrag wird deshalb weiter abgefragt, solange etwas fehlt — eine offene Menge, die Rechnung, ihre Zuschläge oder Seriennummern — und längstens Nachlaufzeitraum (Tage) nach dem Versand (ab Werk 60). Der Zeitraum zählt ab dem ersten Lauf, der den Auftrag als versendet sieht, nicht ab dem Bestelldatum. 0 schaltet die Begrenzung ab: Dann wird der Auftrag abgefragt, bis nichts mehr aussteht.
Fremd aufgegebene Bestellungen finden
Jeder Lauf sucht im Suchzeitraum (Tage) (ab Werk 90) nach Einkaufsbestellungen an den Ingram-Kreditor, zu denen es keine Ingram-Bestellung gibt — etwa weil per Mail oder im Ingram-Portal bestellt wurde. Gesucht wird über die Kreditorenauftragsnr., die Kreditorenrechnungsnr. und Ihre Bestellnummer. Nur sichere Treffer werden verknüpft; unsichere erscheinen im Protokoll, damit Sie sie mit Vorhandenen Ingram-Micro-Auftrag zuordnen von Hand prüfen können. 0 schaltet die Suche ab.
Unbestätigte Aufträge
Ingram vergibt die Auftragsnummer asynchron, meist binnen Minuten. Kennt Ingram nach 48 Stunden noch keinen Auftrag unter Ihrer Bestellnummer, setzt der Lauf die Ingram-Bestellung auf Fehler und schreibt den Grund in Letzte Fehlermeldung. Eine Suche, die keine Antwort bekam, ändert daran nichts — nur Ingrams ausdrückliches „kein Auftrag unter dieser Nummer" zählt. Siehe Fehlerbehebung.
Benachrichtigung
Mit einer Benachrichtigungs-E-Mail und Verarbeitungsbenachrichtigung senden kommt nach jedem Lauf, der etwas getan hat, eine Zusammenfassung: aktualisierte Aufträge, eingelesene Rechnungen, Fehler und das Protokoll des Laufs.