Sie sind auf Seite 1von 103

Developer I

QlikView Version 9.00


Reinhard Engel reinhard.engel@qliktech.com

Zeitplan
Dauer: 9:00 - 17:00 Uhr Kaffepause ca. 09:45:00 Uhr Mittagspause ca. 12:00 - 13:00 Uhr Kaffepause ca. 15:00 Uhr Fragen und Diskussion jederzeit whrend des Kurses

Agenda
Einleitung Die QlikView-Plattform Methoden der QlikView-Entwicklung QlikView-Implementierung Einfache Skripte Verbindung zu ODBC- und OLEDB-Datenquellen Skriptbearbeitung Einfache Transformationen Das Skript strukturieren Einfache Datenmodelle Sinnvoller Aufbau von Skripten QVD-Dateien Layout-Grundlagen fr Entwickler Programmfehler melden Zustzliche Informationen

Einleitung

Bitte nennen Sie


Ihren Namen Ihre Abteilung Ihre Erfahrungen mit QlikView Ihre Erwartungen an diesen Kurs Wofr Sie QlikView verwenden mchten

Ziele Kapitel 1
Ziele des Kurses verstehen berblick ber QlikTech erhalten Arbeitsumgebung einrichten Kursmaterialien sichten

Ziele des Kurses Aufbau der QlikView-Plattform verstehen Die Arbeitsumgebung konfigurieren Entwicklungs- und Verteilungsmethoden kennen QlikView-Skripte erstellen und bearbeiten Gngige Transformationen an den Daten vornehmen Mit QVD-Dateien arbeiten Best Practices fr das Applikationsdesign anwenden

berblick ber QlikTech QlikTech wurde 1993 im schwedischen Lund gegrndet. Forschung und Entwicklung befinden sich nach wie vor in Lund, das internationale Headquarter in Radnor im US-Bundesstaat Pennsylvania. QlikTech hat Niederlassungen und Partner auf der ganzen Welt. Das Unternehmen befindet sich seit mehreren Jahren in einem schnellen und gleichzeitig nachhaltigen Wachstumsprozess.

Arbeitsumgebung einrichten Falls dies noch nicht geschehen ist, hilft Ihnen Ihr Kursleiter bei der Installation von QlikView und der Vorbereitung der Arbeitsumgebung.

Kursmaterialien sichten

ber QlikTech

Entwicklung
Gegrndet 1993 in Schweden Bedeutende Umsatzsteigerungen von Jahr zu Jahr Firmenzentrale in Philadelphia 22 Niederlassungen in 12 Lndern Kunden und Partner in 92 Lndern

Vorstand
Paul Wahl, ehem. COO Siebel und CEO SAP North America Alex Ott, ehem. President Siebel North America Bruce Golden, Accel, ehem. Manager bei Sun, Illustra und Informix Claes Bjork, ehem. CEO Skanska Mns Hultman, Vorstandsvorsitzender QlikTech

Investoren

Organisation
Management Team Ehem. Fhrungskrfte von SAP, Siebel, Oracle, PA Consulting, Mactive, Intentia ca. 500 Mitarbeiter Firmensitz in USA Firmenzentrale in USA Fortschung und Entwicklung in Schweden

Die QlikView Produktfamilie

Developer fr Entwickler Professional zum Designen der Benutzeroberflchen Analyzer fr Endanwender Server fr die Verteilung von Applikationen Publisher fr die Verwaltung von Applikationen

Analyse einfach fr Jedermann


Schlagworte
Schnelle Implementierung Bedienungsfreundlich keit Leistungsfhigkeit Flexibilitt Revolutionr

QlikView stellt neue Regeln auf


