Versionen im Vergleich

Schlüssel

  • Diese Zeile wurde hinzugefügt.
  • Diese Zeile wurde entfernt.
  • Formatierung wurde geändert.

Inhalt
stylenone


Einleitung

SmartVO speichert seine Daten im Hintergrund in einer Datenbank. Hier kommen 2 Technologien zum Einsatz:

  1. Standard (lokal): Datenbank: Sqlite: Einzelplatzrechner oder synchronisierte Rechner ohne internes Netzwerk, nachfolgend Betriebsmodus 1

  2. Internes Netzwerk (Mehrrechnerbetrieb): Datenbank: SqlServer(-Express) mit 2 Betriebsmodi:

    1. direkt auf dem Serverrechner (kommt in Praxen häufig vor), nachfolgend Betriebsmodus 2a

    2. als Client-Rechner (zusätzlich zum Server) im gleichen Netzwerk, nachfolgend Betriebsmodus 2b

Beide Varianten unterstützen Synchronisation (2-Wege Replikation) mit einer Online-Datenbank, die Voraussetzung für erweiterte Programmfunktionalität darstellt (Therapeuten-App, Praxxme, Fernzugriff per Remotedesktop).


Konfiguration der Datenanbindung

Die Konfiguration für die Datenanbindung befindet sich in der zentralen Einstellungsdatei:
c:\ProgramData\HeNaRa\SmartVO\PhysioConfigurationInstance.xml

