Documents mit mehreren Mandanten
Documents ist multi-Mandantenfähig. Die Invoice-Web-Konfigurationen können angepasst werden, so dass die Mandanten unterschiedliche Datenbank-Konfigurationen nutzen können; unterschiedliche Table-Service Dienste angesprochen werden können und das unterschiedliche Squeeze-Konfigurationen angesprochen werden können. Dieses Kapitel beschreibt die Vorgehensweise.
- Voraussetzung
- Datenbankzugriffe über dbConn.json
- Datenbankzugriffe über den TableService
- Squeeze-Anbindung
Voraussetzung
Die multi-Mandantenfähigkeit wird ab der Version ----- unterstützt.
Datenbankzugriffe über dbConn.json
Generell enthalten alle Datenbank-Tabellen eine Licence-Spalte. Eine Datenbankkonfiguration kann demnach für unterschiedliche Documents-Mandanten auf dieselbe Datenbank verweisen. Eine strikte Daten-Trennung vereinfacht jedoch Stammdaten-Importe und Datensicherungen und ist daher klar zu empfehlen!
Technisch kann hierfür nicht dieselbe "dbConn.json"-Datei verwendet werden, da das Passwort des Datenbankbenutzers beim initialen Aufruf automatisch verschlüsselt wird. In anderen Mandanten kann dieses Passwort nicht wieder entschlüsselt werden. Als Lösung kann an den Documents-Mandanten die Eigenschaft "db.Conn.json" mit einem alternativen JSON-Dateinamen gesetzt werden. Die zugehörige Datei muss manuell erstellt werden. Die bestehende Datei kann hierfür kopiert und umbenannt werden.
Die Eigenschaft greift direkt. Über die WEB-Konfiguration kann der Zugriff für den neuen Mandanten gesetzt werden. Die Verwendung von mehreren Mandanten wird erleichtert, wenn pro Mandant separate Datenbanken verwendet werden.
Tabellen Import / Export
Auch die Tabellen-Importe und Exporte können durch zusätzliche Eigenschaften gesteuert werden. Die entsprechenden Ordner für "JsonImport" und "JsonExport" müssen manuell unter dem "DEXPRO"-Ordner erstellt werden. Entsprechend müssen die Eigenschaften "JsonImportPathFolderName" und "JsonExportPathFolderName" am Mandanten gesetzt werden.
Datenbankzugriffe über den TableService
Wenn bei der Verwendung von mehreren Mandanten unterschiedliche Datenbanken angesprochen werden sollen, dann sollte pro Mandant ein separater TableService installiert werden. Andernfalls wären unverhältnismäßig viele Anpassungen innerhalb einer Installation notwendig.
- Pfad kopieren und passend benennen
- Mandanten-Eigenschaft für Pfad setzen
- Port ändern
- Dienst unter neuem Namen installieren
Squeeze-Anbindung
Pro Squeeze Dokumentenklasse können zwar mehrere Exporte konfiguriert werden aber es werden immer alle Exporte ausgeführt. Pro Export kann nur ein fixer Documents-Mandant hinterlegt werden.
Um verschiedene Dokuments-Mandanten ansprechen zu können gibt es mehrere Optionen. Pro Mandant kann zum Beispiel an anderer Squeeze-Server angesprochen werden. Die Konfigurationsdateien "SqueezeConfig.js" und "ServerConfig.js" werden über die WEB-Konfiguration automatisch um explizite Einträge für die PEM erweitert. Wenn diese Einträge nicht enthalten sind wird automatisch die Standard-Konfiguration verwendet. Hierdurch bleibt das Verhalten abwärtskompatibel.