SuperX

KontaktMail für InfosSuchenLogin

Einträge verstecken oder nicht-selektierbar machen

Es kann gewünscht sein, dass Einträge versteckt hinterlegt werden. Betrachtet sei weiterhin die Sicht 'FB/Fak, Lehreinheit, Fach/Abschluss'. Die unterste sichtbare Ebene ist Fach/Abschluss. Man könnte also annehmen, es würde genügen, diese Sicht bis zur Ebene Fach/Abschluss aufzubauen. Dem ist allerdings nicht so. Es benötigt eine weitere, darunterliegende, aber nicht sichtbare Ebene "Studiengang".

ViewFachAbschUDESichtbarUnsichtbar
 

Zum Verständnis ein Beispiel anhand der Auswertung "Studierende nach Alter". Zunächst wird eine Kombination "Fach/Abschluss" ausgewählt.

AuswahlSichtBWLBA
 

Es erscheint folgende Ergebnistabelle:

ErgebnistabelleStudierendeNachAlter
 

Im SQL erfolgt die Einschränkung auf den im Sichtenbaum ausgewählten Eintrag durch
where ... 's_' || L.tid in <@printkeys Studiengang.allNeededKeysList/<@printkeys Studiengang.allNeededKeysList/> ... .
Für unser Beispiel sieht diese Passage nach der Freemarker-Transformation folgendermaßen aus:
where ... 's_' || L.tid in ('_LE-WI_021_BS','s_3','s_36','s_33','s_65','s_270','s_87') ....
Würde die unterste, unsichtbare Ebene 'Studiengang' entfallen (s. View 'sos_org_lehre_fach_absch_ude'), sähe der SQL stattdessen so aus:
where ... 's_' || L.tid in ('_LE-WI_021_BS') ....
Das hätte zur Folge, dass keine Einträge gefunden würden, denn es wird nach dem Muster 's_tid' gesucht.

Um eine Ebene unsichtbar zu machen benötigt es das Attribut 'nodeattrib'. Wird diesem der Wert 1 übergeben, so ist die Ebene unsichtbar. Mit dem Wert 0 bleibt die Ebene sichtbar (s. View 'sos_org_lehre_fach_absch_ude', Zeile 21 und 30).

Weiterhin kann es gewünscht sein, dass man in einer Sicht nur spezielle Einträge auswählen kann.
So können man eine Lehreinheitsauswahl vielleicht so darstellen:

Uni XY

  • Fak 1
    • Lehreinheit A
    • Lehreinheit B
  • Fak 2
    • Lehreinheit C
    • Lehreinheit D

Die Kategorisierung Fak 1/2 dient der Klarheit der Darstellung, für eine Abfrage soll aber vielleicht nur eine konkrete Lehreinheit auswählbar sein. In dem Fall kann wie oben das nodeattrib 2 vergeben werden. Dadurch wird ein Eintrag als nicht-selektierbar markiert.