+ All Categories
Home > Documents > 116859720 Developer Powerpoint v 11

116859720 Developer Powerpoint v 11

Date post: 28-Apr-2015
Category:
Upload: taieb-somai
View: 107 times
Download: 8 times
Share this document with a friend
158
QlikView Developer Version 11 Michael Alegado
Transcript
Page 1: 116859720 Developer Powerpoint v 11

QlikView Developer Version 11

Michael Alegado

Page 2: 116859720 Developer Powerpoint v 11

Agenda

• 9:00 am – 5:00 pm

• Break at 9:45 or as needed

• Lunch 11:30 or 12:00 for 1 hour

• Break at 3:00 pm or as needed

• Questions/discussions throughout

Page 3: 116859720 Developer Powerpoint v 11

Agenda

• INTRODUCTION

• QLIKVIEW DEVELOPMENT METHODOLOGY

• DEPLOYMENT

• INTRODUCTION TO DATA AND SCRIPTING

• BASIC SCRIPT SYNTAX

• STRUCTURING THE SCRIPT

• BASIC DATA MODEL AND TABLE VIEWER

• BASIC DATA TRANSFORMATION

• ADDING TEXT DATA

Page 4: 116859720 Developer Powerpoint v 11

Agenda

• GENERATING DATA IN THE QLIKVIEW SCRIPT

• SCRIPTING CONSIDERATIONS

• QLIKVIEW DATA (QVD) FILES

• MAPPING TABLES

• LOADING BUDGET DATA

• DATA MODEL OPTIMIZATION

• ADVANCED CALCULATIONS IN SHEET OBJECTS

• SCRIPTING AND DATA MODELING CHALLENGES

• PERFORMANCE OPTIMIZATION

• QLIKVIEW SECURITY

Page 5: 116859720 Developer Powerpoint v 11

Introductions – Please mention

• Your name

• Company / Department

• Your experience with QlikView

• Your expectations for the course

• How do you use QlikView in your job?

Page 6: 116859720 Developer Powerpoint v 11

Lesson 1 Introduction

Page 7: 116859720 Developer Powerpoint v 11

Learning Objectives

• Explain the difference between QlikTech and QlikView

• Identify what is business discovery

• Identify the QlikView product family

Page 8: 116859720 Developer Powerpoint v 11

About this Course

• Possessing a deep knowledge of the data model,

creation of the proper data connections and scripting

fundamentals are critical to creating QlikView documents

• Beginning with QlikView environment and ending with an

introduction to advanced interface design

Page 9: 116859720 Developer Powerpoint v 11

Definition of a QlikView Developer and

System Administrator

• The QlikView Developer

• The QlikView System Administrator

Page 10: 116859720 Developer Powerpoint v 11

QlikView

• QlikView is a Business Discovery platform

• Data presented in easy to understand format

• Manages information

• Associative connections

Page 11: 116859720 Developer Powerpoint v 11

About QlikTech

• Software company

• Founded in Lund, Sweden in 1993

• Founded on the belief that business intelligence (BI)

should be about the business user

Page 12: 116859720 Developer Powerpoint v 11
Page 13: 116859720 Developer Powerpoint v 11

Lesson 2 QlikView Development Methodology

Page 14: 116859720 Developer Powerpoint v 11

Learning Objectives

• Identify the importance of Document/Sheet XML

Import/Export

• Review Project Plan

• State the QlikView deployment options

Page 15: 116859720 Developer Powerpoint v 11

What is QPM?

QPM = QlikView Project Methodology

• is a description of all project management activities,

documents and QlikView Deliverables in all the phases

of a QlikView project

• By using this Project Methodology we will be able to

make a difference in the customer experience and

making the best use of the QlikView capabilities.

Page 16: 116859720 Developer Powerpoint v 11

QPM Framework

Start-Up Project

Business

Objectives

Prepare Enterprise Platform

Pre-Study

TG 0

Project Plan

Prioritized Business

Requirements

Define Enterprise Platform

Planning

Deployment

User Communication

Transition to:

Self Service BI Governance &

Support

Execution

Evaluation

Hand Over Lessons Learned

Project

Completion

Conclusion

TG 1 TG 2 TG 3 TG 4 TG 5

Multiple App’s

Test

User Review

Refine

Build

Implementation

Realize Enterprise Platform

Start Proceed Close Go-Live App’s

Finish Cycle(s)

Start Cycle(s)