Shell Schweden erstellte innerhalb von zwei Tagen nach dem Download der Demoversion einen Prototyp fr die Analyse von Finanzdaten. Spter wurde der Einsatz von QlikView auf den Vertrieb und das operative Geschft ausgeweitet. Ein Mitarbeiter der schwedischen Gemeinde Nacka betont die Benutzerfreundlichkeit von QlikView mit den Worten: Es ist so leicht zu bedienen, dass es richtiggehend Spa macht." Dakota Healthcare entwickelte eine Applikation, in der man in einem riesigen Datenvolumen bis hin zum einzelnen Versicherungsfall recherchieren kann. Die 200GBDatenbank wurde in ein QlikView-Dokument von 500 MB eingelesen und luft problemlos auf einem 64-bit Windows Server 2003. Die schweizer Versicherungsgruppe Zurich konnte den Arbeitsaufwand fr die Entwicklung und Pflege des Reportings von 7 Vollzeitkrften auf 2 Mitarbeiter reduzieren, welche dieselbe Arbeit in ca. drei Arbeitstagen pro Monat erledigen. IDG Denmark war anfangs skeptisch wegen des gnstigen Preises von QlikView. Schon nach kurzer Zeit waren die Mitarbeiter von der schnellen Implementierung und der Leistungsfhigkeit von QlikView berzeugt. Heute sind sie zufriedene Anwender. Das Bauunternehmen Deluca Homes setzt QlikView ein, um die Performance ihrer Vertragspartner zu berwachen, fr KPIs und fr die Analyse der Finanzdaten.

Unsere Vorgabe: 1/4 der Zeit, 1/2 der Kosten, doppelter Nutzen
Quelle: IDC whitepaper von Dan Vesset und Brian McDonough, QlikTechs Approach to Business Intelligence: Keep It Simple and Flexible

Was ist eine QlikView-Datei?

Einbindung der QlikView-Datei in das System

Zitate

give us a minute to collect our thoughts youve just done two weeks work in 20 minutes! I am quite impressed how enthusiastic your customers were to show your product instead of talking about problems Zapp PM at a Stammtisch (e.g. A Stammtisch is a table in a pub or restaurant reserved for regular customers) The Client hid production apps from us that theyd already built from their QV download by the time of our first meeting. If they promote me away from QV then I will leave the company" Negotiators were pushing hard, so much so that the supporting project manager felt he may lose his project, so steps in and says; "if it goes wrong I will personally repay the cost of the software." "If you can get dressed in the morning then you can use QlikView" and "if you can co-ordinate clothes you're a professional user". Thomson Directories Surprisingly, the client conducted the demo at our first meeting from their own downloaded app After the SiB, the excited developer went home and only stopped telling his wife about QlikView, when she asked him to shut up!

bungen fr Kapitel 1

QlikView installieren mit der Installationsdatei QvSetupRedist_Ger.exe Kursdateien installieren mit der Installationsdatei Developer1_8.50Course.exe QlikView starten

Die QlikView-Plattform

Ziele Kapitel 2
Aufbau der QlikView-Plattform verstehen Die QlikView-Produkte kennen lernen Struktur der QlikView-Datei erkennen

Aufbau der QlikView-Plattform verstehen Analyse als Entscheidungsgrundlage fr Jedermann Analyse und Reporting
leicht zu bedienen unternehmensweit einsetzbar flexibel aussagekrftig

Die QlikView-Produkte kennen lernen Desktop


fr Entwickler

Clients
fr Endanwender

Server
fr die Verteilung von Applikationen

Publisher
fr Management von Applikationen

Struktur der QlikView-Datei

Methoden der QlikView-Entwicklung

Ziele Kapitel 3
Systematische Herangehensweise an die Applikationsentwicklung kennen lernen Anwendungsbereiche der SAFE-Methode kennen Vorteile des Im- und Exports von Formaten im XML-Format verstehen

Systematische Herangehensweise an die Applikationsentwicklung Der Qlik Sports & Leisure (QSL) Projektplan
1. Beispiel eines Projektplans fr die Entwicklung einer QlikView-Applikation 2. Anhaltspunkte fr die Gestaltung des Ladeskripts

Der QSL-Projektplan ist als PDF im Kursmaterial verfgbar

Die SAFE-Methode Die SAFE-Methode definiert Rollen und Verantwortlichkeiten, Projektphasen, Checklisten und Meilensteine Erfahrene QlikView-Consultants nutzen die SAFEMethode fr grere Projekte Phasen: 1. Definition der Anforderungen, 2. Vorbereitung, 3. Entwicklung, 4. Rollout, 5. Abschluss

