Qlikview: Understanding Of Charts - Line/Bar/Combi

Ich hoffe Ihr Verständnis für Charts ist besser als dieses Bild, das Ron Gilbert diese Woche auf seinem Blog gepostet hat:
http://grumpygamer.com/understanding_of_charts
Ein Chart, oder doch eher eine Monkey Island Schatzkarte?
Trotzdem gibt es in QlikView eine scheinbare Seltsamkeit: Warum gibt es ein Balkendiagramm und ein Liniendiagramm wenn es doch sowieso das Kombi-Diagramm gibt?  Ein Kombi-Diagramm funktioniert doch als Superset über die beiden anderen Diagramme, kann man doch pro Expression entscheiden ob man eine Linie, einen Balken oder Punkte sehen möchte.

Drei Charttypen für eine Lösung?

Natürlich gibt es einen Grund. Der Grund ist subtil, aber für die Entwicklung von interaktiven QlikView-Anwendungen durchaus wichtig. Die folgenden zwei Beispiele sollen Ihnen helfen das jeweils richtige Chart zu wählen!


Brush & Link zum Ländervergleich  - Linien vs. Kombi

Eine typische Darstellung ist die Umsatzentwicklung für Länder über die Zeit. Für solche Darstellungen wählt man gerne ein Liniendiagramm. Genauso gut hätten wir aber ein Kombi-Diagramm wählen können! Hätten wir? Naja, initial sehen beide Charts jedenfalls exakt gleich aus:


Der Unterschied wird mit der Anforderung, die wir oberhalb der Charts lesen können, wirksam:

"Der Anwender will Ausreißer mit einem Klick im Chart selektieren können, und weiterhin im  Monats-Verlauf Bezug auf die anderen Ländern nehmen!"

Selektieren wir zB im April die Ausreißerländer, bemerkt man den Unterschied. Zieht man im Liniendiagramm einen Selektionsrahmen, verhält sich das Liniendiagramm wie gewünscht. Wir sehen die drei Länder mittels Brush&Link hervorgehoben. Die Auswahlbox zeigt die drei ausgewählten Länder "Deutschland, Österreich, USA" an.

Liniendiagramm- Selektion im Chart wählt nur die zweite Dimension "Land"

Machen wir die gleiche Selektion im Kombi-Diagramm, so werden nicht nur die Länder, sondern auch der Monat "April" selektiert. Damit verliert man den Bezug zu den restlichen Monaten und sieht nur noch ein Chart mit Punkten (weil es nur ein Monat gibt).

Kombidiagramm - Selektion im Chart wählt Dimension "Monat" und "Land"
In dieser Situation ist also das Liniendiagramm die richtige Wahl. Dass das Kombidiagramm nicht immer schlechter sein muss, zeigt aber das nächste Beispiel.


Graphisches Filtern auf Detaildaten - Balken vs. Kombi

Die Ausgangssituation in diesem Beispiel ist gleich wie oberhalb. Wir wollen wieder den Umsatz pro Monat und Land auftragen. Diesmal stellt uns der Benutzer jedoch die Anforderung "die Bestelldetails-Tabelle mit einem Klick in der Graphik auf Monat & Land filtern".

Hier wählen wir als Darstellung ein Balkendiagramm und ein Kombi-Diagramm. Beide sehen initial wieder gleich aus. Der Tooltip zeigt uns netterweise schon  für "Monat = Juli und Land = Österreich" einen Umsatz von 5.791,75€.  Wenn man nun auf diese Segment klickt (oder Rahmen zieht), erwartet der Benutzer in der Tabelle "Bestelldetails" nur noch genau jene Bestellnummern, die genau zu diesem Betrag führen.

Balken- vs. Kombidiagramm um die Tabelle unterhalb zu filtern
Wie verhalten sich nun die zwei Diagrammtypen? Das Balkendiagramm ist hier nicht ideal: obwohl der Tooltip das Segment anzeigt, führt eine Selektion im Chart nur auf die Selektion des Monats "Juli", wodurch die Detaildarstellung noch immer mehr als 42.000 € anzeigt.
Anstatt auf 5.791,75 € zu filtern, sieht man bei Selektion im Balkendiagramm noch immer den Gesamtumsatz für Juli
In diesem Fall ist das Kombi-Diagramm die richtige Wahl. Die Selektion des Segments wählt sowohl den Monat "Juli" als auch das Land "Österreich". Das führt zu einer gefilterten Detailtabelle, die nur noch die gewünschten Bestellungen mit einem Gesamtbetrag von 5.791,75€ anzeigt.

