Der COBI.wms InventoryCountingService ist ein separater Windows-Dienst, der speziell für umfangreiche Teamzählungen bei der Inventur entwickelt wurde.
Er nimmt die erfassten Bestandszählungen der Handscanner asynchron entgegen und verarbeitet sie im Hintergrund.
Dies hat den großen Vorteil, dass die App der Benutzer nach dem Senden nicht blockiert wird und diese sofort weiterarbeiten können.
Bevor der Dienst installiert wird, muss die COBI.wms Management-Datenbank um zwei Felder erweitert werden.
Führen Sie dazu folgendes SQL-Skript auf Ihrer Management-Datenbank aus:
ALTER TABLE COBIWMS.COMPANIES ADD ( INCAPIURL VARCHAR(255), INCAPIKEY VARCHAR(255) );
Hinweis: Dieses SQL-Skript kann unverändert sowohl für Microsoft SQL Server als auch für SAP HANA Datenbanken verwendet werden.
COBI.wms.InventoryCounting.service.exe) auf dem designierten Windows-Server aus.IP:PORT, z.B. 192.168.0.1:30015).
Schließen Sie das Setup ab. Der Windows-Dienst wird im Anschluss automatisch registriert und gestartet.
Sie können dies in der Windows-Diensteverwaltung (services.msc) überprüfen.
Wichtig: Port-Freigabe
Der Dienst läuft standardmäßig auf dem Port 61000.
Es ist zwingend erforderlich, dass dieser Port in der Windows-Firewall des Servers für die Handscanner (WLAN/Netzwerk) erreichbar ist!
Nach der erfolgreichen Installation müssen Sie der COBI.wms Management-Datenbank noch mitteilen, wo der Dienst zu finden ist.
Führen Sie dazu folgendes Update-Skript aus (passen Sie IP-Adresse, Port, API-Key und Company Name an Ihre Umgebung an):
UPDATE COBIWMS.COMPANIES SET INCAPIURL = 'http://10.10.10.20:61000/api/v1/', INCAPIKEY = 'IHR_GEWÄHLTER_API_KEY' WHERE COMPANY = 'Ihr_SAP_Company_Name';
Der Dienst bringt ein eigenes Dashboard zur Überwachung der Hintergrundprozesse mit.
http://localhost:61000/hangfire auf.
Wenn die Scanner Daten an den Dienst senden, speichert dieser die Zählungen zunächst unter “Requests”.
Bei der Verarbeitung (Cronjob) gilt folgende Logik:
Hinweis zur Performance:
Die Verarbeitungsgeschwindigkeit ist maßgeblich durch SAP Business One limitiert, nicht durch den COBI.wms Dienst.
Als grober Richtwert: Für eine Bestandszählung mit ca. 5.000 Zeilen und 11 Zählern benötigt das SAP-System ca. 2 Stunden für die Verarbeitung.
Erfahrung für den Anwender:
Der App-User bekommt von diesem Hintergrundprozess nichts mit.
Sobald die Daten erfolgreich an den Dienst übergeben wurden, kann der User in der App ohne Wartezeit direkt weiterarbeiten.
Sollte es notwendig sein, die Konfiguration nach der ursprünglichen Installation anzupassen (z. B. wenn sich das SAP-Passwort ändert oder ein anderer Port für Hangfire genutzt werden soll), muss das Setup nicht erneut ausgeführt werden.
Sie können die Änderungen direkt in der Konfigurationsdatei vornehmen.
Navigieren Sie dazu in das Installationsverzeichnis des Windows-Dienstes (standardmäßig unter C:\COBI.wms-inventorycounting-service oder ähnlich) und öffnen Sie die Datei appsettings.json mit einem Texteditor (als Administrator).
Die Konfiguration ist in verschiedene Blöcke unterteilt.
Hier ist eine Übersicht der wichtigsten Felder und ihrer Funktion:
http://0.0.0.0:61000). Ändern Sie hier die Portnummer am Ende, falls der Standardport belegt ist.dst_HANADB oder dst_MSSQL2016).Wichtig: Umgang mit Passwörtern
Wenn Sie ein Passwort (z. B. im Block `“SAP”` oder `“Hangfire”`) ändern möchten, tragen Sie das neue Passwort einfach im Klartext (Plaintext) in dieappsettings.jsonein. Speichern Sie die Datei und starten Sie den Windows-Dienst über die Diensteverwaltung (services.msc) neu.
Der Dienst erkennt beim Start automatisch, dass es sich um Klartext handelt, und hashed das Passwort umgehend. Wenn Sie die Datei danach erneut öffnen, sehen Sie anstelle Ihres Passworts nur noch den unleserlichen Hash-Wert.