Kriterien fr die Anwendung von SAFE Die SAFE-Methode empfiehlt sich fr Projekte, die mindestens eines der Kriterien erfllen:
o o o o Mehr als 100 QlikView-Anwender Mehr als 6 Personen, die am Projekt arbeiten Einsatz von QlikView an mehreren Standorten Projektdauer lnger als 4 Wochen

Vorteile des Im- und Exports des Layouts im XML-Format Das Layout von QlikView-Dokumenten und Arbeitsblttern lsst sich im XML-Format exportieren und importieren. In den XML-Dateien sind keine Daten gespeichert. Dieses Feature erleichtert die Versionskontrolle bei der Entwicklung, denn man vermeidet, groe Datenmengen in mehreren Versionen zu speichern.

QlikView-Implementierung

Ziele Kapitel 4
Technische Einsatzmglichkeiten von QlikView erkennen
QlikView Standalone QlikView Server QlikView Publisher

Funktionale Vorteile unterschiedlicher Installationen erkennen Ihre Installation mit den Kursteilnehmern diskutieren (optional)

QlikView Standalone-Installation

QlikView Server-Installation

QlikView Publisher-Installation

Features der Installationen QlikView Standalone


Desktop Fr Entwickler und Designer QlikView Personal Edition

QlikView Server
Automatische Aktualisierung von Dokumenten Fr Arbeitsgruppen und Abteilungen

QlikView Publisher
Automatische Aktualisierung und Verteilung von Dokumenten mit Sicherheitsmechanismen Unternehmensweite Lsung

Diskussion Ihres Installationsszenarios (optional)

Einfhrung in das QlikView-Skript

Ziele Kapitel 5
Strukturen von relationalen Datenbanken verstehen Die Datenbank QSL.mdb kennen lernen Mit dem QlikView Skripteditor arbeiten

Strukturen von relationalen Datenbanken

Die Datenbank QSL.mdb Der QSL-Projektplan enthlt eine Auflistung der Tabellen und Felder der QSL-Datenbank Zustzlich zur QSL-Datenbank sind Daten aus Dateien zu laden. Auch diese sind im Projektplan beschrieben.

Datenstrukturen in QlikView

Jede Spalte der eingelesenen Tabelle wird zu einem Feld in der assoziativen QlikView-Datenstruktur. Felder, deren Namen in gleicher Schreibweise in mehr als einer Tabelle vorkommen, werden miteinander verknpft und als ein Feld betrachtet.

Datenquellen

Dimension

Dimension Faktentabelle Dimension

Dimension

Dimension

Dimension

Marketingkampagnen Zeit Umsatz, Gewinn, Kosten, Kennzahlen etc. Produkte Andere Dimension Kunden/ Geografie Vertriebsorganisation

Produkte Kategorien

Visualisierung von Verknpfungen in Listboxen

Zusammenhngende und ausgeschlossene Werte bei Auswahl eines Bestelldatums

Der QlikView Skripteditor

A
A: Men und Symbolleiste B: Editierfeld C: Befehlsbersicht D: Werkzeuge

B D

Verbindung zu ODBC- und OLEDB-Datenquellen

Ziele Kapitel 6
Die allgemeine Syntax verstehen Unterschied zwischen connect, select und load kennen Zwischen ODBC und OLEDB whlen

ACCESS

OLE DB

Die allgemeine Syntax Um Daten aus Datenbanken zu laden, muss zunchst eine ODBC- oder OLEDB-Verbindung zur Datenquelle hergestellt werden, dann werden Felder und Tabellen zum Laden selektiert. Bei Daten aus Dateien knnen Sie direkt auf die Datei zugreifen. All das geschieht im Skripteditor in QlikView.

Connect, Select, Load Connect


Stellt ber ODBC oder OLEDB eine Verbindung zu einer Datenbank her

Select
Ldt Tabellen und Felder aus der Datenbank.

Load
Ldt Daten aus ASCII-Dateien, direkt in das Skript eingegebene Daten, Daten aus bereits geladenen Tabellen oder Daten, die im nachfolgenden select-Befehl definiert werden. Es knnen auch Daten automatisch generiert werden.

