Konfiguration

Portalum.ini

Die INI-Datei verbindet Portalum mit der richtigen Datenbank und enthält zentrale Start-, Anmelde- und Laufzeiteinstellungen.

CashDeskBack OfficeAccess ControlTechnikerEntwickler

Für Anwender

Beim Programmstart ermittelt Portalum zunächst die zu verwendende INI-Datei. Aus dieser Datei liest das Programm, mit welcher Datenbank es arbeiten soll, wo gemeinsame Dateien liegen und ob eine Anmeldung oder Datenbankauswahl angezeigt wird. Eine falsche oder nicht erreichbare Konfiguration kann deshalb verhindern, dass Portalum startet.

Was die Datei steuert

  • Verbindung zu einer JET-/Access- oder SQL-Datenbank
  • Gemeinsamer Ordner für Berichte, Ressourcen und weitere Dateien
  • Automatische Anmeldung und Auswahl mehrerer Datenbanken
  • Verbindungsprüfung, Protokollierung und Datenbankverhalten

Was Anwender beachten

  • Die Datei nicht umbenennen, verschieben oder manuell kopieren.
  • Passwörter und Servernamen nicht per E-Mail oder Screenshot weitergeben.
  • Bei einer Datenbankauswahl immer den vorgesehenen Betrieb auswählen.
  • Änderungen ausschließlich durch eingewiesene Techniker durchführen lassen.
Wichtig: Die INI-Datei kann Zugangsdaten enthalten. Sie gehört nicht in allgemein zugängliche Ordner und darf nicht zusammen mit Diagnoseunterlagen ungeprüft weitergegeben werden.

Typische Meldungen beim Start

BeobachtungBedeutungVorgehen
INI-Datei wird nicht gefundenDer hinterlegte Pfad ist ungültig oder die Datei fehlt.Techniker prüft Registry-Eintrag, Programmordner und Dateiberechtigungen.
Datenbankauswahl erscheintSelect Database ist aktiviert und mehrere Datenbankabschnitte sind vorhanden.Den für den Arbeitsplatz vorgesehenen Eintrag auswählen.
Server antwortet nichtDie optionale Ping-Prüfung oder der SQL-Verbindungsaufbau ist fehlgeschlagen.Netzwerk/VPN prüfen; nicht auf eine andere Datenbank ausweichen.
Ordner für Dateien fehltFolder for Files ist nicht vorhanden oder nicht erreichbar.Freigabe, Laufwerkspfad und Berechtigungen prüfen lassen.
Anmeldung schlägt fehlAutomatische oder manuelle Zugangsdaten sind ungültig.Keine Zugangsdaten ausprobieren; Administrator verständigen.

Für Techniker

Suchreihenfolge der Hauptanwendungen

CashDesk, Back Office und Access Control verwenden beim Start dieselbe Suchlogik. Ein vorhandener Registry-Pfad wird nur akzeptiert, wenn die bezeichnete Datei tatsächlich existiert. Andernfalls wird der ungültige Wert entfernt und die Suche fortgesetzt.

PrioritätQuelleDetails
1Benutzerspezifische RegistryHKCU\Software\PORTALUM\Divergent INI File, Wertname des jeweiligen App.ProductName.
2Allgemeine BenutzerkonfigurationGleicher Registry-Schlüssel, Wertname General.
3Vorgabe des SetupsHKUS\.DEFAULT\Software\PORTALUM\Divergent INI File, Wertname General.
4ProgrammordnerPORTALUM.ini im Ordner der gestarteten EXE.

In der Entwicklungsumgebung wird stattdessen die Datei devINI\PORTALUM.ini unterhalb des Source-Stamms verwendet. Fehlt sie, wird die Ausführung angehalten.

Übergabe per Programmparameter

Geltungsbereich: Der Parameter /INI wird von EasyConn-basierten Werkzeugen und einzelnen Zusatzanwendungen ausgewertet. Der aktuelle Startweg von CashDesk, Back Office und Access Control liest diesen Parameter nicht; dort gelten Registry und Programmordner.

EasyConn liest den Parameter über ParseCommandString("INI", Command$). Üblich ist ein vollständiger Dateipfad, beispielsweise:

Zusatzanwendung.exe /INI="D:\Portalum\Konfiguration\Portalum.ini"

Ohne Parameter verwendet EasyConn eigene Registry-Werte (EasyConn), anschließend die allgemeine Portalum-Vorgabe und zuletzt eine INI-Datei im Programmordner. Kann keine Datei bestimmt werden, kann das Werkzeug eine Dateiauswahl anzeigen.

Datenbankabschnitt auswählen

  1. Portalum liest [Application Login] und den Schlüssel Select Database.
  2. Bei False wird der Abschnitt [Database] verwendet.
  3. Bei True werden Abschnitte nach dem Muster [Database-Name] gesammelt und zur Auswahl angeboten.
  4. Schlägt die Verbindung fehl, kann als Rückfall [Case Database] verwendet werden, sofern dort ein unterstützter Typ konfiguriert ist.

Abschnitte [Database], [Database-Name] und [Case Database]

