GetObjectDimension & GetObjectMeasure - undokumentierte Qlik Chart Funktionen

Qlik vergisst gerade gerne neue Funktionen in den Release Notes zu erwähnen. Barry Harmsen hat gerade das neue Autonumber Script Statement beschrieben. Die beiden Chart Funktionen getObjectDimension und getObjectMeasure werden zwar von der Qlik Code Completion vorgeschlagen, in der Dokumentation sind sie aber nur bei der Funktion "GetObjectField" angedeutet.

Die GetObject* Funktionen in der Qlik Auto Completion
Die GetObject* Funktionen in der Qlik Auto Completion


Seit einigen Versionen hat auch Qlik Sense die Funktionalität Spalten (Dimensionen und Kennzahlen) in Diagrammen dynamisch ein- und auszublenden.

Hier kann man sich die getObjectDimension und getObjectMeasure zu nutzen machen, um abzufragen was denn gerade der Titel der jeweiligen Spalte ist:

Ist die Spalte "Count" eingeblendet wird "Anteil der Firmen" angezeigt

Ist die Spalte "Revenue" eingeblendet wird "Anteil des Umsatzes" angezeigt

Die Funktionen können als Kennzahl genutzt werden


oder zur Definition der Hintergrund/Textfarben. Leider kann man momentan die Funktionen nicht für die Titelbeschreibung der Charts nutzen.



Die Funktionen liefern die Beschriftung der Spalten, und nicht deren Definition.  Fügt man also zb. das Feld "Region" als Spalte ein, ändert aber den Titel auf "State" so liefert GetObjectDimension(1) auch die Bezeichnung "State".


Ändert man die Spaltenreihenfolge mittels Drag&Drop ändern sich die Formelergebnisse ebenfalls nicht. Es scheint also so, als würden die beiden Funktionen auch interne Indexe zugreifen!


Mit GetObjectDimension() kann man auch auf Alternative Dimensionen zugreifen. Zum Beispiel könnte man sagen für "Kategoriename" macht man ein normales PieChart, wenn aber auf "Artikelname" geswitcht wird, nutzt man die Radius-Formel  für ein RoseChart. Damit kann man wieder einiges steuern, wo wir in QlikView die Zyklische Gruppe & getcurrentfield()-Funktion hatten.

GetObjectDimension für Alternative Dimensionen 1
PieChart mit "KategorieName" als Dimension und "Artikelname" als Alternative Dimension



GetObjectDimension für Alternative Dimensionen 2
Wenn man auf die Alternative Dimension "Artikelname" switcht, wird ein Rose Chart daraus.



GetObjectDimension in Formel nutzen
Hier die Radiusformel mit GetObjectDimension(0) um das Rose Chart zu generieren.




Die Beispiel .qvf finden Sie hier. Hier der Qlik Knowledge Base Artikel zu den Funktionen:
https://support.qlik.com/articles/000058438



Process Mining mit Qlik Sense


Das Thema Process Mining begleitet uns seit einigen Jahren durch unsere Qlik Projekte.  Mit der Process Mining Extension von Mehrwerk für Qlik Sense ergeben sich ganz neue Möglichkeiten beim Bau eines Qlik Dashboards.

Process Mining mit Qlik Sense
Process Mining mit Qlik Sense


Die Darstellung von Prozessen in QlikView war stets schwierig, weil Prozessinstanzen beliebig viele Prozessschritte haben können, und keine Standarddarstellung hier ein befriedigendes Ergebnis liefert.

In einigen Projekten haben wir uns mit dem Parallel Coordinates Diagramm beholfen, um so etwas wie einen "Happy Path" darzustellen. Wenn im Prozess jedoch "Schleifen" vorkamen, oder der gleiche Prozessschritt von der Prozessinstanz mehrmals durchlaufen wurde, war die Darstellung nicht ideal.


QlikView - Parallel Coordinates für Prozessdarstellung
QlikView - Parallel Coordinates für Prozessdarstellung. Die dicke Linie ist die häufigste Prozessvariante



In Qlik Sense sieht die "Process Mining-Welt" nun anders aus: Die Qlik Sense Extension von Mehrwerk kommt einerseits mit der graphischen Extension, andererseits aber auch mit einem fertigen Script um die Prozessvarianten inklusive Schleifen zu erkennen und in einem Qlik Sense Template Dashboard darzustellen.