ODBC und OLEDB Ermitteln Sie, welche Art von Verbindung in Ihrer Umgebung am besten geeignet ist Im Kurs verwenden wir OLEDB

bung

CONNECT TO [Provider=Microsoft.Jet.OLEDB.4.0;User ID=Admin;Data Source=Datenquellen\QSL.mdb];

Skriptbearbeitung

Ziele Kapitel 7
Kommentare im Skript anlegen Im QlikView Skripteditor arbeiten Den Skript-Debugger nutzen

Kommentare im Skript

Daten laden

Skript

// ************** Tabelle Kunden ************** Kunden: LOAD Bundesstaat, Fax, Firma, KontaktName, KundenNr, Land, 'Lnderkennz', Ort, PLZ, RegionNr, 'Strae', Telefon; SQL SELECT * FROM Kunden;

Der Debugger

bungen

Daten aus Datenbanken laden Daten aus Tabellen laden Skript-Debugger nutzen

Das Skript strukturieren

Ziele Kapitel 8 Nutzen von Registerblttern im Skript erkennen Registerreiter im Skript anlegen

bung

Bei der Entwicklung einer QlikView-Applikation werden oft viele Tabellen geladen oder mehrere Ladebefehle fr dieselbe Tabelle verwendet, um die Daten anders zu strukturieren oder Berechnungen durchzufhren. Durch die Verwendung mehrerer Registerbltter wird das Skript bersichtlicher.

Einfache Transformationen

Ziele Kapitel 9 Funktionen fr Transformationen im Skript benutzen Felder umbenennen Datenstrukturen prfen

Gebrauch von Funktionen Im load-Befehl kann man im Gegensatz zum selectBefehl alle Skriptfunktionen benutzen

Transformationen im Skript Felder umbenennen


Felder umbenennen mit as Felder umbenennen mit alias Felder umbenennen mit qualify

XML-Dateien laden

Schlsselfelder Felder, die in mehreren Tabellen vorkommen heien Schlsselfelder. Sie werden fr Verknpfungen genutzt.

Schlsselfelder Tabelle Auftrge


KdNr. A A B B C C D E E E E F F F Prod. 1 2 2 3 3 4 4 4 5 6 1 3 5 7 Menge 1 2 4 1 2 1 5 2 3 1 3 3 2 1

Tabelle Kunden
KdNr. A B C D E F G Name A Bar Firma B Die Cs DuDu E-Werk Die Firma Mr G = 14 oder 7 oder 21? = 2 oder 1?

Hufigkeit KdNr Hufigkeit KdNr C

Distinkte Werte fr KdNr = 7 !

Hufigkeiten in Schlsselfeldern Problem:


Es knnen keine Hufigkeiten angezeigt werden In Formeln knnen keine Hufigkeiten berechnet werden

Lsung:
distinct-Zusatz Nochmaliges Einlesen als Count-Feld Datensatzzhler

Nochmaliges Einlesen als Count-Feld


LOAD ,
ArtNr, ArtNr AS ArtNrCount

FROM Artikel;

Das neue Feld ArtNrCount ist kein Schlsselfeld und lsst sich in Listboxen und Formeln verwenden, wo Hufigkeiten berechnet werden sollen

Datensatzzhler
LOAD ,
ArtNr, 1 AS ArtNrDatensatzzhler,

FROM Artikel;

Die Werte des Feldes ArtNrDatensatzzhler kann man mit der sum-Funktion aufsummieren. Die sum-Funktion ist weniger speicherintensiv als die count-Funktion.

Zeigt das Diagramm, was es zeigen soll?

Kalender generieren Manchmal ist es gnstig, Datumsfelder anzulegen, die unabhngig von der Transaktionstabelle sind. Dadurch haben Sie alle Daten zur Verfgung, nicht nur Daten, an denen etwas bestimmtes geschehen ist. Erstes und letztes Datum aus der Tabelle Bestellungen ermitteln Variablen fr Anfangs- und Enddatum anlegen Kalendertabelle anlegen

Kalender generieren

Variablen definieren im Skript Wenn Sie fr Berechnungen variable Parameter bentigen, benutzen Sie Variablen. Wir werden im Folgenden je eine Variable fr das Anfangsund das Enddatum unserer Bestelldaten definieren.