Page 17: 116859720 Developer Powerpoint v 11

Benefits

• Better and more Engagement with our Enterprise Customers

• Direct Influence on succes and our own mission

• Control and Quality

• QPM helps frame the potential growth for QlikView

• Manage our customer’s expectations for the investment in resources,

training and hardware.

• Great feedback loops for QT Sales, Product Development, Marketing

• Strenghten our partnerships with more action together!

• Effective Sales Cycles

• Great opportunities for ES Consultants

Page 18: 116859720 Developer Powerpoint v 11

Lesson 3 Deployment

Page 19: 116859720 Developer Powerpoint v 11

Learning Objectives

• State the QlikView deployment options

• Identify the functional and business benefits of each

example deployment option

Page 20: 116859720 Developer Powerpoint v 11

Components of QlikView Business Discovery

Platform

Page 21: 116859720 Developer Powerpoint v 11

QlikView Overview

Page 22: 116859720 Developer Powerpoint v 11

QlikView Product Platform

With QlikView Personal Edition you can make full use of the QlikView functionality, but it is not possible to open documents created by other users. Please contact your sales account executive for information regarding QlikView licenses.

Page 23: 116859720 Developer Powerpoint v 11

QlikView Product Platform

QlikView Desktop is a single point of interaction for collecting data, designing analytics, and building dashboards and reports.

Page 24: 116859720 Developer Powerpoint v 11

QlikView Product Platform

QlikView Server supports the following clients: • Browser-independent, download-

free Ajax client • Installed Windows client • Internet Explorer browser plug-in • Apple iPad and iPhone • Android devices • BlackBerry

Page 25: 116859720 Developer Powerpoint v 11

QlikView Product Platform

QlikView Publisher helps organizations balance the need for widespread distribution of analytic functionality and reports with the requirement to maintain centralized control and administration of sensitive corporate data.

Page 26: 116859720 Developer Powerpoint v 11

Stand Alone/QlikView Desktop

Page 27: 116859720 Developer Powerpoint v 11

QlikView Server

Page 28: 116859720 Developer Powerpoint v 11

QlikView Server & Publisher

Page 29: 116859720 Developer Powerpoint v 11

Project Plan

• QWT Business Intelligence Project Plan

Page 30: 116859720 Developer Powerpoint v 11

Standard QlikView Deployment

Page 31: 116859720 Developer Powerpoint v 11

Lesson 4 – Introduction to Data and Scripting

Page 32: 116859720 Developer Powerpoint v 11

Learning Objectives

• Identify what is a relational database

• Identify what is a data structure

• Review the QWT.mdb database

• Use the QlikView Script Editor

Page 33: 116859720 Developer Powerpoint v 11

Relational Data Base Management Systems

• MySQL

• Microsoft SQL Server

• Microsoft Access

• Oracle

• DB2

• Sybase

• Informix

• Teradata

Page 34: 116859720 Developer Powerpoint v 11

Relational Databases

Page 35: 116859720 Developer Powerpoint v 11

Table Field Key Field

Page 36: 116859720 Developer Powerpoint v 11

Data Structures: Star Schema

Dimension

Dimension

Dimension

Dimension

Dimension

Fact Table

Dimension

Page 37: 116859720 Developer Powerpoint v 11

Data Structures: Snowflake Scheme

Fact

Dimension Dimension

Dimension

Dimension

Dimension Dimension

Dimension

Dimension

Dimension

Dimension

Dimension

Dimension

Dimension

Dimension

Page 38: 116859720 Developer Powerpoint v 11
Page 39: 116859720 Developer Powerpoint v 11

Data Structure in QlikView

Page 40: 116859720 Developer Powerpoint v 11

Data Structure in QlikView

Page 41: 116859720 Developer Powerpoint v 11

Data sources in this course

Page 42: 116859720 Developer Powerpoint v 11

Lesson 5 – Basic Script Syntax

Page 43: 116859720 Developer Powerpoint v 11

Learning Objectives

• Identify common QlikView Syntax

• State the difference between Connect, Select, and Load

statements

• Create a working Connect statement

Page 44: 116859720 Developer Powerpoint v 11
Page 45: 116859720 Developer Powerpoint v 11

Basic Script Syntax CONNECT • Used to connect with ODBC or OLEDB

interface • Is automatically created when using the

wizard

SQL SELECT • Instructs which field and tables to retrieve

automatically created when using the wizard

LOAD • Defines what transformations of data

