RRZE – Projekte & Prozesse (P&P)

Das Blog der RRZE Stabsstelle "Projekte & Prozesse"

Content

Properties einer Grails-Domänenklasse auslesen

Bei der Deklaration einer Domänen-Klasse in Groovy wird auf die Bean-Notation für Variablen (Variable deklariert als private, zusätzlich Getter und Setter) verzichtet. Stattdessen werden sogenannte Properties definiert, die durch Groovy intern in Java-Beans umgewandelt werden.
[groovy]
class MyTest {
Long id
String val1, val2
}
[/groovy]
Oftmals ist es nötig, die Liste der Properties auszulesen, etwa um ein Objekt in ein anderes zu mappen. Hierfür bietet Groovy die Methode getProperties():
[groovy]
def x = new MyTest()
x.properties.each { key, value ->
println “Property ${key}. ${value}”
}
[/groovy]

Hier tauchen aber plötzlich Properties auf, die in MyType gar nicht definiert wurden, wie version, class, metaClass, constraints! Grails Magic, hier wurden durch das Grails-Framework weitere Properties hinzugefügt!

Wie kommt man nun an die Liste nur der selbst definierten Properties? Die Antwort liegt bei den persistentProperties, die in der Klasse liegen. Diese erreicht man über die DefaultGrailsDomainClass.
[groovy]
def persistentProps = new DefaultGrailsDomainClass(MyTest.class).persistentProperties
persistentProps.each {
println “${it.name}”
}
[/groovy]
Et Voila: Die Liste der persistenten Properties, in aller Regel der selbstdefinierten.

 

Read Properties of a Grails Domain Class

With the declaration of a domain class in  Groovy it is done without a Bean-Notation for variables (variable declared as  private, furthermore Getter and Setter). Instead so called properties are defined which are changed internally into Java-Beans by Groovy
[groovy]
class MyTest {
Long id
String val1, val2
}
[/groovy]
It is often necessary to read out the list, for example to map an object into another. Therefore Groovy offers the methode getProperties():
[groovy]
def x = new MyTest()
x.properties.each { key, value ->
println “Property ${key}. ${value}”
}
[/groovy]

At this points properties suddenly appear which haven’t been defined like version, class, metaClass, constraints! Grails Magic, further properties have been added by the Grails-Framework!

So how do you get the list of the self defined properties only? The answer lies within the persistentProperties, which are within the class. You can reach it via DefaultGrailsDomainClass.
[groovy]
def persistentProps = new DefaultGrailsDomainClass(MyTest.class).persistentProperties
persistentProps.each {
println “${it.name}”
}
[/groovy]
Et Voila: The list of persistent properties, usually the self defined.

Release 2.0.1 der Promovierendenverwaltung online

