SQL-Funktionen für benutzerdefinierte Berichte

Zur Unterstützung fortgeschrittener Abfragen sind Platzhalter für die verschiedenen Funktionen vorhanden. Die Funktionsplatzhalter werden bei der Ausführung durch die entsprechenden SQL-Anweisungen ersetzt. Funktionen werden wie Parameter verwendet, jedoch beginnen ihre Namen mit dem Dollarzeichen ($). Platzhalter sind im Gegensatz zu Parametern definierte Berichtselemente, die nicht für eine bestimmte Testausführung angepasst werden können.

Die verfügbaren Funktionsplatzhalter sind in der folgenden Tabelle zusammengefasst:

Funktion Beschreibung Beispiel
$TODAY Diese Funktion gibt das aktuelle Systemdatum auf dem Datenbankserver zurück. Sie können auch $TODAY-1 für "Gestern" oder $TODAY-7 für "Vor einer Woche" schreiben. CreatedAt > ${$TODAY}
$DATE(Spalte) Gibt den Zeitstempel des Tagesbeginns in UTC zurück. In der Spalte wird Folgendes zurückgegeben: 2019-08-30 08:37:33 in CEST, was als 2019-08-30 02:00 gerendert wird.
$DATE('String') Diese Funktion konvertiert die übergebene Zeichenfolge in ein Datum im Datenbankformat. CreatedAt > ${$DATE('01/10/2005')}
$DAYS[p1;p2] Diese Funktion berechnet die Anzahl der Tage zwischen den beiden übergebenen Datumswerten. Als Parameter kann eine Spalte der Tabelle bzw. Ansicht oder $TODAY übergeben werden. Im folgenden Beispiel werden die in der letzten Woche erstellten Zeilen zurückgegeben: ${$DAYS[CreatedAt;$TODAY]} < 7
$WEEK(Param) Diese Funktion gibt die Wochennummer des übergebenen Parameters ($TODAY oder Spalte) zurück.
$MONTH(Param) Diese Funktion gibt den nummerischen Monatswert des übergebenen Parameters ($TODAY oder Spalte) zurück.
$YEAR(Param) Diese Funktion gibt das Jahr des übergebenen Parameters ($TODAY oder Spalte) zurück.
$USERID Diese Funktion gibt die ID des aktuell angemeldeten Benutzers zurück.
$USERNAME Diese Funktion gibt den Benutzernamen des aktuell angemeldeten Benutzers zurück.
$PROJECTID Diese Funktion gibt die ID des aktuell ausgewählten Projekts zurück.
$PROJECTNAME Diese Funktion gibt den Namen des aktuell ausgewählten Projekts zurück.
$REPORTNAME Diese Funktion gibt den Namen des aktuell ausgewählten Berichts zurück.
$REPORTID Diese Funktion gibt die ID des aktuell ausgewählten Berichts zurück.

Nachfolgend finden Sie den Code des vorinstallierten Berichts Anforderungen mit untergeordneten Anforderungen. In diesem Bericht wird eine ausgewählte Anforderung mit ihrer Anforderungs-ID angezeigt. Alle Einzelheiten ihrer untergeordneten Anforderungen werden ebenfalls angezeigt. Dieser Bericht zeigt, wie auf die Funktion $PROJECTID zugegriffen werden kann. Es sind auch die beiden Parameter "reqID" (Anforderungs-ID) und "reqProp_Obsolete_0" (veraltete Anforderungen anzeigen) vorhanden.

SELECT r.ReqID, r.ReqCreated, r.ReqName, r.TreeOrder
   FROM RTM_V_Requirements r INNER JOIN   
   TM_ReqTreePaths rtp ON (rtp.ReqNodeID_pk_fk = r.ReqID)   
   WHERE rtp.ParentNodeID_pk_fk=${reqID|22322|Requirement ID} AND   
   r.ProjectID = ${$PROJECTID} AND   
   r.MarkedAsObsolete=${reqProp_Obsolete_0|0|Show obsolete Requirements}   
   ORDER BY r.TreeOrder ASC