Kombi-Diagramm -  Ein Klick filtert beide Dimensionen, was zu einer gefilterten Detailtabelle führt

Conclusio

Die eigentliche Darstellung von Kombi-Diagramm und  Balken/Liniendiagramm ist gleich. Der Unterschied tritt erst auf, wenn man zwei Dimensionen hat und der Benutzer direkt im Chart selektiert.

Zu finden ist die Beschreibung dieses Unterschied übrigens auch im QlikView Reference Manual Kapitel "49.2 Selections in Charts and Tables". Es gibt also doch gute Gründe für diese drei Diagrammtypen :)

Note!
Selections made directly in line charts and bar charts (not combo chats) showing more than one dimension will primarily apply to just one dimension. Selections In line charts primarily apply to the second dimension so that painting over a line selects the entire line over all x-axis dimension values. In bar charts the opposite applies, i.e. selections primarily apply to the first dimension.


Die .qvw zum Selbstprobieren finden Sie unter content.heldendaten.net.


Summer of Releases - Roambi for Android & Qlik Sense

Knapp bevor die meisten auf ihre wohlverdiente Sommerfrische entweichen, gibt es gleich zwei spannende neue Releases, die die Inhalte auf diesem Blog in Zukunft sicher mitbestimmen werden: Roambi for Android und Qlik Sense.

Wer ein supportes Android 4.4 Handy zu Verfügung hat, findet im Google Playstore Roambi 1.0 für Android. Der erste Release enthält vier Views: Card, Catalist, Layers, Superlist. Ich hoffe die anderen Views und Roambi Flow folgen bald!

Roambi Analytics on Android

In alter Tradition gibt es von Qlik die Personal Edition von Qlik Sense Desktop 0.96 zum gratis Download. Auf unserer Webseite haben wir ein Video für die ersten Schritte verlinkt.
Qlik Sense Desktop


Viel Spaß beim Ausprobieren & einen erholsamen Sommer!


Copy to Clipboard Document Extension for QlikView

Copy&Paste in die Zwischenablage wurde 1974 - also vor 40 Jahren - von Xerox erdacht und entwickelt. Seither sind wir es gewohnt Werte, Zeichen, ja ganze Dateien von Applikation A nach Applikation B zu kopieren (selbst  kreuz&quer über mehrere Server via Remote Desktop Sessions).

Mittlerweile schreibt es das Jahr 2014. Microsoft Office 365 läuft im Webbrower. 3D-Engines laufen ohne Plugin im Firefox.  Kann eine Webseite automatisch Werte in die lokale Zwischenablage kopieren? Nein (was aus Securitygründen vielleicht gar nicht schlecht ist). Gibt es einen Webstandard für das Clipboard? Jein. "Clipboard API and events" ist momentan ein Workingdraft der W3C. Gibt es Workarounds für aktuelle Browser: eine Menge :)

Vielleicht haben Sie im QlikView Full Browser (AJAX) Client auch schon einmal die Funktion
Rechtsklick>In die Zwischenablage kopieren>Wert der Zelle gesucht um zB einen Kundennamen oder eine Bestellnummer in die Zwischenablage zu kopieren?  Was im QlikView Developer/IEPlugin selbstverständlich ist, geht in einer modernen Webapplikation nicht ohne weiteres.

Was im installierten Plugin selbstverständlich ist,  ist in Webapplikationen gar nicht einfach

Dass eine Webseite nicht einfach über Javascript Werte in die Zwischenablage kopieren kann, ist bei näherer Betrachtung sogar sinnvoll. Nur weil ich irgendeine Seite im Internet ansurfe, soll diese nicht ohne jegliche Userinteraktion die lokale Zwischenablage programmatisch befüllen dürfen.

