Menu

Manuela Settings

Gismo
Attachments
settings.png (3497 bytes)

Manuela Settings

Hier zu finden: |
---------- |
de.luh.iup.manuela.base.ManuelaSettings

Auf diese Klasse wird wird statisch zugegriffen, um folgende Daten zu erhalten:

  • Bestimmte Texte für Anwendungs-Benachrichtigungen als String.
  • Die Menü-Hierarchie als Map.
  • Pfade für Icons, die in der Applikation verwendet warden.
  • Informationen über den Status der aktuellen Session: Benutzer und Betrieb.

Informationen über den Status der aktuellen Session

Häufig genutzte Variablen

In den DAOs werden häufig Informationen der aktuellen Session benötigt, wenn es darum geht, die Daten genau dieses Betriebes im eingeloggren Jahr zu laden. Die gebräuchlichsten sind:

  • FARM_ID – Der Index des aktuellen Betriebes: Bezieht sich auf die Datenbank-Spalte ‚bid‘ (Betriebs-ID) in der Tabelle ‚betriebe‘.
  • SCENARIO_ID – Der Index des Szenarios ist sehr wichtig, da viele Tabellen über eine Spalte ‚sid‘ oder ‚szenario_id‘ verfügen. Das Szenario markiert, ob es sich um eine Simulation handelt (falls nicht ist sid = 0) und wenn ja, um welche. Spalten mit Szenario-ID verweisen mit einem Fremdschlüssel auf den PK der Datebnak-Tabelle ‚szenarien‘. Achtung! Dieser Wert kann bei DB-Abragen in DAOs leicht vergessen werden, da es in den meisten Tabellen (zur Zeit) nur Daten mit Szenario 0 gibt und nicht sofort ersichtlich ist, dass beim Weglassen dieser WHERE-Bedingung in der Query alle Szenarien gleichzeitig geladen werden, was meist nicht gewollt ist.
  • CURRENT_YEAR – Das aktuelle Jahr, unabhängig vom Jahr, für das sich der Benutzer eingeloggt hat. Dieser Wert kann in manchen Zusammenhängen wichtig sein, z.B. als Maximalwert, aber in den DB-Abfragen / den DAOs wir dmeist ein anderer Wert benötigt. Achtung! Verwechslungsgefahr mit SELECTED_YEAR.
  • SELECTED_YEAR – Das Jahr, für das sich der Benutzer angemeldet hat. Dies ist der Wert, der für die meisten DAOs wichtig ist.

Statische Variablen verändern

Auf den ersten Blick scheint es verweunderlich zu sein, das seine statische Variable, wie z.B. ‚SELECTED_YEAR‘ einen Wert enthalten soll, der erst nach dem Einloggen durch den Benutzer bekannt ist. Normalerweise funktioniert so etwas nicht mit statischen Variablen, doch hier wird (zur Zeit) ein Java-Bug ausgenutzt, der es erlaubt, den Wert ein einziges Mal zu setzen, so lange die Variable öffentlich (public) ist.


Related

Wiki: Inhalt

Auth0 Logo