Dateneingabe und Planung in Qlik mit write.bi

Der Wunsch nach Dateneingabe und Planung in Qlik, kenn ich, seitdem ich 2008 bei Qlik gestartet hatte.  In unserer Kommunikation war damals die Abgrenzung klar: das "View" in "QlikView" besagt ja schon, dass wir nur Lesend zugreifen. Diese Art der Antwort klappt mit dem "Sense" in Qlik Sense nicht mehr - und dankenswerter Weise gibt es mittlerweile auch etablierte Lösungen, um diese Anforderungen in Qlik abzubilden.

Dateneingabe und Planung in Qlik Sense

Die Historie

In QlikView war das Gewagteste was man anbieten konnte das Konzept der Simulation. Am Ende jeder Vertriebsdemo war in etwa folgender Reiter zu sehen:

Simulation in QlikView
Simulation in QlikView


Im QlikView Skript kann man Inputfelder definieren, die nicht der normalen Qlik Symbol-Table Komprimierung unterliegen. Dadurch kann der Planwert auf jeder Zelle vom Endanwender geändert werden. Mit den speziellen Oberflächen-Formeln inputsum, inputavg, etc. wird dann die Dateneingabe auf Gesamtsummen und die Verteilung auf die Details gesteuert. Damit kann ich etwa - wie im .gif oberhalb - sagen, dass ich insgesamt 4000 Umsatz mache, und davon 1500 in Sportswear. Die anderen Werte passen sich automatisch an.

Problematisch bei der QlikView Inputfield-Lösung ist aber, dass diese Usereingaben nur in Lesezeichen abgelegt werden können. Diese Lesezeichen landen in den binären .qvw.shared Files. Sie sind also in der Qlik-Welt "gefangen" und können nicht automatisiert in ein Vorsystem übernommen werden, oder als Input für weitere Qlik Analysen dienen. Außerdem wurden .qvw.shared Files bei vielen Inputfield-Werten und Lesezeichen gerne sehr groß, was diesem Feature eine zusätzliche technische Grenze setzte.

Inputfield QlikView Lesezeichen
Über Lesezeichen kann sich ein User seine Simulationen in QlikView "ablegen"


Integration von vollwertige Planungslösungen wie Corperate Planning, Jedox, Tagetik mit Qlik gab es schon früh, existieren bis heute und werden immer eine Berechtigung haben. Einige Anbieter hatten sich auch schon früh im QlikView AJAX-Client mittels Extensions an die Dateneingabe direkt in QlikView gewagt, doch ist das Extension Konzept dort doch recht limitiert.  Ein schöner Überblick über die Anbieter findet sich in diesem Blogpost für Writeback von Rob Wunderlich. Eine alte Extension von meinem ehemaligen Kollegen Stefan Walter schwirrt bis heute in Github herum. Das Schaubild zeigt sehr anschaulich wie Writeback-Lösungen technisch funktionieren.


Writeback in Qlik
Writeback in Qlik

Die Möglichkeiten in Qlik Sense

Dateneingabe & Datenerfassung

Bezüglich Dateneingabe & Datenerfassung gibt es in Qlik Sense mehrere kommerzielle Extensions die man in Betracht ziehen kann. Typische Anforderungen in diesem Umfeld sind:

- Ein Lagerarbeiter soll direkt in seinem Qlik-Dashboard ein Formular ausfüllen, um einen Bestellauftrag abzuschließen. Für diese Anforderungen würde sich neben write.bi auch Vizlib Writeback Table anbieten. 

- Section Access Berechtigungen für Qlik sollten eigentlich schon im Vorsystem vorliegen und in Qlik wiederverwendet werden. Wenn nicht kann man write.bi auch nutzen um die Section Access Tabelle zu pflegen. 

- Collaboration: User können Kommentare & Anmerkungen zu Kennzahlen am Dashboard oder in einer Profit&Loss Darstellung schreiben. Hier bietet Vizlib Collaboration und Vizlib Finance Lösungen. 

Diese Extensions schreiben in eine SQL-Datenbank oder zu einem REST-Webservice zurück. Startet man einen Qlik-Reload oder nutzt man Qlik Sense Direct Views hat man eine direkte Feedbackschleife.

