Seitenhistorie
Seiteneigenschaften | ||||||||||||||||||||||||||||
---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|
|
Ziele
- Nuclos soll um ein hierarchisches Mandantenwesen erweitert werden.
...
Anforderungen
# | BeschreibungPriorität | Nuclos Version | Notizen | ||
---|---|---|---|---|---|
1 | Neues SystemBO "Mandant" | 14.2 |
| ||
2 |
| ||||
1 |
| 3 | Neues SystemBO "Mandanten Parameter Wert" | 14.2 |
|
4 | Neues SystemBO "Mandanten Zuordnung" | 14.2 |
| ||
5 | BO Wizard um Konfiguration der Mandantenabhängigkeit erweitern | 1 |
| ||
5a | Neues SystemBO "Mandanten Ebene" | 4.2 |
| ||
6 | Existiert für ein BO eine Abhängigkeit, wird automatisch in Suchergebnislisten, SubformsUnterformulare, Aufgabenlisten, Datenquellenergebnissen eingeschränkt | 14.2 |
| ||
7 | Neue Datensätze werde automatisch mit dem angemeldeten Mandanten verknüpft, falls erforderlich | 14.2 |
| ||
8 | Der Loginbildschirm wird um die Auswahl des Mandanten erweitert | 14.2 |
| ||
9 | Arbeitsumgebungen merken sich die zuletzt geöffneten Tabs abhängig pro Mandant | 1OFFEN | |||
10 | 1 |
|
| ||
11 | 1 |
| |||
12 | Datenquellen Ausführung erweitern | 1OFFEN |
| ||
13 | Neue Berechtigung auf SQL Ebene einer Datenquelle | 1OFFEN |
|
...
14 | Optionale Mandanten Provider | 4.2 |
|
Benutzerinteraktion und -design
Mandanten bzw. die Hierarchie wird in einer neuen Maske in der Administration konfiguriert. Die Parameter Werte für Mandanten werden im Nuclet Management bei den Parametern gepflegt. bzw. die Hierarchie wird über einen Baum konfiguriert. Name, Parameterwerte etc. werden in einem Eigenschaftsbereich rechts vom Baum konfiguriert.Neue Maske für die Administration der Mandanten Parameter (nicht für die Werte)
Fragen
Unten finden Sie eine Liste von Fragen, die aufgrund dieses Anforderungsdokuments angesprochen werden müssen:
Frage | Ergebnis |
---|---|
Welche Felder benötigt der Mandant ein Parameter noch? | vorerst keine weiteren |
Wird ein Schnellwechsel, ohne erneute Authentifizierung, benötigt? | |
Klassen Generierung: Eine Klasse pro Nuclet mit den zugewiesenen Mandanten Parametern als Konstanten. Oder eine eigene Klasse pro Parameter? Interface Name " | Name des Interfaces für mandantenfähige BOs: Multitenant (neben Stateful, etc.) - wird erstmal nicht benötigt. Da es um den Parameter geht... MandatorParameter?! |
Datenquellen um einen neuen automatischen Parameter "MANDATOR" erweitern? (Ähnlich dem Username) | |
vorerst nicht | |
Man kann eine Ebene nachträglich nur schwer zwischen vorhandenen platzieren. Z.B. man hat Anfangs die "Bundesländer" nicht gebraucht. Sollte man Ebenen extra Definieren? | Ja, werden extra definiert. Es kann allerdings nur die Beschriftung geändert werden. (Siehe auch Punkt 5a) |
Zu klären: Defaultbelegung bestehender Datensätze bei nachträglicher Einführung der Mandantenfähigkeit in einer Entität?Vielleicht ähnlich wie beim Pflichtfeld? | Ja, sind bereits Daten vorhanden, so muss ein Default Mandant ausgewählt werden. |
Zu klären: Verletzung der "referentiellen Integrität" bei Umhängen eines referenzierten Datensatzes zu einem anderen Mandanten kann nicht über die DB abgefangen werden. Aus Sicht des vorherigen Mandanten kommt das Umhängen aber einer Löschung gleich, darf also nicht zulässig sein, wenn referenziert. | Vielleicht prinzipiell nicht zulassen? Das macht aber das nachträgliche Aufteilen von Daten auf zwei Mandanten bei nachträglicher Einführung der Mandantenfähigkeit (s.a. Defaulbelegung, vorheriger Punkt) unmöglich Wird nicht zugelassen. Für eine nachträgliche Einführung und Aufteilung auf Mandanten muss eine Migration auf Datenbank Ebene entwickelt werden. Nuclos bietet hierfür vorerst keine Unterstützung an. |
Zu klären: Dropdowns und LOVs müssen ebenfalls dynamisch auf die für den jeweiligen Mandatenkontext sichtbaren Daten eingeschränkt werden. Was genau ist der Mandantenkontext? Alle hierarchisch unter dem angemeldeten Mandanten hängenden Mandanten? |
Verworfen
Umgesetzt. Ein Mandantenkontext besteht aus der Schnittmenge der Anmeldung plus den Mandanten des zu verarbeitenden Datensatzes. Dabei wird immer der komplette Baum der Hierarchie (Siehe auch Punkt 6) herangezogen. Somit erfolgt auch eine Einschränkung von LOV & Co. bei einem Superuser. |
Verworfen
- Mandanten Parameter
- Eigene Klassen/Konstanten für Parameter und Provider
- Direktes Arbeiten mit Mandant über Getter und Setter und Attributen für Querys.(noch nichts)