[[TOC(heading=Server installatie)]] [[TOC(heading=Installeren en beheren, sectionindex, compact, depth=3, allactive, indirect=Documentatie/Beheerder/Installeren/TOC)]] [[TOC(heading=Beheerder, sectionindex, compact, depth=2, allactive, indirect=Documentatie/Beheerder/TOC)]] [[TOC(heading=Documentatie, sectionindex, compact, depth=1, allactive, Documentatie/)]] = OpenAC 3 Server installatie = == Systeemeisen == OpenAC 3 is beschikbaar in twee varianten: * win7-x64​ (Windows Server 2008 R2, 64-bit) * win81-x64​ (Windows Server 2012, 64-bit) Een zip-bestand van één van deze varianten kan worden gedownload op de [wiki:/ServerReleases Server releases pagina]. De OpenAC webapplicatie werkt goed met de browsers Google Chrome, Mozilla Firefox en Microsoft Edge. Microsoft Internet Explorer doet het grotendeels maar is veel trager en correcte werking is niet gegarandeerd. De installatie van OpenAC 3 kan pas worden gestart nadat .NET 4.6.1 is geïnstalleerd op de server. == Installatie == Het installeren van OpenAC bestaat uit de volgende stappen: * Uitpakken van het zip-bestand * Configuratie * Eerste keer starten * Controle logbestanden * (optioneel) Installeren Windows service === Uitpakken van het zip-bestand === Maak een map aan en pak het zip-bestand hierin uit. Na de installatie moet OpenAC worden geconfigureerd voordat het kan worden gestart. === Configuratie === OpenAC kent een viertal configuratiebestanden. Ze zijn te vinden in de root van de installatiemap en kunnen de eerste keer hier worden geconfigureerd. OpenAC zal de bestanden bij de eerste start kopiëren naar de !ProgramData\OpenACWeb map. In het vervolg moeten ze op die locatie worden gewijzigd. De volledige locatie kun je opzoeken in het OpenAC statusscherm. ||**appsettings.json**||Configuratie van database- en applicatie-specifieke instellingen|| ||**hosting.json**||Configuratie van de OpenAC webserver|| ||**messagequeue.json**||Configuratie van de OpenAC Message Queue (agendaserver)|| ||**nlog.config**||Configuratie van de logbestanden|| Zie het kopje [#Configuratiebestanden "Configuratiebestanden"] voor meer informatie over het configureren van OpenAC. === Eerste keer starten === Test de configuratie door OpenAC te starten in de console. Open een command prompt en ga naar de installatiemap. Start de server op met: {{{ OpenACWeb.exe }}} Navigeer met een browser naar de homepage op http://localhost:/ en kijk of je kunt inloggen. Als je kunt inloggen dan is de database correct geconfigureerd. Op de statuspagina, bereikbaar via Beheer -> Status kun je o.a. zien wat de data- en configuratie directory is. === Controle logbestanden === OpenAC maakt twee logbestanden aan: ||**openac-alles-.log**||De meest uitgebreide logging, inclusief alle binnenkomende request|| ||**openac-applicatie-.log**||OpenAC-specifieke logging, inclusief eventuele foutmeldingen. Als ontwikkelaars een logbestand opvragen gaat het bijna altijd om dit bestand|| Zie het kopje [#nlog.config nlog.config] voor het instellen van de logdirectory etc. Controleer in ieder geval of de logbestanden worden aangemaakt. === (optioneel) Installeren Windows service === == Configuratiebestanden == == appsettings.json == Configuratie van database- en applicatie-specifieke instellingen. Voordat de server kan worden getest moet eerst de database worden geconfigureerd. Dat kan in appsettings.json. Voorbeeld voor MySQL: {{{ /* * De database verbinding wordt geregeld door een database provider; * voor de provider geldt een connection string om de verbinding te * configureren. * * Geldige waarden voor ProviderName zijn: MySql, MSSql (niet-case-sensitive). * Geldige waarden voor ConnectionString hangen af van de gekozen provider. */ "Database": { "ProviderName": "MySql", "ConnectionString": "server=127.0.0.1;userid=userid;password=password;database=database;SslMode=none" } }}} Voorbeeld voor SQL Server met gebruikersnaam en wachtwoord: {{{ "Database": { "ProviderName": "MSSql", "ConnectionString": "Server=server\instance;Database=database;User Id=userid;Password=password;" } }}} In plaats van server\instance is het ook mogelijk een adres te gebruiken. Let op, server authentication moet zijn ingesteld op "SQL Server and Windows Authentication mode" (mixed mode), anders werkt inloggen met gebruikersnaam en wachtwoord niet. Voorbeeld voor SQL Server met Windows Integrated Security: {{{ "Database": { "ProviderName": "MSSql", "ConnectionString": "Server=server\instance;Trusted_Connection=True;" } }}} In plaats van server\instance is het ook mogelijk een adres te gebruiken. De datatabase wordt nu benaderd met de identity waarmee de windows sessie is gestart. Deze zal dus voldoende rechten op de database moeten hebben. === Configureren serieprefixen === Keys in OpenAC tabellen bevatten vaak een zogenaamde serieprefix. In de key ACH-17H12345 is "ACH" de centrumprefix en "17H" de serieprefix. Configureer serieprefixen door in appsettings.json een sectie "Serieprefix" toe te voegen aan de sectie "Agb". Voor elke tabel/locatie-combinatie kan een eigen serieprefix worden opgegeven. De locatiecomponent is optioneel, je zou kunnen volstaan met alleen een "default"-clausule. In de prefixspecificatie kunnen de volgende variabelen worden gebruikt: ||locatiecode||De locatiecode|| ||jaar||De vier cijfers van het jaar|| ||jaar2||De laatste twee cijfers van het jaar|| ||jaarletter||Het jaar geconverteerd naar een letter|| ||maand||De maand in twee cijfers|| Variabelen moeten tussen accolades staan. Als achter "default" de specificatie "{jaar2}{locatiecode}" staat dan wordt dit vertaald naar bijvoorbeeld "17H". {{{ "Serieprefix": { "patient": { "F": "AM3", "U": "AM7", "H": "AM9", "S": "AM0", "A": "AM0", "Q": "H{jaar2}-", "default": "OA" } }, }}} De serie-prefix sectie komt overeen met de serieprefix-functie in de eigen adaptatie van OpenAC 2, maar dan configuratie-gestuurd. == hosting.json == Configuratie van de OpenAC webserver. De interface:poort combinatie waarop de server luistert. {{{ /* puntkomma gescheiden lijst met : combinaties */ { "server.urls": "http://0.0.0.0:5000" } }}} 0.0.0.0 betekent dat de server op elke netwerk interface luistert. Dit is de geadviseerde instelling. Het poortnummer moet overeenkomen met nummer achter "Webserver Poort" in de sectie "OpenAC Server" van het instellingenscherm van OpenAC 2. == messagequeue.json == Configuratie van de OpenAC Message Queue (agendaserver). De OpenAC Message Queue is belangrijk voor optimaal functioneren van OpenAC 2 waarvoor het ondermeer het synchroniseren van de agenda's verzorgt. {{{ { "MessageQueue": { "Port": 2200, "Start": true } } }}} Het nummer achter "Port" moet overeenkomen met het nummer achter "!MessageQueue Poort" in de sectie "OpenAC Server" van het instellingenscherm van OpenAC 2. Door "Start" op false te zetten wordt de !MessageQueue niet gestart. == nlog.config ==