In dem folgenden Beispiel sieht man eine Write! Edit Tabelle in der bestimmte Felder wie "Confirmed", "Sales" und "Quantity" für bestehende Order IDs vom Qlik-User geändert werden können. Man kann aber auch gleich ganz neue Orders erfassen und dabei automatisch auf Qlik Sense Kunden und Artikelinformationen zugreifen. 


Write! Edit Tabelle und Formular im Einsatz

Im Beispiel erzeugt der Qlik-User eine neue Order 77777. Man sieht wie sich die Kennzahl "Total Sales" im Qlik Dashboard automatisch aktualisiert. Es handelt sich dabei aber wohl um eine Falscheingabe durch den Anwender. Wählt man nun im Qlik Sense Filter die neue Order 77777, kann man diese auch in einer Formularansicht korrigieren. Da Qlik Sense im Hintergrund die Daten automatisch aktualisiert, ist nun die Kennzahl "Total Sales" auch wieder korrekt.


Write! Plan von write.bi

Einen Schritt weiter als reine Dateneingabe geht es bei der Planungs-Extension Write! Plan von write.bi. Diese bildet die ursprünglichen Ideen der Qlik Funktionen inputsum, inputavg ab und kann für Planung direkt in Qlik Sense genutzt werden.

Frontend

Write! Plan bietet die Möglichkeit direkt in Qlik Sense neue Budgets und Forecasts zu erstellen. Die Extension stellt eine Tabelle bereit in der man für einen Zeitraum (Jahr und Perioden) über beliebige Dimensionen (etwa Company, Region, SalesRep, Customer) beplanen kann. 

Der Summen- (bzw. Durchschnitts-)Algorithmus ermöglicht zwei Verteilungen: Top-down und Bottom-up:

Top-down Verteilung: Die Gesamtsumme des höheren Knotens wird gleichmäßig auf die unterliegenden Knoten der Hierarchie verteilt

Bottom-up Verteilung: wird eine Zahl in einer unteren Ebene neu eingetragen oder verändert, wird diese nach oben aufsummiert. Somit ändert sich hier die Gesamtsumme.

Im Video unterhalb ein Beispiel dazu. Ausgehend von einem Budget "Bad Year" für das Jahr 2019 wollen wir den Oktober anpassen. Zuerst ändern wir die Gesamtsumme auf 2 Millionen, um dann für die Region Ost den Wert auf 600.000 anzupassen. Dieses Budget speichern wir. Man sieht wie sich das Qlik Sense Linienchart oben links anpasst, und nun den Oktober mit 1.93 Millionen anzeigt. Ausgehend von diesem Budget können wir mit Write! Plan auch ein neues Budget "New Budget for 2021" erzeugen, welches wir auf das Jahr 2021 legen. Man sieht wie diese neue Budget-Variante nach dem Speichern automatisch in der Qlik Sense Listbox auftaucht und für das Jahr 2021 verfügbar ist.


Write! Plan im Einsatz

Das Write! Plan Objekt lässt sich wie gewohnt über das rechte Design Panel administrieren.

Write! Plan Design Panel auf der rechten Seite.

Der Export des Write! Plan Objekts nach Excel ist möglich.

Export der Write! Plan Dateneingaben nach Excel


Administration

Wichtig bei Planung ist wer planen darf, und wohin die Daten zurückgeschrieben werden. Für die Verwaltung der Planungsuser und der Daten-Endpoints kommt write.bi mit einer eigenen Weboberfläche.

Welcher User kann in Write! Plan Daten eingeben


User können via LDAP importiert werden. Damit kann man via Active-Directory Gruppen die Qlik Sense und write.bi User synchron halten.

write.bi User via LDAP synchronisieren

Wohin die Plandaten aus der Qlik Sense Oberfläche zurückgeschrieben werden, definiert man bei den Storage Connections. Typischerweise schreibt man nicht direkt in ein Quellsystem zurück, sondern nutze eine eigene Datenbank/Schema um die Write! Plan Daten abzulegen.


In welche Datenbank soll Write! Plan die Daten zurückschreiben

Einlesen der Plandaten

Im Qlik Skript kann man dann diese Plandaten dann ODBC/OLEDB wie herkömmliche Istdaten im Datenmodell ergänzen. Damit hat man eine vollständige Schleife zwischen Dateneingabe und Analyse in Qlik geschaffen.

Zugriff in Qlik Sense auf die Write! Plan Datenbank



0 Response to "Dateneingabe und Planung in Qlik mit write.bi"

Kommentar posten

heldendaten GmbH,2020