Für Applikationen wie dem QlikView Fullbrowser Client ist das aber schade. Oft will man einen einzelnen Zellwert in die Zwischenablage kopieren um zB im Vorsystem eine Bestellnummer oder eine Kundennummer zu suchen. Da der Rechtsklick in QlikView mit einem eigenen Contextmenü überlagert ist, greift nichtmal das normale Contextmenü des Webbrowsers. Eine Anfrage beim QlikTech Support bestätigt unsere Vermutung: momentan gibt es keine Copy&Paste Funktionalität für diesen Client. Daten müssen zuerst nach Excel exportiert werden um sie weiterverarbeiten zu können. In den aktuellsten QlikView-Versionen werden Tabellenzellen sogar explizit mittels unselectable="on" markiert.

unselectable="on" im QlikView Code

HD Copy Cell Document Extension

Herausforderung angenommen! Der  QlikView Webclient lässt sich seit Version 11 mittels Document Extensions erweitern. Kann man also mittels solch einer Erweiterung die Zwischenablage nicht doch befüllen?

Ein paar Stunden später, und nach dem Durchwühlen zahlreicher Internetforen gibt es folgende Workarounds:

1) Internet Explorer unterstützt ein Javascript Objekt um programmatisch das Clipboard zu schreiben.
2) Andere Browser können mittels (aktiviertem) Flash & Userklick die Zwischenablage befüllen
3) Wenn kein Internet Explorer und kein Flash (zB am IPAD), dann hilft nur ein "Promptdialog".

Internet Explorer mit aktiver Document Extension

Chrome mit deaktiviertem Flash > Copy Mode mit Prompt

Die Document Extension aktiviert sich mittels gedrückter "CTRL" Taste im linken unterem Eck des Browser Fensters. Benutzen Sie Internet Explorer, so reicht ein Rechtsklick auf die gewünschte Zelle und der Wert landet in der Zwischenablage. Mittels Flash müssen Sie zusätzlich den Button "Copy to Clipboard" drücken. Wenn kein Flash aktiv ist, bekommen Sie das Popup vom Screenshot überhalb und müssen dann nochmals CTRL+C klicken.

Folgendes Video zeigt nochmal Optionen 1+2:


  

Dokumentation&Allerlei

- Die Document Extension finden Sie als .zip unter: content.heldendaten.eu. Bitte in .qar umbenennen.

- Um die Document Extension in der .qvw zu aktivieren, die .qar im Developer durch Doppelklick registrieren und in den Dokumenteneinstellungen hinzufügen



- Um die Document Extension am QlikView Server zu aktivieren müssen Sie die Datei Server unter C:\ProgramData\QlikTech\QlikViewServer\Extensions\Document\ entpacken




- Um Flash am QlikView Webserver zu aktivieren habe ich den MIME-Typ eingetragen



- Getestet mit QVS 11.20SR5. Kein Support & keine Garantie das diese Extension in zukünftigen QVS-Versionen funktioniert.

- Danke an Daniel Rozental der in der QlikCommunity eine Object-Extension zu dem Thema gepostet hat http://community.qlik.com/docs/DOC-5045 welche ich als Ausgangspunkt heranziehen konnte

- Manchmal aktiviert die CTRL-Taste die Document Extension nicht. Stellen Sie sicher, dass das Browserfenster den Fokus hat, und Sie nicht über einer Pivot-Tabelle etc. stehen!

Mindmap - How to become a QlikView Infrastructure Expert

Nach den Mindmaps zum Thema "How to become a QlikView Script Expert" und "How to become a QlikView Design Expert" letztes Jahr, poste ich heute das dritte Mindmap dieser Serie: "How to become a QlikView Infrastructure Expert".


Themastisch gliedert sich dieses Mindmap in folgende Themengebiete:

  • Deployments: Clustering, DMZ, Monitoring, Features
  • Architecture 
  • Security: Authentication, Authorization, QlikView Protrokolle
  • Hardware Sizing
  • Performance
  • Software: Betriebssysteme & Tools
  • Licensing
  • Where to get Information from
  • Clients: AJAX (Full Browser Version), IEPlugin
  • SDK APIs: Management API; Extensions
  • Network Components