Seit Donnerstag, 28.07.2011 um 16:00 Uhr ist die Version 2.0.1 der Promovierendenverwaltung online geschaltet. Die wesentlichen Neuerungen zur Version 2.0 sind:

  • Betreuersuche auch per Nachname
    Einzutragende Betreuer konnten bisher nur über ihren Lehrstuhl bzw. Professur ausfindig gemacht werden. Dies führte bei Promotionsbetreuungsberechtigten, die direkt an einer Fakultät oder einem Department aufgehängt waren, dazu dass sie nicht über die GUI gefunden wurden und manuell einzutragen waren. Da die Promotionsbetreuungsberechtigten jetzt auch per Nachnamensuche gefunden werden, verringert sich die manuelle Nacharbeit.
  • Vorhandene Betreuungsbestätigung bei aktiven Promovenden
    Die in Version 2.0 bereitgestellte Dokumentenprüfung hatte noch nicht realisiert, dass bei aktiven Promovenden das Dokument “Betreuungsbestätigung” immer vorhanden ist. Diese Voreinstellung ist jetzt implementiert. Durch den Freischalteprozess ist sichergestellt, dass die vom Betreuer unterschriebene Betreuungsbestätigung eingegangen ist.
  • Möglichkeit, englische Dokumenten- und Schrittnamen zu verwenden
    Nun werden in der Oberfläche und den automatischen E-Mails bei englischen Texten auch englische Dokumenten- und Schrittbezeichnungen verwendet, sofern sie in der Datenbank hinterlegt sind.
  • Verbesserte Telefonnummern der Betreuer
    Die vom Funktionenmanagement (FM) gelieferten Telefonnummern von Promotionsbetreuungsberechtigten waren teilweise durch Hash-Zeichen voneinander getrennt als eine lange Zeichenkette hinterlegt. Man einigte sich darauf, nur die erste erscheinende Telefonnummer zu übernehmen. Alte Telefonnummern in docDaten wurden dementsprechend per SQL-Skript verbessert und neu hinzukommende werden nur bis zum ersten Hash berücksichtigt.
  • Verbesserte E-Mail-Texte
    Die automatisch versendeten E-Mails enthalten nun einen Hinweis auf die automatische Generierung.
  • Gendergerechte Formulierungen
    Wo nötig wurde in der Oberfläche “Promotionsbetreuer/in” geschrieben.
  • Promovenden-Daten-Exporte für Fachanwendungen
    Einige Fakultäten verwalten noch selbst Promovenden mittels Excel-Sheets. Es wurde die Möglichkeit geschaffen, einzelne Promovenden per Knopfdruck in die jeweiligen Excel-Formate zu extrahieren, damit sie nicht manuell in die Fachanwendung eingepflegt werden müssen.
  • Lockerungen von Problemfällen
    Speziell der Problemfall “Studienfach ist ungleich Promotionsfach” führte zu sehr vielen vermeintlichen Problemfällen. Die Problemfälle der technischen Fakultät und der Wirtschaftswissenschaften wurden reduziert, indem Listen von erlaubten Fächerkombinationen vereinbart wurden. Aktuell (Stand 01.08.2011) sind nur noch 348 Problemfälle im System.

Release 2.0.1 of PhD-student management online

 

Since Thursday, 28.07.2011 at 4 pm the version 2.0.1 of the PhD-Student Management is online. The essential improvements ,compared to version 2.0, are:

 

  • Search for advisers also per surname
    so far registered advisers could only be searched via their chair or their professorship. This caused that authorized PhD-advisers, who are directly connected to a faculty or a department, that they couldn’t be found via GUI and had to be added manually. As the authorized PhD-advisers can now be found via surname search, the manual rework can be reduced.
  • Existing adviser affirmations at active PhD-students
    The in version 2.0 provided document test had not yet realized that the document “Adviser Affirmation”is always available for active PhD-students. These pre-adjustments is now implemented. With the activation process it is secured that the from the adviser signed advising affirmation has been handed in.
  • Possibility to use English document- and step-descriptions
    Now in the surface and the automatically generated e-mails  with English texts, English document- and step-descriptions are used, insofar as they are saved in the database.
  • Improved phone numbers of advisers
    The from the function management (FM) delivered phone numbers of PhD-student advisers have, partially separated with hash-signs, been deposited as a long chain of signs. It has been decided, that only the first appearing phone numbers are adopted. Old phone number in docDaten were therefore improved via SQL-script and new added numbers are now incorporated until the first hash appears.
  • Improved e-mail
    The automatically sent e-mails now have a hint for the automatic generation.
  • Gender conform formulations
    Where necessary it is now written “PhD-student adviser (female/male)”.
  • PhD-students’ data export for application
    Some faculties still manage the PhD-students via Excel-sheets by themselves. There is now the possibility to extract PhD-students by pushing the button into the according Excel form, so that they don’t have to be inserted manually into the application.
  • Loosening of problem cases
    Especially the problem case “Subject of studies is not the PhD subject” caused a lot of problem cases. The problem cases of the technical faculty and economic science have been reduced by creating lists with allowed subject combinations. At the moment (date 01.08.2011) there are only 348 problem cases in the system.