Symptom:
SFirm 4 wird gestartet und zeigt beim Programmstart folgende Fehlermeldung:
Das Öffnen des Mandanten ist nicht möglich.
Fehler beim Zugriff auf Dbc-Datenbank von Server "HOSTNAME\INSTANCE". SQL Server Network Interfaces: Error Locating Server/Instance Specified [xFFFFFFFF].
A network-related or instance-specific error has occurred while establishing a connection to SQL Server. Server is not found or not accessible. Check if instance name is correct and if SQL Server is configured to allow remote connections. For more information see SQL Server Books Online.
Login timeout expired.
Lösung:
In der Datei
<SFirmV4-Daten>\Basis\DBCs.ini
den Wert für
SERVER=HOSTNAME
korrigieren, wobei "HOSTNAME" ersetzt werden muss, durch die IP-Adresse des PCs/Servers.
oder:
Wenn auf dem Server mehrere MS SQL Server-Instanzen aktiv sind, kann es sein, dass der eingestellte TCP/IP-Port bereits von einer MS SQL Server-Instanz in Verwendung ist. Es ist dann erforderlich im SQL Server Configuration Manager in der SQL Server Network Configuration den TCP/IP-Port zu verändern (z.B. statt 1433 auf 1435). Dies ist ggf. separat für localhost (127.0.0.1) und auch die IPv4-Adresse des Servers. Zusätzlich sollte der SQL Server Browser aktiv sind und der Port 1434 UDP frei sein.
oder
Im SQL Server Configuration Manager in der SQL Server Network Configuration ist der Wert für den TCP/IP-Port leer. Dies kann kann zu Problem führen. Hier den Standardwert 1433 einstellen.
oder
Standardmäßig verwenden benannte Instanzen (einschl. SQL Server Express) dynamische Ports. Wenn es sich hier um die einzige Datenbankengine handelt wird i.d.R. der Port 1433 verwendet. Sind weitere Instanzen vorhanden kann u.U. ein anderer TCP Port verwendet werden der dynamisch ausgehandelt wird. Eine Konfiguration der Firewall auf einen festen Port ist daher nicht möglich. Hier müsste in der Firewall die Applikation (SQLSRV.EXE) freigegeben werden. Microsoft bietet hierzu eine eigene Beschreibung sowie entsprechende Lösungsansätze an. Diese sind unter folgendem Link zu finden:
https://docs.microsoft.com/de-de/sql/sql-server/install/configure-the-windows-firewall-to-allow-sql-server-access?view=sql-server-2017
oder:
Fehler kann auch auftreten, wenn der Dienst 'SQL Server Browser' nicht gestartet ist. Wird der Dienst gestartet, wird der Fehler beim Start von SFirm nicht mehr angezeigt.
oder:
In den Eigenschaften des Dienstes SQL Server auf dem Reiter Anmeldung 'Lokales Systemkonto' aktivieren und den Dienst starten (GILT NICHT FÜR LOCALDB!)
oder:
Per Default ist aktiv, dass ALLE Netzwerk-Interfaces und ALLE IP-Adressen (sowohl IPv4 als auch IPv6) abgehört werden. Wird ausschließlich IPv4 genutzt und IPv6 ist deaktiviert, kann dies zu dem Fehler führen.
Im SQL Server Configuration Manager unter SQL Server Network Configuration die Protocols der SQL Instanz anklicken, dort Doppelklick auf TCP/IP (muss Enabled sein).
Den Wert 'Listen' auf dem Reiter Protocols in den Eigenschaften auf 'NO' ändern.
Bei dem Reiter 'IP-Adresses' die IPv4 Adresse der Clients eintragen, diese Einträge auf 'Enabled - Yes' setzen und den TCP/IP Port eintragen (Standard 1433 oder den selbst vergebenen Port bei mehreren SQL Servern).
Alles mit OK bestätigen und den SQL Server Dienst unter 'SQL Server Services' neu starten.
oder
In den Fehlerdetails zum Fehler 21010 ist kann auch ein Hinweis zur Laufwerkskomprimierung aufgeführt sein. Wird die Komprimierung deaktiviert, lässt sich SFirm fehlerfrei starten.
oder
Wenn SFirm mit LocalDB verwendet wird, den Dienst SFirm 4 DatabaseService neu starten. Das Anmeldung für den Dienst darf nicht verändert werden. Sollte das Problem häufiger auftreten, den Starttyp des Dienstes auf "Automatisch (verzögerter Start)" ändern.
oder
Nach einer Neuinstallation tritt das Problem auf. Eine Deinstallation durchführen und darauf achten das folgender Registryschlüssel entfernt wird (sofern vorhanden)
HKEY_LOCAL_MACHINE\SOFTWARE\Wow6432Node\StarFinanz\SFirmV4\Settings\DatabaseService
Danach SFirm 4 mit LocalDB neu installieren (alternativ auch benutzerdefiniert mit SQL Server statt LocalDB)
oder
In einigen Fällen konnte, wenn SFirm mit LocalDB verwendet wird, das Problem behoben werden, indem der Virenscanner (z.B. Avira) deinstalliert wurde. Tritt das Problem danach nicht mehr auf, Virenscanner in aktueller Version erneut installieren und prüfen, ob der Zugriff auf LocalDB dann trotzdem weiterhin möglich ist.
Fehlercode: 21010
Ursache/Bedingung für das Auftreten des Problems:
SFirm kann die Verbindung zum Hostnamen oder der SQL Server Instanz nicht aufbauen