Hat man nur einen einzelnen QlikView Server mit ActiveDirectory Authentifizierung, dann kommt mit der QlikView Server Installation alles Out of the Box. Falls Sie aber soetwas wie einen geclusterten QlikView Server mit LDAP Usern im Extranet auf IPAD-Clients inklusive Offline-Funktionalität  haben: dann viel Spaß  mit diesem Mindmap!

Das .pdf mit dem gesamten Mindmap finden Sie hier!

Bessere Publisher Alarme & neuer "Getting Started Excel Wizard" in QlikView 11.20 Service Release 6

Letzte Woche ist das QlikView 11.20 Service Release 6 erschienen. Neben Bugfixes, Win2012R2-Support und einer neuen Startseite im QlikView Developer, stellt dieses Release zwei neue Dinge bereit die wir hier genauer besprechen wollen!

SR6 Update1 21.05.2014 

Heute wurde auf der Downloadseite das Release QV11.20SR6 auf die Buildnummer 12354 aktualisiert!

Bitte stellen Sie sicher, dass Sie die richtige Buildnummer einsetzen! Die Hash-Funktionen liefern zwischen SR5 und dem orginalen SR6 unterschiedliche Ergebnisse. Dies wurde nun in Build 12354 wieder behoben. Siehe Details hier!

Bessere Publisher Alarme

Schlägt eine Publisher-Task fehl, lassen Sie sich hoffentlich schon heute eine Alarm-Email zustellen. Mit den neuen Tags [TaskLogHyperlink],[DocumentLogHyperlink]  und [DocumentLog] kann diese Email aussagekräftiger gestaltet werden. Da laut Releasenotes diese Tags in bestehenden Installationen nicht automatisch gesetzt werden, schlagen wir allen bestehenden Installationen vor nach dem Upgrade auf SR6 in der QlikView Management Console das Email-Template für Alert Emails wiefolgt abzuändern:


 Folgende Erklärung der neuen Tags in den ReleaseNotes
[TaskLogHyperlink] - Creates a hyperlink to the task log in HTML, writes the full path to the task log in
Plain
[DocumentLogHyperlink] - Creates a hyperlink to the document log in HTML, writes the full path to the
document log in Plain
[DocumentLog] – Adds the line of the error in the document log along with the line number. E.g Line 45 -
Error: <error message>

 Die neue Information in der AlertEmail sieht dann exemplarisch so aus:

Neuer "Getting Started-Excel Wizard"

Service Release 6 hat neben einer neuen Startseite auch einen neuen "Excel Wizard" bekommen. Mit der QlikView Personal Edition kam immer schon ein Wizard mit, der es erleichtern soll sein erste QlikView Applikation auf Basis einer Excel-Tabelle zu erstellen.

Der alte Wizard war - sagen wir es vorsichtig - altbacken, weswegen ich zumeist vorschlug ihn in den Benutzereinstellungen zu deaktivieren.

Der alte "altbackene" Getting Started-Wizard

Der neue Wizard ist Qlik aber sehr gut gelungen! Er hat zwar genaugenommen sogar weniger Funktionalität als der Alte (zB. kann man nun keine Pivot mehr bauen) - aber das ganze Look&Feel plus das resultierende Ergebnis sehen viel besser aus. Also für all jene, die den Wizard deaktiviert hatten und QlikView Skripte nicht zum Frühstück lesen -  geben Sie ihm mit QlikView 11.20SR6 eine neue Chance!

Einstellungen|Benutzereinstellungen "Getting Started-Assistent" wieder aktivieren


Unterhalb ein paar Screenshots wie der neue Wizard aussieht! Ich denke das wird vielen Personen den Einstieg in QlikView erleichtern, ohne eine Zeile Skript geschrieben zu haben!

Wähle Excel Datenquelle
Vorschau der Exceldaten + Spaltenbeschriftungen

.qvw abspeichern

Erstes Chart bauen

Kreisdiagramm: Dimension und Aggregationsformel definieren

Balkendiagramm: Dimension und Aggregationsformel definieren

Liniendiagramm: Dimension und Aggregationsformel definieren

Listboxen oder Tabellenbox definieren

Die fertige Applikation inklusive Auswahlbox und globaler Suche




heldendaten GmbH,2020