Das JRDashboard eignet sich hervorragend dazu, statistische Informationen aus dem JobRouter zu ermitteln. Manche der Informationen finden sich bereits auf verschiedenen Dialogen im JobRouter selbst, andere lassen sich aus der Datenbank ermitteln. Das Zusammenführen verschiedenster Daten und deren grafische Darstellung macht den Einsatz von JRDashboard besonders wertvoll.

In diesem Artikel zeigen wir Ihnen, wie Sie sich alle JobRouter-Benutzer, die noch keinen Schritt bearbeitet haben, anzeigen lassen.

Ein neues Dash-Element anlegen

Öffnen Sie das JRDashboard und fahren Sie mit der Maus über den Button Administration. Im aufklappenden Menü wählen Sie den ersten Eintrag „Dash-Konfiguration“ durch einen Klick darauf aus. Darauf erscheint die Übersicht der angelegten Dashboards. Klicken Sie bei dem gewünschten Dashboard auf die Schaltfläche „Dashboard konfigurieren“. Es erscheint die Übersicht der auf diesem Dashboard angelegten Elemente. Klicken Sie auf „Element hinzufügen“. Ein neues Dash-Element wird am Ende der Seite eingefügt. Ziehen Sie dieses nun auf die gewünschte Größe und verschieben Sie es an die gewünschte Position. Geben Sie nun eine Überschrift ein, wählen Sie als Darstellungsart Diagramm und als Diagrammart zunächst „Balken“. Als Theme können Sie die Einstellung „Default“ beibehalten. Speichern Sie nun das Dashboard.

Das SQL-Statement erstellen

Nun gilt es die notwendige Datenbankabfrage zu erstellen. Am sinnvollsten ist es, dass SQL-Statement zunächst in einem SQL-Editor komplett zu erstellen und erst das fertige Statement zu übernehmen, um Fehler schneller zu erkennen.

Wir benötigen zunächst eine Liste der Benutzer des JobRouter, die wir aus der Tabelle der JRUSERS ermitteln. Zusätzlich benötigen wir die Schritte der einzelnen Vorgänge. Dazu fragen wir die Tabelle JRINCIDENTS ab. Bei der Verknüpfung der beiden Tabellen arbeiten wir mit einem LEFT OUTER JOIN, da auch Benutzer ohne einen Eintrag in der Tabelle JRINCIDENTS angezeigt werden sollen. Das führt uns zu folgendem SQL-Statement:

SELECT jru.username as Name, count(jri.username) as 'Bearbeitete Schritte' FROM JRUSERS jru LEFT OUTER JOIN JRINCIDENTS jri on jru.username = jri.username GROUP BY jru.username

Das Ergebnis ist eine zweispaltige Tabelle. In der ersten Spalte steht der Benutzername und in der zweiten Spalte die Anzahl der bearbeiteten Schritte. Diese SQL-Abfrage übertragen wir nun in das JRDashboard.

SQL-Statement in das JRDashboard übernehmen

Zurück im JRDashboard bearbeiten wir nun die Datenquelle. Dies erfolgt mit einem Klick auf den entsprechenden Button des Dash-Elements. Es öffnet sich ein Dialog, in dem zuerst die Datenquelle auszuwählen ist. Für dieses Beispiel wird die JobRouterConnection benötigt, da wir Tabellen des JobRouter abfragen wollen. In das Eingabefeld Abfrage wird das SQL-Statement kopiert. Mit einem Klick auf „Anwenden“ kehren wir zur Konfigurationsseite des aktuellen Dashboards zurück.

Das Dashboard muss nun noch gespeichert werden. Anschließend kann mit einem Klick auf „Dashboard“ die neue Grafik überprüft werden:

Erweiterung der Abfrage und Anpassung der Darstellung

Das erzeugte Diagramm erfüllt bereits formal die gestellten Anforderungen. Es bieten sich aber noch einige Erweiterungen bzw. Anpassungen an. So lässt sich aus der Anzahl der bearbeiteten Schritte nicht zwingend ablesen, ob der Benutzer den JobRouter auch tatsächlich nutzt. Denkbar sind Benutzer, die nur administrative Aufgaben haben oder auch Prozessdesigner, die nicht zwingend fertige Prozesse nutzen. Aus diesem Grund ist es interessant, eine weitere Größe mit in die Abfrage aufzunehmen, die Anzahl der Logins. Dazu wird das SQL-Statement wie folgt angepasst:

SELECT jru.username as Name, jru.login_count as Anmeldungen, count(jri.username) as 'Bearbeitete Schritte' FROM JRUSERS jru LEFT OUTER JOIN JRINCIDENTS jri on jru.username = jri.username GROUP BY jru.username, jru.login_count

Dieses SQL-Statement wird wieder in die Datenquellenkonfiguration des entsprechenden Dash-Elements übernommen. Dadurch enthält das Ergebnis eine zweite Datenreihe mit Werten für die Anzahl der Anmeldungen. Demzufolge sollte das Diagramm etwa so aussehen:

Letzte Feinheiten in der SQL-Abfrage

Etwas störend an der aktuellen Abfrage ist, dass der Benutzername ausgegeben wird, der unter Umständen schwierig zuzuordnen ist. Daher wird in einem letzten Schritt das SQL-Statement noch dahingehend angepasst, dass Vor- und Familienname des Benutzers ausgegeben werden. Dies wird durch eine Verknüpfung der entsprechenden Spalten aus der Tabelle „JRUSERS“ erreicht.

SELECT (jru.lastname + ', '+ jru.prename) as Name, jru.login_count as Anmeldungen, count(jri.username) as 'Bearbeitete Schritte' FROM JRUSERS jru LEFT OUTER JOIN JRINCIDENTS jri on jru.username = jri.username GROUP BY jru.lastname, jru.prename, jru.login_count

Auch dieses SQL-Statement wird nun wieder in die Konfiguration des Dash-Elements übernommen. Auf Wunsch kann auch ein anderes Farbset (Theme) gewählt werden. Im Beispiel haben wir uns hier für „Silver“ entschieden.

Verschiedene Diagrammarten einsetzen

Als letzter Schritt bleibt noch die Auswahl einer anderen geeigneten Diagrammart. Im konkreten Fall wären z.B. auch ein Säulen-, Linien- oder Flächendiagramm mögliche Alternativen.

Letzte Anmerkungen

Abschließend noch einige Anmerkungen zur vorgeschlagenen Lösung. Wenn die vorgeschlagene Abfrage auf einem Produktivsystem mit vielen Benutzern eingesetzt wird, dann wird in der Grafik mit hoher Wahrscheinlichkeit nicht viel zu erkennen sein. Zwar kann in die Grafik hineingezoomt werden, aber es fehlt der Gesamtüberblick. Für einen Produktiveinsatz wird man daher die Daten weiter einschränken müssen.

Einerseits könnten zum Beispiel alle Benutzer, die Schritte haben ausgeblendet werden. Damit im Diagramm dann trotzdem noch etwas angezeigt wird, sollte aber die Anzahl der Anmeldungen weiterhin ausgegeben werden. Eine andere Einschränkung könnte entweder auf Abteilungen (z.B. „Buchhaltung“) oder ähnliche Benutzerdaten erfolgen. Alternativ wäre auch eine Einschränkung auf Prozesse oder gar Schritte möglich. In diesem Bereich sind also zahlreiche Erweiterungen denkbar.

Eine weitere Möglichkeit stellt auch die Darstellung als Tabelle dar. Bei dieser Darstellung wird die Auflistung in mehrere Seiten aufgeteilt, so dass bequem geblättert werden kann.

Außerdem sollte bei der Interpretation auch die Datenbasis bedacht werden. Je nach Konfiguration des JobRouter wird nur eine begrenzte Anzahl an Vorgängen im Produktivsystem vorgehalten. Erfolgreich beendete Vorgänge werden ggf. archiviert oder gelöscht und fehlen in der Statistik. Bei einer Archivierung könnte aber eine zusätzliche Abfrage über die Archivdatenbank ergänzende Informationen liefern.

An diesem Beispiel wurde gezeigt, wie einfach es ist, Informationen aus dem JobRouter abzurufen und grafisch darzustellen. Sollten Sie dazu Fragen oder Anregungen haben, können Sie uns gern kontaktieren.