Kalender generieren

Vollstndigen Kalender generieren Aus Anfangs- und Enddatum generieren wir ein Datumsfeld, das alle Daten dieser Zeitspanne enthlt. Daraus generieren wir den vollstndigen Kalender mit allen zeitbezogenen Dimensionen. bung: Kalender generieren

Einfache Datenmodelle

Ziele Kapitel 10 Interne Struktur des QlikView-Dokuments im Dialog Tabellenstruktur erfassen Mglichkeiten zur Prfung der Datenintegritt kennen Problematische Datenstrukturen auflsen

Tabellenstruktur

Mauszeiger ber Tabelle bewegen

Mauszeiger ber Feld bewegen

Vorschau durch rechten Mausklick auf Tabelle

Systemfelder

Systemfelder liefern Informationen ber die Datenstruktur Systemfelder werden whrend der Skriptausfhrung automatisch angelegt.

Strukturtabelle

Sinnvoller Aufbau von Skripten

Ziele Kapitel 11 Zusammengesetzte Schlssel generieren Zirkelbezge erkennen und vermeiden Typische Probleme beheben

Synthetische Schlssel

Zirkelbezge

QVD-Dateien

Ziele Kapitel 12 Eigenschaften des QVD-Formats kennen lernen Nutzen von QVD-Dateien erkennen QVD-Dateien manuell anlegen QVD-Dateien automatisch anlegen

Eigenschaften des QVD-Formats QVD-Dateien enthalten Daten, die aus QlikViewDokumenten exportiert wurden. QVD ist ein natives QlikView-Format. Es kann nur aus QlikView heraus generiert und nur von QlikView erkannt und gelesen werden.

Eigenschaften des QVD-Formats QVD-Dateien sind fr besonders schnelles Laden optimiert, aber gleichzeitig sehr kompakt. Das Einlesen von Daten aus QVD-Dateien ist etwa 10-100mal schneller als das Einlesen aus Datenquellen anderen Typs.

Vorteile von QVD-Dateien Verkrzte Ladezeiten Entlastung fr Datenbankserver Integration von Daten aus mehreren QlikViewDokumenten Inkrementelles Laden

bung

QVD-Dateien manuell anlegen Daten aus QVD-Dateien einlesen QVD-Dateien automatisch anlegen QVD-Dateien mit dem buffer-Zusatz automatisch aktualisieren

Layout-Grundlagen fr Entwickler

Ziele Kapitel 13 Wichtigkeit eine guten Benutzeroberflche erkennen Layout im XML-Format importieren und exportieren Ressourcen und Beispiele kennen

Benutzerfreundliches Design
Gestalten Sie Ihre Dokumente funktionell. Alle Objekte sollten leicht und intuitiv zu finden sein. Wenn Sie gleiche Objekte auf allen Arbeitsblttern anbieten (etwa Listboxen fr Selektionsfelder, Schaltflchen, Statusboxen), platzieren Sie sie auf allen Arbeitsblttern an derselben Stelle. berfrachten Sie Diagramme nicht mit Informationen. Weniger ist manchmal mehr. Respektieren Sie inhaltliche Hierarchien.

Layout im XML-Format importieren und exportieren Das Layout von Dokumenten und Arbeitsblttern lsst sich im XML-Format exportieren und importieren. In den XML-Dateien sind keine Daten gespeichert. Dieses Feature erleichtert - ebenso wie Formatvorlagen - die Gestaltung eines einheitlichen Designs fr mehrere QlikView-Applikationen.

Ressourcen und Beispiele

Programmfehler melden

Ziele Kapitel 14 Prozedere zum Melden von Programmfehlern kennen

Zustzliche Informationen

Ziele Kapitel 15 QlikView-Dokumentation kennen und nutzen Verarbeitung numerischer Werte verstehen Zahlenformate in QlikView

Materialien und Dokumentation QlikView Handbuch QlikView Hilfe QlikView Musterdokumente QlikCommunity

Anhang Datentypen Zahlenformate

Ausblick

Vielen Dank
Reinhard Engel