Installation (ArcFlow.Next)
Voraussetzungen für die Installation
Der ArcFlow WebApi Dienst kann auf einem Windows System ab der Version Microsoft Windows Server 2016 mit .NET Framework 4.8 installiert werden. Da das System für den Zugriff von außerhalb des eigenen Netzes gedacht ist, sollte das aktuelle Windows Betriebssystem mit den letzten Updates verwendet werden. Für die spätere Kommunikation über HTTPS muss ein Zertifikat vorhanden sein. Alle weiteren Voraussetzungen (Web-Server usw.) werden bei der Installation des Dienstes mit installiert.
Installation
Der Programmstand für die ArcFlow WebApi befindet sich nach der Installation von ArcFlow im Unterverzeichnis "...\Client\App\Install\ArcFlow.Next". Die dort vorhandene ZIP-Datei kann in ein beliebiges Verzeichnis kopiert und dort entpackt werden. Für die weitere Beschreibung wird davon ausgegangen, dass die Dateien in das Verzeichnis "...\Services\WebApi" entpackt wurden. Folgende Dateien sind in der ZIP-Datei enthalten:
- ArcFlow.NET.API.dll - ArcFlow .NET Bibliothek
- ArcFlow.NET.dll - ArcFlow .NET Bibliothek
- ArcFlow.SYS.dll - ArcFlow .NET Bibliothek
- ArcFlowWebApiService.exe - Programm des WebApi-Dienstes
- ArcFlowWebApiService.exe.config - Konfigurationsdatei des Programms.
- Service_install.cmd - Kommando zur Installation des Dienstes
- Service_uninstall.cmd - Kommando zur Deinstallation des Dienstes
- settings.json - Konfigurationsdatei
- lib - Verzeichnis das weitere Bibliotheken zur Ausführung des WebApi-Dienstes enthält.
- logs - Das Verzeichnis wird beim ersten Starten angelegt und enthält die Protokolldateien der WebApi.
- spa - Verzeichnis mit den Dateien des WebApi-Clients (Single Page Application).
- x64 - 64-Bit Bibliotheken des WebApi-Dienstes.
- x86 - 32-Bit Bibliotheken des WebApi-Dienstes.
Starten des Dienstes