Datentechnisch ist der Input für Process Mining relativ straight forward. Typischerweise haben die Kunden diese Daten in Ihrem ERP oder MES-Systemen so oder so ähnlich vorliegen. Zwingend sind die 4 Spalten:

  • CaseID
  • ActivityName
  • ActivityStart
  • ActivityEnd

Process Mining Vorlage
Process Mining - Vorlage Datenstruktur

Zusätzlich können die Daten natürlich in Qlik angereichert werden. So kann sowohl für jede einzelne Process-Instanz (CaseID) als auch bei den einzelnen Activities verschiedene Attribute wie Kosten pro Maschinenstunde, etc. hinterlegt werden.

Um das Qlik Sense Process Mining Template zu beladen, muss man entsprechend im Script einige Zeilen auf die Namenskonventionen des Templates anpassen. Der Rest wird dann durch das mitgelieferte Qlik Sense Script angereichert. Die Rohdaten bleiben im Qlik Dashboard aber immer erhalten und können dort zur Validierung der Zahlen herangezogen werden.

Process Mining Qlik Template Script
Template Script um eigene Processdaten zu laden


Somit hat man nach kurzer Zeit ein befülltes Process Mining Dashboard um erste eigene Prozess-Daten sichten zu können. Und bisher war das immer ein spannender Augenblick :-)


Im Beispiel unterhalb sieht man, dass es für unseren Prozess 7059 verschiedene Ausprägungen existieren. Die graphische Process Mining Extension rechts zeigt defaultmäßig die Top 10 Varianten, mit denen 74,94% aller Prozessinstanzen abgedeckt werden.

Process Mining Qlik Dashboard
Process Mining Dashboard

Process Mining Qlik Extension Details
Die Process Mining Extension im Detail
Die Activities und Prozesskanten können natürlich wie gewohnt in Qlik Sense selektiert werden, und das restliche Dashboard passt sich entsprechend an.

Für komplexere Abfragen von Prozessen kann man auch den integrierten Querybuilder nutzen. Damit lassen sich dann Abfragen bilden wie: Gib mir alle Prozessvarianten die als zweite Aktivität "Change Quantity" haben, und später die Aktivität "Remove Payment Block" vorkommt. Eine solche Abfrage wäre mit der normalen Qlik Grün/Weiß/Grau-Logik nicht einfach zu bewerkstelligen.

Process Mining Qlik Query Builder
Query Builder um bestimmte Prozessvarianten abzufragen

Das Qlik Sense Process Mining Template enthält noch viele spannende Themen wie:

  • Abweichungen vom Standardprozess 
  • Comparison von Prozessinstanzen mit Qlik Alternate States (Auswahlräumen)
  • Impact Analysen
  • Time Analysis

Natürlich kann die Qlik Sense Applikationen wie gehabt nach Ihren Wünschen angepasst und um eigene Arbeitsblätter erweitert werden.

Unterhalb noch einige Screenshots. Am meisten Spaß macht es aber das Thema mit den eigenen Daten auszuprobieren. Bei Interesse, nehmen Sie gerne mit uns Kontakt auf!

Process Deviation Analysis
Process Deviation Analysis - Abweichungen vom Sollprozess


Comparison Analysis mit Qlik Alternate States
Comparison Analysis mit Qlik Alternate States

Raw Data die das Dashboard befüllt
Raw Data, die das Dashboard befüllt


"Qlik on Steroids" für Admins - QIX & Audit Log

Mit dem November 2018 Release hat auch QlikView den QIX-Log bekommen. Bisher war das Verhalten der Qlik Engine eine ziemliche Blackbox. Warum und wodurch wieviel RAM benutzt wird, war sehr schwer zu sehen. Mit dem neuen QIX-Log plus einem aktiven Audit Log können Qlik-Administratoren jetzt tief eintauchen und genau sehen was auf ihren Servern so vor sich geht!

Jedes Objekt und Dokument das bestimmte CPU- oder Memory-Grenzen übersteigt wird im QIX Log protokolliert. Auf Basis dieser Daten kann ein Dashboard gebaut werden, welches die teuren Dashboards & Objekte der gesamten Umgebung aufzeigt, und durch welche Userinteraktionen viel Leistung verbraucht wird.

Heldendaten Analyse QIX und Audit Log
Analyse Applikation zum QIX Log