Dort sind folgende Einträge für die Datenanbindung von Relevanz:

  • DbAnbieter:

    • HeNaRaLocal (Betriebsmodus 1)

    • SqlServer (Betriebsart 2)

  • DbPfad:

    • Pfad zur s3db-Datenbank (Betriebsmodus 1)

    • Serveridentifikation (Betriebsart 2):

      • Betriebsmodus 2a: Server + Instanz:
        [Name | IP-Adresse]\Instanzname des SqlServer
        Beispiele (der Instanzname ist meistens HENARASQL, kann aber auch SQLEXPRESS sein
        Anmerkung: meistens ist das SqlServer-Managementstudio auf dem Serverrechner der Praxis vorhanden. Dort kann der Zugang getestet werden:

        • localhost\HENARASQL

        • 127.0.0.1\HENARASQL

        • .\#MyComputerName#\HENARASQL

        • .\HENARASQL

      • Betriebsmodus 2b: Server + Port:
        [Name | OP-Adresse]:Port
        Beispiele:

        • #ServerComputerName#:14467

        • 192.168.178.25:14467

  • nur bei Betriebsart 2:

    • DbUser: Anmeldename an Datenbank

    • DbPassword: bei Initialstart (ohne Kundennummer) das Klartextpasswort - danach codiert

    • DbCatalog: Name der Datenbank

    • Kundennummer


Beispiele Datenendpunkt in PhysioConfigurationInstance.xml

Betriebsmodus 1: Im Normalfall ist der komplette Konfigurationsblock in der Einstellungsdatei nicht vorhanden. Dann wird das Vorhandensein der Datenbank in
c:\ProgramData\HeNaRa\SmartVO\SmartVO.s3db impliziert. Befindet sich die Datenbank an anderer Stelle, ist folgender Eintrag in der Konfiguration vorhanden:

Codeblock
languagexml
<DbPfad>#Abweichender Pfad zu SmartVO.s3db#</DbPfad>
<!-- optional -->
<DbAnbieter>HeNaRaLocal</DbAnbieter>

Betriebsmodi 2a und 2b verweisen auf die Zugang zum SqlServer

Codeblock
languagexml
<DbAnbieter>SqlServer</DbAnbieter>
<DbPfad>192.168.100.85</DbPfad>
<DbUser>sa</DbUser>
<DbPassword>d0xSq224ulYnxxYG0ItsqitnsYzXERTSXZX9QkK4VpHsBWtYWO913ZbVPFv2rU3sXMOyjcEhJfMxEwR3RCmjdU11OAofONaYtAmyi8lXPf6POoDWoi27VZufbBeSWZVe</DbPassword>
<DbCatalog>12345678</DbCatalog>
<Kundennummer>12345678</Kundennummer>

Einschränkungen

Verfügbarkeit

Betriebsmodus 2b: es ist es notwendig, dass der als Datenbankserver fungierende Rechner durch die anderen aktiven Rechner sichtbar ist. Der Datenbankserver sollte leistungsstark sein nach Welche technische Ausstattung benötige ich für meinen Rechner?

Mehrbenutzerzugriff

Betriebsmodus 1 unterstützt keinen gleichzeitigen Mehrbenutzerzugriff. Zugriff über ein geteiltes Laufwerk kann Datenkorruption verursachen. Theoretisch ist Mehrbenutzerbetrieb in diesem Fall über Synchronisation zeitversetzt abbildbar, aber nicht empfehlenswert.

2 oder mehr Empfangskräfte, die sofort die Aktualisierungen des Kollegen auf einem anderen Rechner sehen wollen, sollten Betriebsmodus 2b präferieren.


Sicherung (Backup)

Betriebsmodus 1 hat automatische Sicherungen im Ordner
c:\ProgramData\Henara\SmartVO\backup

Betriebsmodi 2 benötigen das Einrichten einer Windows Aufgabe, welches das Sql-Sicherungsskript aus dem Installationsordner von SmartVO\Sql aufruft.


Mögliche Probleme

Beide Datenbankanbindungen sind robust hinsichtlich Datenkorruption. Damit bleiben hauptsächlich Verbindungsprobleme für die Betriebsmodi 2. Die Fehlermeldung lautet dann ähnlich wie
Fehler beim Öffnen der Datenbank … Netzwerkbezogener oder instanzspezifischer Fehler beim Herstellen einer Verbindung mit SqlServer

Verbindungsprobleme bei Serverbetrieb (Betriebsmodi 2)

Einleitung

Voraussetzung für Betrieb: Serverrechner und Clients müssen sich im selben Netz befinden und sich gegenseitig sehen. Dafür ist ein gleiches Subnetz Bedingung (die ersten 3 Zahlengruppen einer IP-Adresse, beispielsweise 192.168.178). Die 4. Zahl der IP-Adresse ist pro Rechner im Netzwerk unterschiedlich.

Info

Rechner kommunizieren über eine IP-Adresse miteinander. Diese besteht aus 4 Blöcken: XXX.YYY.Z(ZZ).ID, beispielsweise 192.168.178.22 oder 192.168.1.33 und wird vom Router vergeben. Die ersten 3 Blöcke sind bei Rechnern im gleichen Netz identisch. Zum leichteren Merken wurden Namensaliase eingeführt, die dann im Hintergrund in IP-Adressen rückübersetzt werden.
Die IP-Adresse eines Rechners ist im Terminal (cmd.exe) mit dem Kommando ipconfig bestimmbar.

Da diese Adressen kryptisch sind, wird oftmals eine Kommunikation über Rechnernamen bevorzugt, welche dann durch eine Namensauflösung in IP-Adressen rück-konvertiert wird. Die Namensauflösung geschieht in einem DNS-Server, einer Software, die meistens im Router integriert ist.
Weiterer Vorteil einer namensbedingten Kommunikation: die durch den Router vergebene IP-Adresse ist oftmals nicht gleich, sondern dynamisch (DHCP-Addressvergabemodus, am Router einstellbar), der Name des Servers aber schon.

Fehler

Absteigende Reihenfolge in Wichtung:

  • Fundamental, selten vorkommend: Sicherstellen, dass der Dienst für die SqlServer-Instanz (HENARASQL) in den Diensten auf dem Server gestartet ist. Startet der Dienst nicht, muss in der Windows Ereignisanzeige der Fehler entnommen werden

  • Hauptproblem: fehlende Namensauflösung: Der Datenbankserver wird über seinen Namen versucht anzusprechen (siehe Konfiguration DbPfad).
    Router neu starten

  • Falls aber nach dem Router-Neustart der Server noch nicht erreicht wird, ist es ggf. sinnvoller:
    IP-Adresse des Servers statt Servernamen in DbPfad eintragen
    (auf dem Serverrechner kann auch alternativ 127.0.0.1 oder localhost eingetragen werden)

  • Betriebsmodus 2b: Port-Überprüfung:
    Port in DbPfad der Konfiguration angegeben, z.B. Serverrechner:14467 oder [Server-IP]:14467
    Port in der Firewall des Client-Rechners freischalten

  • Enthält die Konfiguration DbPfad bereits eine IP-Adresse, überprüfen, ob diese die Richtige ist
    Prüfen der Server IP-Adresse
    → selten:Teilweise stört das IPv6-Protokoll die IPv4-Server-Kommunikation. Dann das Protokoll IPv6 an der Netzwerkkarte deaktivieren

  • selten: es kommt vereinzelt vor, dass die Konfigurationsdatei gelöscht wurde oder korrupt ist. In diesem Fall startet das System überhaupt nicht gegen den SqlServer, sondern geht in Betriebsmodus 1 über. Das sorgt für Verwirrung, da dann Daten fehlen.
    die Konfigurationsdatei PhysioConfigurationInstance.xml aus dem Backupordner des Vortages (in c:\ProgramData\Henara\SmartVO\backup\daily) kopieren und in
    c:\ProgramData\Henara\SmartVO wiederherstellen