Das Programm "ArcFlow.Next.Service.exe" kann mit einem Doppelklick gestartet werden. Sollte in den Einstellungen der verwendetet Port auf einen Wert kleiner 9000 geändert werden, muss das Programm über den Menüpunkt "Als Administrator ausführen" des Kontextmenü des Explorers gestartet werden.
Mit den jetzigen Einstellungen in der "settings.json" kann von der gleichen Maschine aus über den Link http://localhost:9000 die Web-Oberfläche von ArcFlow aufgerufen werden. Die Anmeldung erfolgt mit dem Benutzer "admin" und dem in ArcFlow hinterlegten Kennwort. Alle weiteren Benutzer in ArcFlow benötigen zur Anmeldung das Applikationsrecht "ArcFlow.Next Lese-Modus".
Zur Installation als Dienst muss das Programm wieder beendet werden und das Betriebssystem-Skript "Service_install.cmd" als Administrator ausgeführt werden. Das Skript installiert das Programm als Dienst und startet es.
Anpassungen der Einstellungen
Konfigurationsdatei
Nach der Installation befindet sich eine Datei "settings.json" mit Standardwerten im Installationsverzeichnis.
{ "LogLevel": "Default", "Database": { "PgixMode": "Auto", "ServerName": "...", "AreaName": "arcflow", "MaxConnections": 10, "AutoCloseTimeout": "00:00:30" }, "Web": { "Scheme": "http", "Host": "localhost", "Port": 9000, "ClientConfigDirectoryName": "spa", "ClientConfigFileName": "js\\config.js", "JwtTokenSecret": "..." }, "Service": { "Description": "ArcFlowWebApiService", "DisplayName": "ArcFlowWebApiService", "Name": "ArcFlowWebApiService" } }
Die Einstellungen des ArcFlow WebApi Dienstes erfolgen in der Datei "settings.json". In der Datei können folgende Einstellungen vorgenommen werden:
- LogLevel
- In diesem Bereich kann der Level für die Protokollierung angegeben werden. Änderungen in diesem Bereich sind erst nach einem Neustart des Dienstes wirksam. Folgende Loglevel stehen zur Verfügung:
- Default - Protokollierung von Info-, Warnungs- und Fehlermeldungen
- Debug - Protokollierung von Debug-, Info-, Warnungs- und Fehlermeldungen
- Silence - Protokollierung von Fehlermeldungen
"LogLevel": "Default"
- Database
- In diesem Bereich werden Einstellungen zur Datenbankverbindung angegeben. Änderungen in diesem Bereich sind erst nach einem Neustart des Dienstes wirksam.
- PgixMode - Die Verbindung zur ArcFlow-Datenbank wird über eine DLL hergestellt. Diese DLL steht in unterschiedlichen Ausprägungen zur Verfügung. Mit der Angabe von Bit64, Bit32 bzw. Extended32 wird die 64-, 32-Bit DLL oder die 32-Bit DLL mit erweitertem Funktionsumfang geladen. Durch die Angabe von Auto wird die für das System geeignete DLL geladen.
"PgixMode": "Auto"
- ServerName - Name oder IP-Adresse des ArcFlow Datenbankservers. Ist der Datenbankserver auf der gleichen Maschine gestartet, kann auch "*" angegeben werden.
"ServerName": "*"
- AreaName - Name der Datenbank. Standardmäßig wird "arcflow" verwendet.
"AreaName": "arcflow"
- MaxConnections - Maximale Anzahl von Verbindungen zur Datenbank
"MaxConnections": 10
- AutoCloseTimeout - Werden in der angegebenen Zeit keine Anfragen an die Datenbank gesendet, wird die Datenbank Verbindung getrennt. Die Angabe erfolgt in Stunden:Minuten:Sekunden.
"AutoCloseTimeout": "00:00:30"
- Web
- In diesem Bereich erfolgen die Angaben für den Zugriff auf die WebApi. Änderungen in diesem Bereich erfordern eine Neuinstallation des Dienstes.
- Scheme - Hier wird das Protokoll angegeben, mit dem die WebApi erreichbar ist. Zur Verfügung stehen die Protokolle http und https.
"Scheme": "http"
- Host - Der Eintrag gibt den Host an, unter dem die WebApi erreichbar ist.
"Host": "localhost"
- Port - Die WebApi wird über den hier angegebenen Port angesprochen. Wird ein Port kleiner 9000 angegeben, müssen entsprechende Berechtigungen zum Binden des Ports vorhanden sein.
"Port": 9000
- ClientConfigDirectoryName - In dem angegebenen Verzeichnis befinden sich die Dateien für den Web-Client. Die Pfadangabe erfolgt relativ zum Installationspfad. In dem Beispiel ist das der Pfad "...\Services\WebApi\spa".
"ClientConfigDirectoryName": "spa"
- ClientConfigFileName - In dieser Datei sind weitere Einstellungen für den Web-Client enthalten. Die Angabe erfolgt relativ zum Verzeichnis des Web-Clients. In dem Beispiel ist das der Pfad "...\Services\WebApi\spa\js\config.js".
"ClientConfigFileName": "js\\config.js"
- JwtTokenSecret - Das Verwalten der Sessions des Web-Clients und der WebApi erfolgt über JSON Web Tokens. Der hier angegebene Schlüssel wird für die initiale Kontaktaufnahme benötigt. Anschließend werden Authentifizierungstoken und Sessiontoken ausgetauscht.
"JwtTokenSecret": "..."
- Service
- In diesem Bereich befinden sich Informationen zur Installation des Programms als Dienst. Änderungen in diesem Bereich sind erst nach einer erneuten Installation wirksam.
- Description - Beschreibung des Dienstes
"Description": "ArcFlowWebApiService"
- DisplayName - Anzeigename des Dienstes
"DisplayName": "ArcFlowWebApiService"
- Name - Name des Dienstes. Der Name muss unter den Diensten auf dem System eindeutig sein.
"Name": "ArcFlowWebApiService"
Anpassungen für den Zugriff nicht nur von Außen
Mit den Einstellungen nach der Installation kann der Dienst nur von der lokalen Maschine aus aufgerufen werden. Um den Zugriff von einer anderen Maschine zu ermöglichen, muss der Eintrag Host auf den Namen der Maschine oder die IP-Adresse geändert werden.
Soll die Kommunikation der Web-Clients mit der WebApi über HTTPS abgesichert werden, wird ein Zertifikat benötigt. Das Zertifikat kommt in der Form einer PFX-Datei. Es muss mit Hilfe des "Zertifikatimport-Assistent" auf dem lokalen Computer gespeichert und der Schlüssel als exportierbar markiert werden. Zudem muss der Eintrag Scheme in https geändert werden.
Bevor der Dienst für einen Zugriff freigegeben wird, sollten die Kennwörter des Benutzers "admin" und aller weiteren Benutzern, die Zugriff bekommen, überprüft werden. Innerhalb von ArcFlow können entsprechende Passwortrichtlinien definiert werden.
![]() |
Nach der Änderung im Bereich "Web" muss der Dienst neu installiert werden. |
Erneuerung des Zertifikats
Deinstallation
Zu Deinstallation des Dienstes reicht es aus, den Dienst zu entfernen. Dazu können entweder die Funktionen des Betriebssystems verwendet oder das Betriebssystem-Skript "Service_uninstall.cmd" als Administrator ausgeführt werden. Der Dienst wird dann gestoppt und von den Diensten entfernt. Die Dateien im Installationsverzeichnis können anschließend gelöscht werden.