Der QIX Log wird über die settings.ini des QlikView Servers aktiviert. Eine genaue Beschreibung der Felder und Einstellungsmöglichkeiten finden sich in der QIX Perfomance Log Hilfe

In unserem Beispiel haben wir sehr niedrige Grenzen gewählt. Ein QIX Logeintrag entsteht, wenn:

- Warning wenn Object Process Time > 2 Sekunden
- Error wenn Object Process Time > 4 Sekunden
- Warning Peak Memory wenn mehr als ~500 MB
- Error Peak Memory wenn mehr als ~1GB

Diese Parameter müssen Sie entsprechend Ihrer Umgebung anpassen. Bei 2 Sekunden bekommen Sie wahrscheinlich zu viele Warnings.

QlikView Server settings


Im Beispiel sehen wir, dass das Chart CH454 bis zu 763MB für die Berechnung benötigt.

Heldendaten QIX Analyse
Problemobjekte pro Qlik Anwendung


Das allein ist eine interessante Information, die ohne QIX Log am Server bisher nicht ersichtlich war. Noch spannender wird es, wenn man in der QMC den AuditLog aufgedreht hat. Audit Log und QÍX Log lassen sich nämlich über das gemeinsame Feld "SessionId" verschneiden.


Qlik Audit Log
Audit Log in der QMC


Somit sieht man welcher User in welcher Session mit welchen Selektionen das "teure" Chart verursacht hat. Im "QIX Warnings und Errors" Diagramm am Screenshot unterhalb sieht man, dass der User in der Session das Objekt dreimal aufgerufen hat, und es jedes Mal zu einem QIX-Error geführt hat.


Wählt man nun die betroffene SessionId, kann man sich den genauen Verlauf des Problems ansehen.
In unserem Fall sind die Einträge des QIX-Log rot, die Einträge des AuditLog blau.

Man sieht, dass der User  im Feld "Segment_Long_Name_Filter" "Austria" gewählt hat. Darauf hin rechnet das CH454 für 19 Sekunden und verbraucht 464MB RAM. Danach wählt der User im Feld "Month_Filter" den Wert "Jun", das Chart rechnet 34 Sekunden und verbraucht 763MB RAM.

QIX Audit Log Zeitverlauf einer Session
QIX und Audit Log im Zeitverlauf verschnitten

Im rechten Balkendiagramm sieht man auch, dass am Anfang der Session sehr viele Selektionen getroffen werden (Blaue Balken des Audit Logs). Dies sind wahrscheinlich viele initiale Selektionen die in der QlikView App definiert sind. Danach kommen viele QIX-Alarme (rote Balken). In der Applikation dürfte es also mehrere Objekte auf einem Dashboard geben, die viel Rechenleistung benötigen.

Das QlikView Dashboard finden Sie hier.



Für Qlik Sense existiert ein ähnliches Dashboard. Siehe Video unterhalb. Der Download findet sich auf Github.


QIX und Audit Log bilden eine neue Sicht auf die Performance des Qlik Servers. Mit der gewonnenen Information kann der Qlik Administrator gezieht auf die Entwickler des Dashboards zugehen und auf gewisse Objekte aufmerksam machen. Oft können durch einfache Anzeigebedingungen, oder Überarbeitung der Formeln die größten Performancefresser schnell beseitigt werden.

Zusätzliche Features mit der Qlik Sense Enterprise Lizenz

Die Qlik Sense Enterprise Lizenz schaltet mehr Features & Software Produkte frei als man glauben könnte: Erweiterte Geoanalysen, Webkonnektoren zu Anbietern wie Google Analytics, Microsoft Dynamics CRM  sowie das Qlik Datamarket Essentials Paket. Hier ein kleiner Überblick was man mit der Qlik Sense Lizenz alles machen kann.

Qlik Geo Analytics mit Qlik Sense Lizenz
Qlik Geo Analytics mit Fahrtzeiten. Freigeschalten mit der Qlik Sense Lizenz

Im Qlik Sense LEF File finden sich einige interessante Einträge mit dem Keyword "YES".  Wir  wollen hier Schritt für Schritt darauf eingehen was welcher Eintrag bedeutet.

Die markierten Einträge erlauben es, mit der gleichen Lizenz nicht nur Qlik Sense Enterprise zu aktivieren, sondern auch die Qlik Produkte GeoAnalytics, Webconnectors und Qlik Datamarket Essentials.