SchlüsselWert / VorgabeWirkung
TypJET oder SQLWählt den Datenbanktreiber und die nachfolgenden Verbindungsangaben.
Jet Database FileanmeVollständiger MDB-PfadJET-Datenbankdatei. Die historische Schreibweise Fileanme muss exakt beibehalten werden. SELECT öffnet eine Dateiauswahl.
Folder for FilesVorhandener OrdnerGemeinsame Basis für Berichte, Ressourcen, Protokolle und weitere Dateien; nicht mit der Datenbankdatei verwechseln.
SQL UserSQL-BenutzerAnmeldename für den SQL-Server.
SQL PasswordCodierter WertWird vor dem Verbindungsaufbau durch Portalum dekodiert. Der Dateizugriff muss trotzdem eingeschränkt werden.
SQL ServernameServer/InstanzName des SQL-Servers. SELECT startet die vorgesehene Serverauswahl.
SQL DatabasenameDatenbanknameName der SQL-Datenbank. SELECT startet die vorgesehene Datenbankauswahl.
Server IP for PingIP-Adresse, optionalPrüft die Erreichbarkeit vor dem Verbindungsaufbau. Bei einem Fehler kann der Verbindungsversuch dennoch bestätigt werden.
Cursor LocationCLIENTBestimmt die ADO-Cursorposition für die SQL-Verbindung.
UseRollBackBooleanÜbergibt die Verwendung der Rollback-Funktion an die Datenbankschicht.
DefaultDBName, optionalKompatibilitätsschlüssel für Programme, die ohne interaktive Auswahl eine Startdatenbank benötigen.

Abschnitt [Application Login]

SchlüsselWirkung
UserVorgabe für den Portalum-Benutzer. Unterstützte Platzhalter sind USERNETWORKNAME/NETWORKNAME, COMPUTERNAME und LASTUSER/LASTNAME.
PasswordPasswort für die automatische oder vorbelegte Anmeldung.
Auto LoginFührt die Anmeldung mit den hinterlegten Angaben automatisch aus.
Select DatabaseAktiviert die Auswahl aus den Abschnitten [Database-Name].

Abschnitte [DB Engine] und [POS Engine]

Abschnitt / SchlüsselWirkung
[DB Engine] LoglevelSteuert die Ausführlichkeit der Datenbankprotokollierung.
[DB Engine] ForceTCPIPErzwingt für die SQL-Verbindung das TCP/IP-Protokoll.
[DB Engine] CloseDB in [SEC]Zeit bis zum Schließen einer inaktiven Datenbankverbindung; Vorgabe im Code: 15 Sekunden.
[DB Engine] Close SQLSteuert das explizite Schließen der SQL-Verbindung.
[DB Engine] EnableCacheAktiviert den Cache der Datenbankschicht.
[DB Engine] ShowDebugAktiviert zusätzliche technische Ausgaben der Datenbankschicht.
[POS Engine] DebugAktiviert Diagnoseausgaben der POS-Komponente.

Neutrale Beispiele

Die folgenden Muster enthalten absichtlich keine realen Server, Benutzer oder Passwörter.

[Database]
Typ=SQL
SQL Servername=SERVER\INSTANZ
SQL Databasename=PORTALUM
SQL User=PORTALUM_USER
SQL Password=<codierter Wert>
Folder for Files=\\DATEISERVER\Portalum
Cursor Location=CLIENT
UseRollBack=True

[Application Login]
Auto Login=False
Select Database=False

[DB Engine]
Loglevel=1
ForceTCPIP=True
CloseDB in [SEC]=15
Close SQL=True
EnableCache=True
ShowDebug=False
[Database]
Typ=JET
Jet Database Fileanme=D:\Portalum\Daten\Portalum.mdb
Folder for Files=D:\Portalum\Dateien

[Application Login]
Auto Login=False
Select Database=False

Kontrollierte Diagnose

  1. Ermitteln, welche EXE und welcher Windows-Benutzer betroffen sind.
  2. In der Suchreihenfolge prüfen, welche INI-Datei tatsächlich gewählt wird.
  3. Dateiexistenz und Leserechte prüfen; Registry-Werte immer als vollständigen Dateipfad behandeln.
  4. Typ, Datenbankangaben und Folder for Files gemeinsam prüfen.
  5. Bei SQL zuerst Netzwerk/Ping, danach Server, Datenbank und Zugangsdaten testen.
  6. Debug- und Logeinstellungen nur für die Diagnose aktivieren und anschließend zurücksetzen.

Für Entwickler

QuellfundstelleVerantwortung
Frontends\Portalum\common\RegConst.basKonstanten, Registry-Pfade, Dateiname und FindINIDatei.
Frontends\Portalum\common\GlobalDaten.basINI-Schlüssel, Datenbankauswahl, OpenMainDB und OpenDBFromINIFile.
Frontends\Portalum\common\EasyConn.basAbweichende Suchfolge und Unterstützung des Parameters /INI.
Frontends\Portalum\common\Login.frmAutomatische Anmeldung und Auflösung der Benutzerplatzhalter.
Kompatibilität: Schlüsselbezeichnungen sind Schnittstellen. Insbesondere Jet Database Fileanme und CloseDB in [SEC] dürfen nicht sprachlich korrigiert oder ohne Migrationslogik umbenannt werden.