de:cobi.wms:teamzaehlerdienst
Differences
This shows you the differences between two versions of the page.
| Next revision | Previous revision | ||
| de:cobi.wms:teamzaehlerdienst [2026/02/17 14:16] – created thuth | de:cobi.wms:teamzaehlerdienst [2026/02/18 13:26] (current) – [6. Nachträgliche Konfiguration (appsettings.json)] thuth | ||
|---|---|---|---|
| Line 1: | Line 1: | ||
| - | ===== Teamzählerdienst ===== | + | ====== Einrichtung des Teamzählerdienstes (InventoryCountingService) ====== |
| + | |||
| + | Der COBI.wms InventoryCountingService ist ein separater Windows-Dienst, | ||
| + | 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. | ||
| + | |||
| + | ===== 1. Vorbereitungen (Management Datenbank) ===== | ||
| + | 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: | ||
| + | |||
| + | <code sql> | ||
| + | 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. | ||
| + | |||
| + | ===== 2. Installation des Windows Dienstes ===== | ||
| + | {{ : | ||
| + | - Führen Sie die Setup-Datei für den Windows-Dienst ('' | ||
| + | - Während der Installation fragt der Assistent verschiedene Konfigurationsparameter ab: | ||
| + | * Datenbanktyp: | ||
| + | * SAP Server: Tragen Sie hier die Adresse und den Port Ihres SAP-Servers ein (Format: '' | ||
| + | * SAP Datenbank: Tragen Sie hier bitte den Datenbanknamen/ | ||
| + | * SAP User: Tragen Sie hier den SAP Benutzernamen ein. | ||
| + | * SAP Passwort: Tragen Sie hier das SAP Passwort ein. | ||
| + | * Cron Expression: Hier legen Sie fest, in welchem zeitlichen Intervall der Dienst die empfangenen Zählungen verarbeiten soll (Hilfe zur Cron-Syntax finden Sie unter [[https:// | ||
| + | * API Key: Legen Sie einen sicheren API-Schlüssel fest. Dieser authentifiziert später die Verbindung zwischen den Handscannern (App) und diesem Dienst. | ||
| + | * Hangfire User & Password: Vergeben Sie hier Zugangsdaten. Diese werden später für den Zugriff auf das Überwachungs-Dashboard (Hangfire) benötigt. | ||
| + | |||
| + | {{: | ||
| + | |||
| + | Schließen Sie das Setup ab. Der Windows-Dienst wird im Anschluss automatisch registriert und gestartet. \\ | ||
| + | Sie können dies in der Windows-Diensteverwaltung ('' | ||
| + | |||
| + | ===== 3. Firewall & Datenbank-Update ===== | ||
| + | Wichtig: Port-Freigabe \\ | ||
| + | Der Dienst läuft standardmäßig auf dem Port 61000. \\ | ||
| + | Es ist zwingend erforderlich, | ||
| + | |||
| + | 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): | ||
| + | |||
| + | <code sql> | ||
| + | UPDATE COBIWMS.COMPANIES | ||
| + | SET INCAPIURL = ' | ||
| + | INCAPIKEY = ' | ||
| + | WHERE COMPANY = ' | ||
| + | </ | ||
| + | |||
| + | ===== 4. Überwachung via Hangfire Dashboard ===== | ||
| + | Der Dienst bringt ein eigenes Dashboard zur Überwachung der Hintergrundprozesse mit. | ||
| + | |||
| + | - Öffnen Sie auf dem Server einen Browser und rufen Sie die Adresse '' | ||
| + | - Loggen Sie sich mit dem Hangfire User und Password ein, das Sie bei der Installation (Schritt 2) vergeben haben. | ||
| + | - Unter dem Reiter " | ||
| + | |||
| + | {{: | ||
| + | |||
| + | ===== 5. Funktionsweise & Limitierungen ===== | ||
| + | Wenn die Scanner Daten an den Dienst senden, speichert dieser die Zählungen zunächst unter " | ||
| + | Bei der Verarbeitung (Cronjob) gilt folgende Logik: | ||
| + | - Zusammenfassung (verschiedene User): Zählen unterschiedliche User den gleichen Artikel, werden die Zählmengen vom Dienst zusammenaddiert. | ||
| + | - Überschreiben (gleicher User): Zählt derselbe User denselben Artikel mehrfach (z.B. Korrektur), werden die älteren Einträge ignoriert und nur die neueste Zählung wird verarbeitet. | ||
| + | |||
| + | 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. | ||
| + | |||
| + | ===== 6. Nachträgliche Konfiguration (appsettings.json) | ||
| + | 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 '' | ||
| + | |||
| + | Die Konfiguration ist in verschiedene Blöcke unterteilt. \\ | ||
| + | Hier ist eine Übersicht der wichtigsten Felder und ihrer Funktion: | ||
| + | |||
| + | * Kestrel -> Endpoints -> Http -> Url: Der Port, auf dem der Dienst und das Hangfire-Dashboard laufen (Standard: '' | ||
| + | * SAP -> Server: Adresse und Port des SAP-Servers. | ||
| + | * SAP -> Database: Name der SAP-Firmendatenbank. | ||
| + | * SAP -> User / Password: Die Anmeldedaten für SAP Business One. | ||
| + | * SAP -> DatabaseType: | ||
| + | * Jobs -> UpdateInventoryCountingJobCron: | ||
| + | * Hangfire -> User / Password: Die Zugangsdaten für das Überwachungs-Dashboard. | ||
| + | * Api -> Key: Der Authentifizierungsschlüssel für die Verbindung zwischen Handscanner und Dienst. | ||
| + | |||
| + | > **Wichtig: Umgang mit Passwörtern** \\ | ||
| + | > Wenn Sie ein Passwort (z. B. im Block `" | ||
| + | > Der Dienst erkennt beim Start automatisch, | ||
de/cobi.wms/teamzaehlerdienst.1771334180.txt.gz · Last modified: by thuth