Diese Addons sind Akquisitionen die die Qlik in den vergangenen Jahren getätigt hat. Als Qlik Sense Kunde darf man diese nun "mitbenutzen". Die Download stehen auf der Qlik Downloadseite bereit, sofern Ihr Qlik Community User dafür korrekt freigeschalten ist. Ansonsten nehmen Sie bitte Kontakt mit uns auf.


Qlik Datamarket Essentials

Qlik hat Ende 2014 die Firma Datamarket.com gekauft. Mit dem Lizenzeintrag "QDM_ESSENTIALS" wird bei der Qlik Sense Installation ein zusätzliches Datenpaket "Essentials" freigeschalten, das folgende Dateninhalte im Qlik Sense Datamanager bereitstellt.

Qlik DataMarket Essentials Paket
Qlik DataMarket Essentials Paket

Wählt man zum Beispiel "Currency", kann man sich über einen Dialog die Währungsumrechnungen in den Daten ergänzen.

Qlik Datamanager bietet einen Wizard zum Hinzufügen der Daten

Das Paket ist ganz nett, aber gleichzeitig auch recht eingeschränkt. Es gibt weitere kommerzielle Pakete, oder man nutzt andere APIs um zum Beispiel detailliertere Wetterdaten zu bekommen.


Webconnectors

2016 hat Qlik die Firma Industrial Codebox gekauft. Diese hat sich auf die Entwicklung von Konnektoren zu Webservice wie Google Analytics, Facebook, Twitter, Microsoft Dynamics CRM konzentriert.

Die Qlik WebConnectors sind ein eigenes Setup, dass man als Windows Service laufen lassen kann. Das Qlik Ladescript greift dann auf die Daten via HTTP zu und übergibt die Parameter in der URL.

Die Standardkonnektoren kann jeder QlikView und Qlik Sense Kunde frei installieren. Mit der Lizenzzeile "WEBCONNECTORS" können Sie aber auch alle Premium Konnektoren nutzen, und unterliegen nicht dem halbjährlichen Upgradezwang der Standardkonnektoren.

Qlik Sense Lizenz einspielen um Premium Konnektoren zu aktivieren
Qlik Sense Lizenz einspielen um Premium Konnektoren zu aktivieren


Diese zusätzlichen Konnektoren sind nun freigeschalten




Geo Analytics

Qlik hat die skandinavische Geo Analytics Firma Idevio Maps im Jahr 2017 gekauft. Diese bot  kommerzielle Extensions für QlikView und Qlik Sense an. Seither wandern viele Features von Idevio in das Qlik Sense Standard-Kartenobjekt. Die Idevio Funktionalität existiert aber weiterhin und kann mit den Lizenzeinträge GEOPLUS und GEO ANALYTICS installiert & freigeschalten werden.

Unterhalb sieht man wie sich die Qlik Sense Extensions sogar noch als "Idevio" registrieren.



Die Extensions bieten einige interessante Darstellungen wie Fahrzeitanalysen zu Standorten an. Dafür werden jedoch Daten in die Cloud geschickt.

Weiters besteht natürlich das Risiko, dass diese Extensions langsam "sterben", wenn alle Features in das Qlik Sense Standardkartenobjekt wandern. Auch der Druck mit NPrinting und die Integration in Stories ist nicht möglich.

Qlik Geo Analytics Travel Time
Qlik Geo Analytics Travel Time

Catchment area
Qlik Geo Analytics Catchment Area


Qlik Geo Analytics - Potential for new location



Weiters kann man den Geo Analytics Connector Qlik GeoAnalytics Connector im Qlik Datamanager nutzen. Leider ist aber hier die Address Lookup Funktion nicht freigeschalten.

Qlik Geo Analytics Connector


Qlik Geo Analytics Connector - Operatoren



QlikView and Qlik Sense - Important Security Fix now available in new Service Releases and Patches

Bitte folgenden Beitrag auf dem Qlik Support Blog beachten:



https://community.qlik.com/t5/Qlik-Support-Updates-Blog/QlikView-and-Qlik-Sense-Important-Security-Fix-now-available-in/ba-p/1569608


Wenn Sie Unterstützung benötigen, bitte nehmen Sie Kontakt mit uns auf!

Folgende FAQ hat Qlik nun bereitgestellt: https://support.qlik.com/articles/000073349


heldendaten GmbH,2017