Die Bewerber-Info-Funktion

Über die Bewerber-Info-Funktion können sich Bewerber für zulassungsbeschränkte Studiengänge der Universität Erlangen-Nürnberg über den individuellen Ausgang des Zulassungsverfahren informieren, Ihren Zulassungs- / Ablehnungsbescheid als PDF herunterladen. Bei positivem Ergebnis kann der Immatrikulationsantrag ebenfalls als PDF heruntergeladen werden. 
Hierfür loggen sie sich auf "mein campus" mit ihrer Bewerbernummer sowie ihrem Geburtsdatum in der Form "JJJJMMTT" ein. Diese Login-Funktionalität unterscheidet sich vom normalen Login-Mechanismus, da die Daten mit einer anderen Tabelle in der Datenbank abgeglichen werden müssen. Der Problematik, diese Login-Funktionalität in den von uns angepassten normalen Login-Mechanismus zu integrieren, nahm sich unser Entwickler Thomas Zenglein an und entwickelte hierfür eine Lösung.
In einer Konfigurationsdatei wurde dieser Login-Mechanismus schließlich noch aktiviert.
Sind die Bewerber eingeloggt, gelangen sie auf ein vom restlichen "mein campus"-Portal separates Web-Frontend. Auf drei Menüpunkten können sie dort die wichtigsten Personenstamm- und Antragsdaten einsehen und können sich jeweils gegebenenfalls den Immatrikulationsantrag und den Zulassungs- oder Ablehnungsbescheid als PDF generieren lassen. Neben Velocity-Templates, die für das Layout sowie die Buttons, die die PDF-Generierung der Anträge und Bescheide anstoßen, verantwortlich zeichneten, musste das Tabellenlayout der Informationstabellen in diesem Frontend in XML-Konfigurationsdateien angepasst werden. Dort kann jeweils ein SQL-Statement angegeben werden, welches die jeweiligen Daten aus der Datenbank extrahiert. Außerdem wurden hier noch die Links zu den anderen Menüpunkten definiert. Diese Arbeit am Web-Frontend stellte jedoch nur einen minimalen Bruchteil des Gesamtaufwands dar.
Die Hauptaufgabe bestand darin, das Layout des Immatrikulationsantrags und der Zulassungs- und Ablehnungsbescheide als PDF nach Vorgaben der Studentenkanzlei bzw. der Zulassungsstelle zu definieren und diese Formulare mit Daten zu befüllen.
Während der Immatrikulationsantrag für alle zugelassenen Bewerber immer derselbe war, galt es, nicht weniger als drei verschiedene Zulassungsbescheide und neun verschiedene Ablehnungsbescheide umzusetzen. Ebenso wichtig wie die Definition dieser verschiedenen Layouts war es, exakt zu definieren, welcher Bewerber welchen Zulassungs- oder Ablehnungsbescheid mit welchen Hinweisblättern erhalten sollte.
Die Tatsache, dass abgelehnte Bewerber keinen Immatrikulationsantrag zum Herunterladen und Ausdrucken angeboten bekommen sollten, ließ sich leider nicht über den naheliegenden Weg, dann den Button nicht anzuzeigen, verwirklichen, da vom Layout-Template aus kein Zugriff auf das dafür verantwortliche Datenfeld in der Datenbank möglich war. 
Diese und die gesamte restliche Abfragelogik wurde innerhalb der XSL-Layoutstylesheets, die hierfür wie auch schon bei der Bewerbung & Zulassung verwendet wurden, umgesetzt. In einer Konfigurationsdatei sind die Datenbankabfragen definiert. Sie exportieren die für die Unterscheidbarkeit relevanten Datenfelder. Der Inhalt wird in XML überführt und ist somit aus XSL heraus verfügbar.
Ist es für den Immatrikulationsantrag nur nötig, zu prüfen, ob ein Bewerber angenommen oder abgelehnt wurde, so gestalteten sich die Abfragen für die verschiedenen Zulassungs- und Ablehnungsbescheide weitaus umfangreicher. So musste unter anderem überprüft werden:

  • ob die Bewerbernummer zwischen 100000 und 200000 liegt (sehr knifflig war hier, dass in XSL ein "<" oder ">" durch "&lt;" und "&gt;" ersetzt werden muss, ansonsten tritt ein Syntaxfehler auf)
  • ob der Bewerber zugelassen oder abgelehnt wurde (zu beachten war hier hauptsächlich, dass ein Bewerber in einem Zwei-Fach-Studium z.B. sehr wohl für ein Fach zugelassen, für das andere aber abgelehnt werden kann. Und Bewerbungen mit einem zulassungsfreien, noch offenen zweite Fach sind ebenfalls möglich und abzuarbeiten)
  • Abschluss- /Fachkombination: Bewerber in bestimmte Studiengänge sollten einen speziellen Bescheid bekommen, alle anderen Studiengänge außer diesen den normalen.
  • Sind besondere Hochulzugangsberechtigungen vorhanden, handelt es sich um einen Zweitstudienbewerber, wurde ein ungültiger Antrag eingereicht, muss noch eine Sport- oder Deutschprüfung abgelegt werden: jedesmal ist ein anderer Bescheid mit oder ohne die entsprechenden Hinweisblätter zu generierien.

Auch die Inhalte der Anträge und Bescheide wurden auf demselben Weg aus der Datenbank exportiert und in XML überführt, sodass die Daten im XSL-Layoutsheet verfügbar sind. So mussten z.B. für Ablehnungsbescheide Grenzwartezeiten und Grenznoten angegeben werden, zum einen allgemeine Werte für die einzelnen Studiengänge in verschiedenen Quoten, zum andern aber auch die persönlichen Werte des Bewerbers. 
Bei der Umsetzung der statischen Hinweisblätter kam die gute Grafikeinbindung von XSL-FO zu Hilfe, sodass diese Hinweisblätter nicht in ein XSL-Layout überführt werden mussten.
Diese Ausführungen zusammen mit dem Hinweis, dass das XSL-Layoutsheet für die Zulassungs- und Ablehnungsbescheide, welches das Layout und Abfragelogik aller 12 Bescheide enthält (lediglich die Hinweisblätter sowie der Seitenkopf des Anschreibens sind ausgegliedert) aus über 3300LoC besteht und auch der Immatrikulationsantrag nochmals mit über 2000LoC zu Buche schlägt, deuten die Komplexität dieses Projekts an.