should be invoked by QlikView

Page 46: 116859720 Developer Powerpoint v 11

2

How QlikView reads a load script

LOAD… … … SELECT… … … LOAD… … … SELECT… … …

1

4

3

Page 47: 116859720 Developer Powerpoint v 11

What is a key field?

• A field that exists in two tables and connects the two.

Page 48: 116859720 Developer Powerpoint v 11

Lesson 6 – Loading Data from the Database

Page 49: 116859720 Developer Powerpoint v 11

Learning Objectives

• Comment the script for future reference

• Load data with the QlikView Script Editor

• Access the Debugger

Page 50: 116859720 Developer Powerpoint v 11

Commenting the Script

REM (following table)

// (single line)

/* (start)

*/ (finish)

Using keys:

Comment:

Ctrl+k(v.8.5)

Ctrl+k+c (v.9.0+)

Uncomment:

Ctrl+SHIFT+k(v.8.5)

Ctrl+k+u(v.9.0+)

Page 51: 116859720 Developer Powerpoint v 11

Connecting to databases

ODBC (Open DataBase Connectivity) OLE DB (Object Linking and Embedding, Database) More advanced way to connect to databases, also multidimensional databases possible) The CONNECT statement generated, applies to all following SELECT statements until a new CONNECT statement is made.

Page 52: 116859720 Developer Powerpoint v 11

Load Script basics /*------------------

Customers Table

------------------*/

Customers:

LOAD Address,

City,

CompanyName,

Phone,

PostalCode,

StateProvince;

SQL SELECT *

FROM Customers;

Preceding load; allows modifying QV datamodel

Comments

SQL statement retrieving data from database

Table name

Page 53: 116859720 Developer Powerpoint v 11

OLE DB

Page 54: 116859720 Developer Powerpoint v 11

ODBC

Page 55: 116859720 Developer Powerpoint v 11

Lesson 7 – Structuring the Script

Page 56: 116859720 Developer Powerpoint v 11

Learning Objectives

• State why creating tabs can be beneficial when

structuring a QlikView Script

• Create tabs to structure your script

Page 57: 116859720 Developer Powerpoint v 11

• Often when building a QlikView application,

many tables are used and sometimes you

want to manipulate existing tables. To make

the script easier to work with, we divide the

script into different tabs

Page 58: 116859720 Developer Powerpoint v 11

Synthetic keys

Complex Key(s) consisting of two or more fields between two connecting tables.

• Implications

– Resource heavy

– Slows down calculations

– Makes a document harder to understand and maintain

• How can it be removed?

– Selectively remove double fieldnames

– Rename fieldnames

– Use qualify statement

Page 59: 116859720 Developer Powerpoint v 11

Lesson 8 – Basic Data Model and Table Viewer

Page 60: 116859720 Developer Powerpoint v 11

Learning Objectives

• Use the Table Viewer to analyze the internal structure of

a QlikView document

• Identify how the Table Viewer can be used to debug

problems

Page 61: 116859720 Developer Powerpoint v 11

Lesson 9 – Basic Data Transformation

Page 62: 116859720 Developer Powerpoint v 11

Learning Objectives

• Define the advanced uses of the script editor

• Rename Fields

• Use transformative Functions in the script

Page 63: 116859720 Developer Powerpoint v 11

Load Statement

• The load statement loads Fields from a typed ASCII file,

from data defined in the script, from a previously loaded

table, from the result of a following select statement or

by generating data automatically. The general syntax of

the load statement is:

load [ distinct ] *fieldlist [( from file [ format-spec ] | from_fieldfield [format-spec] inline data [ format-spec ] | residenttable-label | autogenerate size )] [ where criterion ] | while criterion ] [ group_by fieldlist ] [order_by field [ sortorder ] { , field [ sortorder ] }

Page 64: 116859720 Developer Powerpoint v 11

Renaming Fields

Page 65: 116859720 Developer Powerpoint v 11

Key Fields — Predicament

• Consequences:

Not possible to use the frequency information

Not possible to use all functions when creating chart expressions (only distinct)

• Solution:

Use distinct

Load the field an extra time under a new name

Load a record counter

Page 66: 116859720 Developer Powerpoint v 11

Key Fields — Solution, Count

LOAD

…,

OrderID,

OrderID AS OrderIDCount

FROM Orders;

• You can now use the new field (not associated) in a list box that shows the frequency or a chart with functions to calculate the frequency.

Page 67: 116859720 Developer Powerpoint v 11

Key Fields — Solution, Record Counter

LOAD

…,

OrderID,

1 AS OrderRecordCounter,

FROM Orders;

• This way of solving the problem is more efficient when working with large amounts of data since a sum of a numeric value takes very little power compared to a count of a value.

Page 68: 116859720 Developer Powerpoint v 11

Lesson 10 – Adding Text Data

Page 69: 116859720 Developer Powerpoint v 11

Learning Objectives

• Review data sources from Excel spreadsheets

• Use the File Wizard to load data into QlikView

• Transform (rename a field) data with the File Wizard

Page 70: 116859720 Developer Powerpoint v 11

Loading Data from a Table File

Page 71: 116859720 Developer Powerpoint v 11

Loading Data from a Table File

Page 72: 116859720 Developer Powerpoint v 11

Connecting to other datasources

DATA from files

Absolute vs Relative Paths

[C:\QlikViewTraining\Developer\Datasources\EmpOff.xls]

(biff, embedded labels, table is Employee$);

Datasources\EmpOff.xls

(biff, embedded labels, table is Employee$);

Page 73: 116859720 Developer Powerpoint v 11

Lesson 11 – Generating Data in the QlikView Script

Page 74: 116859720 Developer Powerpoint v 11

Learning Objectives

• Use Resident Load

• Create Data from Other Data and Autogenerate

• Load Data using External Scripts with Include

• Create a Master Calendar

Page 75: 116859720 Developer Powerpoint v 11

Use Resident Load

• How to create a new logical table in QlikView, based on

a previously loaded (resident) table

Page 76: 116859720 Developer Powerpoint v 11

Create Data from other Data

Page 77: 116859720 Developer Powerpoint v 11

Load Data Using External Scripts

• It is possible to include references to files in a script that themselves

contain script or parts of a script.

Page 78: 116859720 Developer Powerpoint v 11

Order By OrderDate ASC

peek OrderDate

0 2007-04-19

-1 2012-03-29

Variable LET

•varMinDate

•varMaxDate

DateField

Autogenerate varMaxDate – varMindate

TempDate

Temp Calendar

Master Calendar

OrderDetails

TempDate as OrderDate

RESIDENT DateField

Page 79: 116859720 Developer Powerpoint v 11

Lesson 12 – Scripting Considerations

Page 80: 116859720 Developer Powerpoint v 11

Learning Objectives

• Create a Synthetic Key

• Identify Circular References

• Define Loosely Coupled Tables

• State why these conditions should be avoided

Page 81: 116859720 Developer Powerpoint v 11

What is a Synthetic Key

• A Synthetic Key is created in the script when multiple

fields are linking one or more tables together.

Page 82: 116859720 Developer Powerpoint v 11

Why not Synthetic Keys?

• Are resource heavy

• Slow down calculations

• In extreme cases, overlaod an QlikView document

• Make a document harder to maintain and understand

Page 83: 116859720 Developer Powerpoint v 11
Page 84: 116859720 Developer Powerpoint v 11

How can Synthetic Keys be Avoided?

• Rename fields using AS or QUALIFY

• Comment out fields that are not needed

• Concatenated key - combining field names and creating

a unique key field

Page 85: 116859720 Developer Powerpoint v 11

Circular References

Page 86: 116859720 Developer Powerpoint v 11

Circular References

• QlikView solves the

problem by Loosely

coupled tables

Page 87: 116859720 Developer Powerpoint v 11

Lesson 13 – QlikView Data (QVD) Files

Page 88: 116859720 Developer Powerpoint v 11

Learning Objectives

• Define QVD files

• Explain why QVD files are so important

• Create a QVD file manually

• Generate a QVD file automatically

Page 89: 116859720 Developer Powerpoint v 11

QVD File Format

• Contains one table

• Composed of

– A well formatted XML Header

– Symbol tables in a byte stuffed format

– Actual table data in a bit-stuffed format

Page 90: 116859720 Developer Powerpoint v 11

Use of QVD Files

• Increasing Load Speed

• Decreasing Load on Database Servers

• Consolidating Data from Multiple QlikView Documents

• Incremental Load

Page 91: 116859720 Developer Powerpoint v 11

Lesson 14 – Mapping Tables

Page 92: 116859720 Developer Powerpoint v 11

Learning Objectives

• Identify when to use mapping tables

• Create mapping tables to add Quarters to the Orders

table

• Identify areas to clean up in the table structure

Page 93: 116859720 Developer Powerpoint v 11

Mapping Tables

• Mapping prefix

• Must have two columns

Page 94: 116859720 Developer Powerpoint v 11

Exercise: Mapping Tables

Page 95: 116859720 Developer Powerpoint v 11

Cleaning up the Table Structure

• Minimize the number of tables in QlikView

• If you have tables with only two fields, map those tables

to minimize the number of tables

Page 96: 116859720 Developer Powerpoint v 11

QlikView Developer Course

Page 97: 116859720 Developer Powerpoint v 11

Lesson 15 – Loading Budget Data

Page 98: 116859720 Developer Powerpoint v 11

Learning Objectives

• Identify cross tables

• Use the File Wizard to transform the data and create

load script

Page 99: 116859720 Developer Powerpoint v 11

Cross Tables

• A cross table is a common type of table featuring a

matrix of values between two orthogonal lists of header

data.

Page 100: 116859720 Developer Powerpoint v 11
Page 101: 116859720 Developer Powerpoint v 11

Lesson 16 – Data Model Optimization

Page 102: 116859720 Developer Powerpoint v 11

Learning Objectives

• Review key measures

• Use, Conditions in tables, Aggregation, Joining tables

and Pre-ceding Load on Preceding Load within the script

Page 103: 116859720 Developer Powerpoint v 11

Condition on a Field Table

• The Category Type field can be created by using the

CategoryID field. If the CategoryID is 5 or 6, the

CategoryType should be Footwear, otherwise the type

should be clothing.

Page 104: 116859720 Developer Powerpoint v 11

Aggregating Data

• Group by is a clause used for defining over which fields

the data should be aggregated (grouped)

Page 105: 116859720 Developer Powerpoint v 11

Joining Tables

• It is possible to join tables already in the script

• The join between tables can be performed against the

source database or you can use a QlikView Join

command

Page 106: 116859720 Developer Powerpoint v 11

Concatenation

• Concatenation can be used to join data together from

multiple tables

• Automatic Concatenation

• Forced Concatenation

• Prevent Concatenation

Page 107: 116859720 Developer Powerpoint v 11

Exercises: Advanced Scripting

• Condition on a Field in a Table

• Aggregation

• Joining Tables

• Preceding Load on Preceding Load

Page 108: 116859720 Developer Powerpoint v 11

Lesson 16 – Advanced Scripting

Page 109: 116859720 Developer Powerpoint v 11

Objectives

• Introduce advanced calculations in charts and tables,

including:

• Dimension Limits

• Set Analysis

• Dollar-Sign Expansion

• AGGR Function

• Complete exercises using examples of each of these

functions

Page 110: 116859720 Developer Powerpoint v 11

Dimension Limits

• New capabilities for a chart to show totals, other

segments and limit to top/bottom performing dimension

values

• Moves these features into the cube vs. the presentation

layer

• Consistency across charts

• New capabilities – will simplify numerous chart

acrobatics from earlier releases

Page 111: 116859720 Developer Powerpoint v 11

Have you ever tried to…

• Restrict a table or chart based on a the contribution of a

dimension to the total?

• Summarize non-displayed dimensions as OTHERS

without resorting to a pie chart?

• Evaluate lower level dimensions either locally or

globally? Use these as qualification criteria to determine

what to display in table or chart?

Page 112: 116859720 Developer Powerpoint v 11

Define Dimension Limits

• Show only

• Show only values that are

• Show only values that accumulate to

• Options

– Others

– Total

– Global Grouping

Page 113: 116859720 Developer Powerpoint v 11

Show Only Values That Are:

Page 114: 116859720 Developer Powerpoint v 11

Show Only Values That Accumulate To:

Page 115: 116859720 Developer Powerpoint v 11

Dimension Totals

Page 116: 116859720 Developer Powerpoint v 11

Set Analysis

Page 117: 116859720 Developer Powerpoint v 11

What is Set Analysis

• Conceptually similar to a selection.

• Provides a method of defining groups (sets) of

information that are independent of the current

selections.

• Can create sets based on other sets.

• Must be used in aggregation expression.

• Always begin and end with curly brackets {}

Page 118: 116859720 Developer Powerpoint v 11

Set Analysis – Why?

• Very powerful functionality for comparison analysis.

• May eliminate the need for additional, complex coding

within an application

• Provides much more flexibility in the analysis’ you can

create

Page 119: 116859720 Developer Powerpoint v 11

Set Analysis Syntax

• The syntax is broken down into 3 categories:

– Identifiers

– Operators

– Modifiers

Page 120: 116859720 Developer Powerpoint v 11

Set Analysis Identifiers

There is one constant that can be used to denote a record

set;

• 1 represents the full set of all the records in the

document.

The $ sign represents the records of the current selection.

• The set expression {$} is the equivalent of not stating

a set expression at all

• {1-$} defines the inverse of the current selection,

that is, everything that the current selection

excludes.

Page 121: 116859720 Developer Powerpoint v 11

Identifiers

Examples:

sum({1} Sales) Returns total sales within the application, disregarding selections but not the dimension.

sum({$} Sales) Returns sales for the current selection, i.e. the same as sum(Sales).

sum({BM01} Sales) Returns sales for the bookmark ID “BM01”.

Page 122: 116859720 Developer Powerpoint v 11

Set Modifiers

A set can be modified by additional or changed selections.

Such a modification can be written in the set expression.

The modifier consists of one or several field names, each

followed by selection(s) that can be made in the field.

Modifiers begin and end with angle brackets <>.

Page 123: 116859720 Developer Powerpoint v 11

Modifiers - Examples

sum({$<OrderDate = DeliveryDate>} Sales)

Returns the sales for the current selection where OrderDate = DeliveryDate.

sum({1<Region = {‘US’}>} Sales)

Returns the sales for region US disregarding the current selection.

sum({$<Region = >} Sales)

Returns the sales for current selection, but with the selection in “Region”

removed.

sum({<Region = >} Sales)

Returns same as the example above. When the set to modify is omitted,

$ is assumed.

sum({$<Year={2000}, Region={“U*”}>} Sales)

Returns the sales for current selection, but with new selections both in

“Year” and in “Region”.

Page 124: 116859720 Developer Powerpoint v 11

Example of Set Analysis

Page 125: 116859720 Developer Powerpoint v 11

Example of Set Analysis

Page 126: 116859720 Developer Powerpoint v 11

Dollar-Sign Expansion

Page 127: 116859720 Developer Powerpoint v 11

AGGR Function

• AGGR is a powerful

QlikView function that

returns a set of values of

expression calculated over

dimensions.

• The table shows

information on how many

customers have placed

one order, two orders etc,

and also the average order

value.

Page 128: 116859720 Developer Powerpoint v 11

• Multiple selection states against one data set

• Set up objects to reference a selection state

• Compare and calculate among states

Comparative Analysis Drives Deeper Insight

Page 129: 116859720 Developer Powerpoint v 11

Comparative Analysis in QlikView 11

Page 130: 116859720 Developer Powerpoint v 11

Comparative Analysis: Overview

• New capability for comparing sets of the data

• Eliminates often used techniques involving macros, duplicated data model

• Most common cases – Ad hoc groupings

– Regression comparison

• All work dependent on development (vs. explicit end user functions)

Page 131: 116859720 Developer Powerpoint v 11

Comparative Analysis - Illustration

• Allow for multiple selection states against one data set

• Setup document components to reference a selection state

• Compare, calculate between states

Page 132: 116859720 Developer Powerpoint v 11

Comparative Analysis – A Comparison Method Technique Level Flexible Multiple Visibility Coverage

Set

Reference

Select,

context

menu, select

Selection

(list box)

No. Must clear

reference &

reset No No

End user

defined. No Ajax

Detach/

Attach

Select,

context

menu, select

Object No. Must clear

lock Yes No

End User

Defined. No

Ajax

Bookmark Select, save. Expression

Yes. Can

update

bookmark Yes No

Developer

predefined. End

user modified.

All clients

Alternate

State

Define

labels,

assign

objects,

make

selections

Sheet,

object,

expression

Yes. End user

can adjust

selections

independently.

Yes Yes

Developer

predefined. End

user content. All

clients

Page 133: 116859720 Developer Powerpoint v 11

Comparative Analysis -

Demonstration • Simple demonstration

• Existing QlikView techniques for comparing data sets

• Using alternate state for comparing data sets

Page 134: 116859720 Developer Powerpoint v 11

Comparative Analysis - Discussion

• Comparative Analysis is most likely to

– Simplify design of like-to-like comparison problems

– Allow us to enter new problem spaces (what?)

– Eliminate use of (need for) other comparative techniques (set reference, detach etc)

– Not be used. Why?

• What should comparative analysis mean to users (vs. developers)?

Page 135: 116859720 Developer Powerpoint v 11

Comparative Analysis – How To

• State Identifiers

• Standard Identifiers

Define

• Tie sheets & objects to Alternate States

Assign • Simplify design

Inherit

• User Interactions

Use

Page 136: 116859720 Developer Powerpoint v 11

Comparative Analysis - Define

Page 137: 116859720 Developer Powerpoint v 11

Comparative Analysis - Assign

1. Sheet assignment 2. Container assignment 3. List box assignment 4. Expression assignment

Page 138: 116859720 Developer Powerpoint v 11

Alternate States – New Function

• Testing for a State – Conditioning elements on an alternate state thru a new function

– Statename()

Dynamic Text ='Region - ' &if(StateName() = '$', 'Default', StateName())

Dynamic Colors if(StateName() = 'Group 1', rgb(152, 171, 206),

if(StateName() = 'Group 2', rgb(187, 200, 179),

rgb(210, 210, 210)

)

)

Examples

Page 139: 116859720 Developer Powerpoint v 11

Comparative Analysis – Inheritance

DOCUMENT (Default Only)

Page 140: 116859720 Developer Powerpoint v 11

Comparative Analysis – Inheritance

SHEET (Default, Inherit, Named)

Page 141: 116859720 Developer Powerpoint v 11

Comparative Analysis - Inheritance

CONTAINER (Default, Inherit [Sheet], Named)

Page 142: 116859720 Developer Powerpoint v 11

Comparative Analysis - Inheritance

SHEET OBJECT/CONTAINED OBJECT (Default, Inherited, Named)

Page 143: 116859720 Developer Powerpoint v 11

Comparative Analysis - Inheritance

EXPRESSION (Default, Inherited [Object], Named)

Page 144: 116859720 Developer Powerpoint v 11

Comparative Analysis – Additional

• Clear – Affects all states or can be selective via new menu

off CLEAR button

• State Navigation & Lock/Unlock – All states

• Linked Objects – If the copied object has a setting of INHERIT, it may

perform differently in another location (sheet/container)

– WHY?

Page 145: 116859720 Developer Powerpoint v 11

Comparative Analysis – Additional

• Actions

– Can be invoked on a particular state • E.G. CLEAR

– New actions • Selection: COPY STATE (to a new state)

• Selection: SWAP STATE (exchange selections in 2 named states)

• Layout: ASSIGN STATE (to an object)

• Build more dynamic UI’s to provide user with sense of state definition

– See Demo

Page 146: 116859720 Developer Powerpoint v 11

Lesson 18 – Scripting and Data Modeling

Challenges

Page 147: 116859720 Developer Powerpoint v 11

Objectives

• Explain the use link tables

• Calculate net change within a field

• Use advanced functions for handling time

• Identify why dynamic aggregation and interval matching

are important

Page 148: 116859720 Developer Powerpoint v 11

Link Tables

Page 149: 116859720 Developer Powerpoint v 11

Date Island

Page 150: 116859720 Developer Powerpoint v 11

Interval Match

Page 151: 116859720 Developer Powerpoint v 11

Lesson 19 – Performance Optimization

Page 152: 116859720 Developer Powerpoint v 11

Objectives

• Discuss performance tuning

• Explore the impacts of appropriate document design

• Introduce security concepts

• Review best practices

Page 153: 116859720 Developer Powerpoint v 11

Lesson 20 – QlikView Security

Page 154: 116859720 Developer Powerpoint v 11

Objectives

• Identify the components of QlikView document security

• Explain access control and restrictions

• Practice implementing QlikView Section Access

Page 155: 116859720 Developer Powerpoint v 11

Business Case Workshop

Page 156: 116859720 Developer Powerpoint v 11

Objectives

• Build a working QlikView analysis application

• Review business requirements

• Review data sources

• Plan development effort

• Build application

• Review and discuss with instructor/students

Page 157: 116859720 Developer Powerpoint v 11

Scenario

• ACME Inc., is a food & drink distributor selling to

different types of stores across the United States and

also internationally. They are interested in getting a

better understanding of their Sales and Margin

performance across their business.

• They have asked you to develop a Sales Analytics

QlikView application for them. The application will be

used by their top executives, their product managers and

also their salespeople.

Page 158: 116859720 Developer Powerpoint v 11

Thank You.


Recommended