Thanks to visit codestin.com
Credit goes to www.scribd.com

0% found this document useful (0 votes)
109 views36 pages

Qlikview Minus Points

Qlikview is a powerful reporting and visualization tool that simplifies analysis and decision making. It loads all data into memory, enabling minutes to change insights and always having all data visible. This is faster than traditional BI tools that require extracting, transforming and loading data through monthly processes. While Tableau has a cleaner interface, Qlikview menus provide more flexibility to create new data arrangements. Qlikview also uses in-memory technology to only store unique entries once, saving on memory usage.

Uploaded by

rajababu k
Copyright
© © All Rights Reserved
We take content rights seriously. If you suspect this is your content, claim it here.
Available Formats
Download as DOCX, PDF, TXT or read online on Scribd
0% found this document useful (0 votes)
109 views36 pages

Qlikview Minus Points

Qlikview is a powerful reporting and visualization tool that simplifies analysis and decision making. It loads all data into memory, enabling minutes to change insights and always having all data visible. This is faster than traditional BI tools that require extracting, transforming and loading data through monthly processes. While Tableau has a cleaner interface, Qlikview menus provide more flexibility to create new data arrangements. Qlikview also uses in-memory technology to only store unique entries once, saving on memory usage.

Uploaded by

rajababu k
Copyright
© © All Rights Reserved
We take content rights seriously. If you suspect this is your content, claim it here.
Available Formats
Download as DOCX, PDF, TXT or read online on Scribd
You are on page 1/ 36

Reporting tool: Mainly it is used for to analyze the data and it will help us to take better business

decisions.

1) What is qlikview?

a) Qlikview is powerful reporting tool and simplifies analysis and decision for everyone and it is a user
friendly .saves cost and time, Qlikview is both reporting and visualization tool.

b) Qlikview is a unique in-memory associate technology.

QV:

1. Easily consolidates multiple data sources

2. Loads all data into memory

3. Minutes to change
4. All data, always visible
5. Associate database

Traditional bi:

1. Data sources pre-determined by IT

2. Data goes through ETL (Extract, Transform, Load) process

3. Months to change
4. Insights missed in hidden data
5. Not having associate data base

4) Diff between tableau and qlikview?

Tableau minus points:

1. Tableau is slower than QlikView when it comes to its in-memory calculations.


2.There is a lack of freedom to create new arrangements of data.

Qlikview minus points

1. QlikView menus have too many tabs that lack a logical structure. Tableau has a cleaner, clutter-free GUI.

2. The visual outputs require time-intensive formatting—not intuitive drag/drop as in Tableau.

5) What is OLEDB?

a) Object linking and embedding database connectivity is oledb. And this is used for relational and non
relational database like sql, oracle, excel, raw data files. Oledb is successor to odbc not require setup of
dsn
6) What is odbc?

a) Open database connectivity and this is used for relational databases like sql, oracle and dsn need to
be installed for client to access. User/system dsn setup is required using sql driver or other database
drivers. And it’s connecting to data source and other things

7) Why oledb prefer than odbc?

a) Connection time and performance time is good in oledb when compared to odbc

Which one is the 3-tier & 2-tier architure?

OLEDB is the 3-tier architecture

ODBC is the 2-tier architecture

8) What is data model?

a) Representing the data what we have loaded

9) What is force 32 bit ?

The Force 32 Bit checkmark is used to specify that QlikView should look for 32-bit
drivers, along with 64-bit drivers, installed on the computer. It is relevant for
both ODBC and OLE DB drivers. If you have installed the 64-bit edition of QlikView, please
mark this option before
clicking the Connect… button so QlikView uses the correct connection engine.

10) What is synthetic key?

a) When we have more than one common field among 2 tables synthetic key will form

in general, synthetic keys should always be eliminated, otherwise it may slow down calculations
ways to remove

1. Comment the fields in load script


2. Rename the fields in load script
3. Using composite key (&’_’&)
4. Using qualifier and unqualifier statement

11. What is qvd? Size? Use?


QVD – QlikView Data File is a very powerful feature of QlikView.
12) Why qvd required?

Once data is exported in the QVD you don’t have to connect to database. Your data will
reside in QVD.
Reading from QVD is 10-100 times faster than reading from Data sources.
Incremental load can be implemented only by using QVDs
To create qvd:

STORE Table Name INTO ..\Data\FileName.qvd (QVD);


Buffer statement
Export data in to qvd

13. What is the preceding load?

The preceding load gives you the advantage of working with the QlikView syntax instead of the
SQL syntax. It will allow you to define multiple Transformations and calculations within the load
script.

14. What is In-Memory tool?

When u are accessing dashboard using access point or desktop the entire dashboard data is
stored in RAM. Then when u change any selections it generates the charts using data in RAM
instead of fetching from database. So that we are getting faster result.

15) Diff b/w source table & internal table?

Internal table view shows how qlikview stores the data and source tables view shows how
qlikview reads the data. And we can see synthetic key in internal table view and we cannot see
in source table view.

16) Relative path?

It gives with root directory

10) Which version your are using in the organization?

11.2

17. Diff b/w version 10 & 11.2?

V11: 1)comparative analysis(alternate states)2)granular chart dimension control3)container object-Grid


style4)new action added5)mapping load6)script editor drop down 7)qmc & qemc as qmc8)conditional
enables a dimension and expression

V10: 1) list box with expressions2) mekko charts 3) linked obj4) sheet obj4) menu caption icon 5) web
view
18) What is circular reference?

a) Among 2 fact tables sharing multiple common dimensions then we called it has circular.

19) How circular reference can be avoided?


a) Circular references are generally resource heavy and may slow down calculations and,
in extreme cases, overload an application.
Circular reference can be avoided by
1. Comment the fields in load script
2. Rename the fields in load script
3. using composite key
4. using qualify and unqualify.

20. What is information Density?


Def: Information Density is the number of records that have values (i.e. not NULL) in this field as
compared to the total number of records in the table.

21. What is subset ratio?


Def: Subset ratio is the number of distinct values of this field found in this table as compared to the total
number of distinct values of this field (that is other tables as well).

22. What is Optimization qvd & non Optimization qvd?


If u do all transformation while creating qvd that’s is optimized qvd and
If u do all transformations while loading data from qvd to qvw that’s is unoptimized qvd .
If use exist function that’s is optimized qvd .

23) What are the diff SAP Connectors?

Qlikview sap query connector, qlikview sap extractor connector, qlikview sap report connector….

24) What is include statement & must include?

When include statement is executing if file not exist then it will not throw error and when must include
executing if file not exist then it will throw a error.

25) How data is getting compression in qlikview?

Qlikview uses an associate in-memory technology to allow users to analyze and process data very
quickly unique entries are only stored once-in memory. Everything else are pointers to parent data.

26) Disadvantages of qlikview?

Fetching data from sap database is slow,

When we have more objects in container then the performance is slow.

27) What is dashboard?


Dashboard display information about a company at a given point in time that can be used to make
better business decisions

28) What is perfect key?

Nothing but 100% unique values

29) What is star schema and snow flake?

Star:- Having one or more fact tables and surrounded by multi dimension table

1) It is denormalized

Snowflake: Having one or more fact tables and surrounded by multi dimension table those dimension
table associated with other multi dimension table.

1) It is normalized

30) Why star is good in qlikview?

Response time and ram consumption time and script run time is good when compare to snowflake in
star schema

31) Join?

TYPES OF JOINS: JOIN WILL JOIN THE 2 TABLES BASED ON COMMON KEY FIELDS

1) Outer join:
The outer join returns all rows from the first table and all rows from the second table:

2) Inner join: matching rows from the left and right

3) Right join: row from right table and matching rows from left table

4) Left join : rows from left table and matching rows from right table

32) Concatenate?

TYPES

Concatenate is nothing but appending rows from one table to another it never merges any rows, and
sum of concatenate table rows equal to sum of the rows in product table

1) concatenate : if fields are not same but we want to combine then go for this
2) automatic concatenate : when 2 table fields are same then automatically gets concatenate
3) no concatenate : in the above scenario we don’t want to get concatenate then we go for this
33) Keep?

KEEP

TYPES

It won’t give product table like join but it will maintain the relationship

1) right keep : row from right table and matching rows from left table
2) left keep : rows from left table and matching rows from right table
3) inner keep : matching rows from the left and right

34) Why join why not concatenate?

If database size is huge then we go for join because if we go with concatenate, it will create junk
records and application size is going to increase so that we prefer for join for huge database.

35) Variables:

Variables:

Variables are named entities


It contains single value
will be created using SET or LET functions through script
can be created through Variable overview from document properties and through input box selection
Values of a variable can be changed by End User
Variable can have numbers or alpha numeric
If = sign is used in variable creation, it will evaluate the value as expression, else it will consider as text

SET
Set variables are used to define paths, strings, drives etc.
SET Variable Name =
String;
It can be only used in
script

LET
LET evaluates the
expression
It can be created through script / UI
LET Variable Name = Expression
36) What is mapping load? Where we use it?
a) In Qlikview it is always advisable to minimize the number of tables in the data model.
Mapping Tables are used in QlikView to clean up the data model.
Def:
Tables with just 2 columns can be removed and columns of that table can be mapped to
another table.
Mapping tables are stored in a separate area in memory and used only as mapping tables
during script execution. After script execution they will be automatically dropped.
Applymap (‘tablename’, fieldname) as new field

Map substring: it is used for mapping a part of any expression on a previously loaded mapping table

Syntax:- mapsubstring('mapname', expr)

Map using: it is used for mapping a certain field value to a value of specific mapping table

Syntax:- map *fieldlist using mapname

37) Data island?

It is nothing but if any table is alone in data model then we called it as Data Island

38) Difficulties faced developing data model?

First I have to understand business logic

The way data flow

Not required to load complete data from the database load only required data from the database using
filter conditions.

I typically go for star schema to develop data model because star is good in qlikview

Once data model is done I will validate the data model with source data

While developing data model if I get any synthetic key or circular loop then I will remove that

Application size is going to be depends on data model so that I will try to minimize the number of tables
in the data model like using applymap or join or concatenate

39) How u will come to know Ur data model is right or wrong?

I will validate my data model with source data like counting the number of records in both means qvw
and source data

I will validate data with source data for any specific factor.
39) ALL OPTIONS

40) All Objects:

LIST BOX:

The list box is the most basic sheet object. It contains a list of all possible values of a specific field.

Statistics BOX

The statistics box is a compact way of showing a numeric field in which the separate records are of less
interest than e.g. their sum or average.

MULTI BOX:

The multi box offers the ultimate solution to the problem of displaying a large number of list boxes on
the same sheet.

TABLE BOX:

The table box is a sheet object that shows several fields simultaneously. The content of every row is
logically connected. The columns may be fetched from different internal tables

INPUT BOX:

The input box is a sheet object that is used for entering data into QlikView variables and displaying their
values.

Current selection box:

In the current selections box, selections are listed by field name and field value.

BUTTON:

Buttons can be used in QlikView to perform commands or actions

TEXT OBJ:

Text objects are used for adding information to the document, such as labels etc.

LINE/ARROW OBJ:

The Line/Arrow object is a sheet object that draws a line or an arrow in the layout.

SLIDER/ALTERNATIVE:

Slider/Calendar objects provide alternative means for selecting field values in QlikView
BOOKMARK

The bookmark object is a sheet object that is used for displaying bookmarks for selections

SEARCH:

Search objects can be used for searching for information anywhere in the document.

CONTAINER:

The container object can contain all other sheet objects. The objects are grouped together and have
common settings for font, layout and caption.

CHARTS:

BAR CHART: This is the most basic chart type. Each x-axis value corresponds to a bar. The bar height
corresponds to its numerical y-axis value.

LINE CHART: Line charts present data as lines between value points; Line charts are useful when you want
to show changes or trends

COMBOCHART: The combo chart allows you to combine the features of the bar chart with those of the
line chart you can show the values of one expression as bars while displaying those of a second
expression as lines or symbols.

RADAR CHART: Radar charts could be described as line charts where the x-axis is wrapped around
360 degrees and with one y-axis for each x-value. The result is similar to a spider web or a radar screen

Scatter chart: The scatter chart presents pairs of values from two expressions. This is useful when
you want to show data where each instance has two numbers, e.g. country (population
and population growth).

Grid chart: The grid chart is a variant of the scatter chart that plots dimension values on the axes and
uses an expression to determine the plot symbol. It can also show a third dimension in the form of small
pie charts as plot symbols

Pie chart: Pie charts normally show the relation between a single dimension and a single expression,
but can sometimes have two dimensions

Funnel chart: The funnel chart is typically used for showing data in flows and processes. From a
Display standpoint it is related to the pie chart.
Block chart: The block chart shows the relation between expression values as blocks of varying area. It
uses a single expression and up to three dimensions, with each dimension block further divided into sub-
blocks. The total area of the block chart always equals 100% of the possible expression values.

Gauge chart: Gauge charts are used to display the value of a single expression without dimensions.

Pivot table: The pivot table is one of the most powerful tools for analyzing data. Pivot tables show
dimensions and expressions in rows and columns, for example in cross tables. The data in pivot tables
may be grouped. Pivot tables can show partial sums.
Straight table: In opposition to the pivot table (see page 213), the straight table cannot display subtotals or
serve as a cross table. On the other hand, any of its columns can be sorted
And each of its rows contains one combination of dimension(s) +expression(s).

42) Trellis charts: it is used to create array of charts based on the chart first dimension

2 dimensions required to see proper result

43) Loads:

44) General load: normal reload

45) Partial reload: Partial Reload is used whenever you just want to add some new
data without reloading all other tables.
Partial load itself means loading a portion of script;
 
Add Keyword is used to load a table first time.
 
And if table is already loaded then for loading agin that table we can use below

When executing a partial script reload, all lines are executed except for LOAD and SELECT not
preceded by ADD o REPLACE.

- ADD (appends or concatenates the data from one table to another table) wont checks for duplicates,
REPLACE (replaces the table or overwrite)

Add: it will add the the new data only if we are making any modifications in any existing data also it is
not going to apply.

Replace: it will completely replace the data

46) Binary load:


REUSING DATAMODEL, SCRIPT HIDING (LOADING DATA FROM ANOTHER QV)

Advantage: You can hide script from users.


Disadvantage: You can load only one qlikview file by using Binary load
Advantages:
1. Really FAST
2. You can load a whole model with only one line of code
  Cons:

1. Lack of flexibility
2. Can load only one model
47) RESIDENT LOAD -CREATING A LOGICAL TABLE FROM PREVIOUS LOADED TABLE

Resident used for some fields from already loaded table and manually loaded table

Resident load is also used to reuse already in-memory loaded tables. Preload is used to add dimensions and facts to the
current table.

 
With Resident load you can load the same table any N number of times again and again.  But with preceding load you can
only load one time.  Mainly this is been used in transformation, Calculation, using Qlikview functions with Select query etc.

48) INLINE LOAD -CREATING TABLE WHERE WE DON’T HAVE DATABASE

 Creation of Data Islands for creating flags


 Mapping Tables
 
Mostly using inline tables for mapping/joining with other tables is not advised for cases
where the data might change over time as you have to go and manually change  the
data.

This will be useful when the data is static and it will avoid a  database hit 
you can load data manually to qlikview.

INLINE LOAD also is used if data should be typed within the script, and not loaded from a file.

49) Bundle info: It is used to add some external files like audio and image files.

50) Optimization technique:

1) script level:

Removing synthetic key, dropping temp table, handling expression, using auto number
function, qvs file

2) layout level:

Min or max charts, monitoring memory consumption of objects, I will try to write
Expressions in script level in possible cases.
3) server level :

Separating large qvw file into multiple qvw file, data compression technique, load balancing

51)

Cross Table

Used to convert columns to rows

CrossTable(Attribute Field, DataField)

Attribute Field - From which column data to be converted to Row


DataField - The data under columns to moved to new Column and associates with Attribute Field

It is prefixed at Load statement

It can be done through below steps

From Script

Go to TableFiles-> Select File-> Click Next-> Click Next->Select CrossTable

Convert columns to rows and clikc OK button to come back to script

Can be used with following scenarios

Monthly data added by columns

Project, Department data

Branch, Location

52) Generic load:

Generic Load is opposite to Cross Table (Not literally). Using Cross Table you convert Columns to Rows
and using Generic Load you can convert Rows to Columns.

53) What is Link table? Where we use?


Link tables are generally used for linking the two table or the fact tables. With the use of link
tables, it’s possible to keep the fact tables separated from each other. The advantage of this
solution   for choosing this method is to keep the data model a logical one. With the use of link
tables, it’s possible to keep the fact tables separated from each other. 
a) What is a link table?
It is a table that stores all possible combinations of values
b) When is it used?
When there is more than one field in common between tables
c) Why does it need to be used?
To maintain integrity of your application

54) What is lookup function?


a) The most obvious lookup function is the function with the same name. With it, you can look
into another previously loaded table and retrieve a specific field value.

Lookup ('Sales2012','Customer_ID', ID,'SaleLastYear') as LYSale Here we have two tables..

SaleLastYear: having two fields Customer ID, Sales2012

Sales: having three fields ID, Month2013, Sales

Our aim is to get Last Year Sales (i.e. Sales2012) for each Customer so that we can compare it
to current year.

Lookup ('Output Field','SearchField', SearchValue,'TableName')

Output Field = Sales2012, means the result field we need from the other table

Search Field = Customer_ID, means the matching field from other table

Search Value = ID, means the field of current table in which we are using Lookup and which
is comparable to Search Field of other table.
Table Name = SaleLastYear, means Name of table from which then we need output.
Lookup ('Product Category', 'ProductID', ProductID, 'Product Table')
The Lookup () function will then return the value of the field Product Category (first parameter) in
the table Product Table (fourth parameter) from the record where the field ProductID (second
Parameter) has the same value as the field ProductID in the order data table (third parameter).

The advantage with the Lookup () function is that it is flexible and can access any previously
loaded table. The drawback is that it is slow compared to the Apply map () function

55) Error handling


Error Mode
Error Mode is the first statement to be used in begging of the script
Error mode = 0 - Will ignore all script errors and continue refreshing application
Error Mode = 1 - Will halt the script execution and prompt a script error message dialog box
Error Mode = 2 - Will stop execution where there is a error in table load and shows as execution
Completed. Once click on close we will get a popup saying "script execution failed".
Syntax : SET ErrorMode = 1;

ScriptError
Is used to validate the proper table / field load in qlikview script
This will be used at each table extraction
Numbers are specified against each error type
This will be used for defined error type
ScriptErrorCount
This is used if one or more tables load has multiple issues
IF a table has more than one issue and not available in the Script Error list, we can use ScriptErrorcount
This will identify count of errors during the table extraction

56) QVS: qlikview script file, we can export script to file and save it as a script file, this is also one of the
optimization techniques.

57) Interval matches:


The Interval Match is one of the functions in Qlikview which can be used for discreet data to one or more
dimensions that are changing over time

This can be used as prefix with Load or SQL Select Statements. This will help the use of avoiding joins,

Interval Match is used to match a date in one table to an interval in another

Interval Match
Called as Slowely changing dimensions
Used to implement for a dimension which is changing to different area over a period of time
To avoid multiple joins for different time intervals
Interval Match is the function used for joining tables

Examples
Employee associate with different projects over a period of time
Student ranking
Products which is been moved to different category
Table structure
Ranks
Min Max
ID Marks Marks Rank
1 35 50 Pass
2 51 60 Third
3 61 80 Second
4 80 100 First

Scores
Student Marks
St1 35
St2 50
S3 68
Employee Department

Departmen Min Max


t Date Date

Functions :

RecNo() is the record number of the input to the Load statement.


RowNo() is the record number of the output of the Load statement.

Conditional Functions
If comparing values with given condition and returns the output
matching a single filed format to any matching string format and return the
Alt output
Pick it returns the nth value from expression
Match The match function performs a case sensitive comparison
Mixmatch The mixmatch function performs a case insensitive comparison
Wildmatch The wildmatch function performs a case insensitive comparison

Counter Fns
Recno record count per table load
Rowno total row count
Fieldvaluecount No of fields

Inter Record Fns


Exists Determines whether a specific field value exists in a specified field of the data loaded so far
Previous Returns the value of expression using data from the previous input record
Peek Returns the contents of the fieldname in the record specified by row in the internal table table
FieldIndex to find position of a message text in the table row
FieldValue it is like retreving a message text from a table row having in nth position
Lookup we can look into previous loaded table and can retrive specfic value

String Functions
Chr ASCII format conversion to string
Ord ASCII format conversion to Number
Evaluate Used to evaluate output of two values in script
FindOneOf to find possition of a corrosponding text in a string
Index To find possition of a substring from a string
Keepchar to keep the characters in a string
Purgechar To remove characters in a string
Len length of a string
Ltrim To remove unwanted spaces in leftside of the string
Rtrim To remove unwanted spaces in rightside of the string
Trim To remove unwanted spaces from a string
Left substring of a string in left side with number of characters
Mid To retreive substring from a string with starting position and number of chartercter
Right to retrieve a sub string from a string in the right side
Repeat To repeat any character or text, eg: can combine original field value and any dummy value assi
Replace replace any character/string with given character
Subfield To retrieve substring a record from a long string with delimeted seperated
Textbetween To Find text between to substrings from a string
Lower To convert into lower case letters
Upper To convert into Upper case letters
Capitalize Initial Capitals for a string
Substringcount To Count a substring mensioned is repeated from a string, result is number
Hash128 To Retrieve a String from a combination of field values as unique string value
Hash256

Numeric Functions
Div Division of two integer
Ceil number will be conveted to upper level value
Floor number will be conveted to Lower level value

Round To round of the number


Fabs Converting -ve integer to +ve integer
Numsum sum of numeric values
Numcount count of numeric values
Numavg average of numeric values

Nummin minimum value in numeric


Nummax maximum value in numeric
Even even values
Odd odd values
Mod module of 2 int
INCREMENTAL LOAD:

Insert Only:
Insert only is the process which just takes new data from the source and adds it to the existing QVD
Steps :
1. Load all the data from a db table and store it into QVD.This is referred as initial load(load table from database)
2. 2. Load all New data from the db. There can be many ways to identify New data. One way is to have a
LastUpdate date in table and while loading the table check for the last update date.
Where last update >=’date’; (where orderdate >=’15/10/2013’;)
3. Concatenate this data with the Load of all the data from the QVD file and store the entire table into the QVD.
This will overwrite the existing QVD.
This completes Incremental Load with Insert Only option

Insert and Update:

Incremental Load with Insert and Update is similar to “Insert Only”

In this type of Incremental Load you will take new rows from the database and add/append  to the existing QVD.

1. Load all the data from a db table and store it into QVD.This is referred as initial load(load table from database)
2. 2. Load all New data from the db. There can be many ways to identify New data. One way is to have a
LastUpdate date in table and while loading the table check for the last update date.
Where last update >=’date’; (where orderdate >=’15/10/2013’;)
3. Concatenate. Here you will check for PrimaryKey and load only those rows where PrimaryKey is new.This
will ensure that only new rows are added and existing rows are not overwritten
(where not exists (primeid))

Insert, Update and delete:


This option is similar to Insert and Update with only exception that you need to delete records that have been
deleted from the source system.

Follow the same steps as above with Initial load, Incremental load concatenate and then use Inner join script to
exclude records that are deleted from the source system.

After executing this load, you will see that new rows are added to your qvd and the row which was excluded from the
db is deleted from your qvd.

Incremental loads are very useful when you have to load large transactional tables frequently and maintain the data
integrity.

Qlikview set analysis is a powerful way for you to create dynamic data sets
Sets can be used in aggregation functions
Aggregation functions aggregate the values over set of possible records which are reflected basis current selectioins
With Set expression we can define an alternate expression by keeping required parameters and values
A object can be created to use with user defined analysis instead reflecting basis selections
Eg. Year on Year, Month over Month sales

It has 3 major categories


Set Identifiers
Set Operators
Set Modifiers

Set expression always begins and ends with {}

Set Identifiers
$ - Selected values data displayed
1 - all data displayed

Set Operators

+ Union

- Exclusion

* Intersection

/ Symantec difference

Set Modifiers
Modifier begins and ends with < >

Comparative analysis:
``
Comparative analysis is a powerful Qlikview tool that allows a way to analyze data based on multiple groups. It is not a

Comparative Analysis
This feature allows user to compare information with many permutation and combinations
Alternate State feature is used to implement Comparative Analysis
Groups will be created to add a column to Alternate State group
A column which is included under Alternate State group will be separated from actual associated data
Selections in associcated tables will be not reflected in the fields which used under alternate state groups
Multiple fields can be added under a single alternate state group
These fields will be associated internally
Groups created under alternate states will be used in expression in chart object for comparative analysis
Analysis can Base vs Base or Base vs Others or Others vs Others
Syntax for using groups in expressons
Sum({[Group1]}Sales)
Sum({({[Group1]<Field1 = $::Field1>}Sales)

This will filter data based on selectioin made in Group1 fields under alternate states
This will filter data from Group selections and main selections

Set analysis:

Some features and characteristics for Set analysis are:


 It is used to create different selection compared to the current application selections
 Must be used in aggregation function (Sum, Count….).
 Expression always begins and ends with curly brackets { }
A set may be composed of:
- An identifier
- An operator
- A modifier
These 3 fields are optional. Of course, to write a set, you will need to incorporate one or several of these f
a set analysis is calculated once per chart (or table). NOT once per row.
THE IDENTIFIERS:
0 – empty set
1 – complete application and ignore current selection.
$ - current selection (take care that sometimes your chart or table does not use the current selection but an
Alternate States)
$1 – previous selection ($2: the second previous selection, etc.)
$_1 – next selection
Bookmark01 – name or ID of a bookmark
Group – group name (Alternate State)
The operators
+ : union of sets
*: intersection of sets
- : Exclusion of two sets
/ : members belonging to only one of the two sets
The following are some scenarios where a developer may wish to use Set Analysis:-

 To compare a measure for multiple time periods.


 To restrict values from fields in a calculation
 To Ignore or include some or all of the current selections

To perform Cumulative calculations or Year to date results

Standard Sum of field Sales:-

SUM( SALES)
Set Analysis style SUM of field Sales. The $ means that all current selections remain:-

SUM(
{$}
SALES)

Set style SUMof field Sales. The 1 means current selections are ignored:-
SUM(
{1}
SALES)

SUM of Sales for All(*) countries and including current selections:-


SUM(
{$
<[Country] = {"*"} >
}
SALES)

Sum of Sales for all counties,excluding current selections:-


SUM(
{1
<[Country] = {"*"} >
}
SALES)

Sum of Sales for United Kingdom andincluding current selections:-


SUM(

{$

<[Country] = {"UK"} >

SALES)

Sum of Sales for All Countries except United Kingdom, including current selections:-
SUM(

{$

<[Country] -= {"UK"} >

SALES)
Dynamic Record Sets

Point in Time reporting is easily achieved using set analysis. If you wanted to obtain the years sales for 201

Sum(
{$
<Year = {2010}>
}
Sales)

First determine the function that will return the required value, Max(Year) – 1. In this example if the user sel
get the value of the previous year based on the last possible year.

Next you use this function as a set modifier in the final expression, as follows:-

$(=Function()) (NB equal sign)

The final expression would look as follows:-

Sum(

{$

<Year = {$(=Max(Year) – 1))

Sales

Adding and Removing Values to Selections


The following operators can be used to modify the selections that have been made by the user:-

= Redefines the selection made for a given field

+= Defines a union between the selected field value and the next specified:-

Sum(

{$

<Year += {2009, 2010}>

}
Sales)

…… This expression will return the sales for the years that the user has selected AND the years 2009 and

-= Defines an exclusion of the value specified from the value that the user has selected:-

Sum(

{$

<Product -= {‘Product X’}>

Sales)

…… This expression will return the sales for the products the user has selected excluding Product X.

*= Defines the values that occur in both the users selections and the values specified in the set expres

Sum(

{$

<Product *= {‘Product X’}>

More Examples

Sum of Sales and ignore specific selections for Customer Country and Policy Status:-
SUM( {$<[Customer Country] = , [Policy Status] = >}Sales )

Sum of Sales where Policy Created Year equals variable vMaxCreatedYear:-


SUM({$<[Policy Created Year] = {$(#vMaxCreatedYear)}>}Sales )

Sum of Sales where Policy Created Year greater than or equal to variable v2002:-
SUM({$<[Policy Created Year] = {">=$(#v2002)"}>}Sales )

Sum of Sales where Policy Created Year less than variable v2002:-
SUM({$<[Policy Created Year] = {"<$(#v2002)"}>}Sales )

Sum of Sales where Policy Created Year greater than or equal to v2002 and less than or equal to v2004:-
SUM({$<[Policy Created Year] = {">=$(#v2002) <=$(#v2004)"} >}Sales )
Sum of Sales where Product not equal to Life Plan:-
SUM({$<Product -= {"Life Plan"} >}Sales )

Sum of Sales where Policy Created Year is greater than1999 butless than 2004:-
SUM({$<[Policy Created Year] = {“>1999<2004”}>}Sales)

Sum of Sales for policies created in the Years beginning “200*” :-


SUM({$<[Policy Created Year] = {“200*”}>}Sales)

Sum of Sales excluding where Product equals *Plan* :-


SUM({$<~Product = {“*Plan*”}>}Sales)

Sum of Sales to include all current selections and the union of the 2 products, Life Plan and Fleet Secure:-
SUM({$<Product += {"Life Plan", "Fleet Secure"} >}Sales )

Sum of Sales to include all current selections and Years 20* and 1997 minus the year 2000:-
SUM({$<[Policy Created Year] += {“20*”,1997} – {2000} >} Sales )

Sum of Sales to include all current selections, and the intersect of product Fleet Secure:-
SUM({$<Product *= {"Fleet Secure"} >}Sales )

This expression returns the sum of sales for the previous year in relation to the current selection. A dollar-s
SUM({$<[Policy Created Year] = {$(#=Only([Policy Created Year])-1)}>}Sales )

Returns the sum of Sales for all current selections excluding the products with Plan and Secure in their title
SUM({$-1<Product = {"*Plan*", "*Secure*"}>}Sales )

Return the sum of sales for all current selections, with a new selection in the “Customer” field. Only include
SUM(
{$
<Customer = {“=Sum({1<Year = {2007}>} Sales ) > 1000000”}>
}
Sales )

Sales)
…… returns the sales for the current selection but only for the intersection of currently selected products an

Normalization(snow)

......................

It reduces redundancy.it is done to improve performance of query.

normalization is the process of reducing data redundancy and maintain data integrity.

Denormalization(star)

.........................

Denormalization on the contrary is the process of adding redundant data to speed up complex queries
involving multiple table joins.

SCD:

type 1: slow changing dimension should be used when it is not necessary for the data warehouse to
keep track of historical changes.

type2:slow changing dimension should be used when it is necessary for the data warehouse to track
historical changes.

type3: slow changing dimension should only be used when it is necessary for the data warehouse to
track historical changes,and when such changes will only occur for a finite number of time.

Selection This actions are used


at Field level
Select In Field
Used to select a field
value(s) in a field
To select multiple
values use
("Value1"|"Value2")
Parameters required
are "Field" and
"Search String"
Field - Add
Field
Name
Search
String -
Add Field
Value
Field value can be
passed directly or
through a variable
Select Excluded
Used to select
excluded values in a
field
Parameters required
are "Field"
It will search for
previously selected
values in a field and
select excluded values
Select Possible
Used to select other
Field values which are
impacted by
selections in a field
Toggle select
Used to select
multiple values in a
field
same as Select in Field
actions
Forward
Used to navigate to
forward selections in
a document
Back
Used to navigate to
backward selections
in a document
Pareto Select
Used to perform
Contribution analysis
for a value
Analysis by
Customer(s) which
contributed to sales
for x%
This can also be done
through Dimension
Limits in Charts
Lock Field
Used to Lock a
specified field value in
a field
It will be occurred
only when a value is
selected
Unlock Field
Used to Unlock a
specified field value in
a field
It will be occurred
only when a value is
selected
Lock All
Used to lock multiple
fields which are in
selected mode
It will be occurred
only when a value is
selected
Unlock All
Used to Unlock
multiple fields which
are in selected mode
It will be occurred
only when a value is
selected
Unlock and Clear All
Used to Unlock and
Clear all field values
Clear Other Fields
To keep selections for
a particular field and
clear other fields
values
Clear All
To clear All fields
which are in selected
mode
Locked fields will not
be cleared
Clear Field
To clear a specified
field
Locked fieldswill not
be cleared

Layout This is used at Sheet /


Object level

Activate Object
To actiaveta Object
Activated object
caption color will
different from non
activated objects
It requires Object ID
to be mentioned
Activate Sheet
To activate a specified
sheet
IT navigate from
current sheet to
specified sheet
It requires Sheet ID as
input
Activate Next Sheet
Used to Activate from
one sheet to another
sheet in forward
mode
Not required any
sheet ID as input
Sheets will be
navigated as per the
order of the sheets
(not as per the sheet
ID)
Activate Previous Sheet
Used to Activate from
one sheet to another
sheet in backward
mode
Not required any
sheet ID as input
Sheets will be
navigated as per the
order of the sheets
(not as per the sheet
ID)
Minimize Object
Used to minimize a
particular Object
It requires Object ID
as input
Maximize Object
Used to Maximize a
particular Object
It requires Object ID
as input
Maximized object will
occupy entire sheet
area
Restore Object
Used to Restore a
particular Object
It requires Object ID
as input
Set State Name
This is used to include
a Object under any
state
This will be used
when a object needs
to included under any
alternate state
It requires parameters
as Object ID & State
Object ID - Any object
which is created in
sheets
State - Group created
under Alternate state

Chart Limitations:

Bar Chart:
Good for comparison of similar measurements.

.common diagram style,easy to understand.

Line Chart:

Measurements to follow its movements or comparisons among items.

Line charts are useful when you want to show changes or trends.

Radar Chards:

Comparison of highlevel groups.

Scatter Chart:

Measurements act as demensions

Grid Chart:

2 or 3 Dimensions with a measurements easurements.

Pie Chart:

Visual distribution measurements.

Funnel Chart:

The chart may be shown with either segment height/width or segment area proportional to data.it is
also possible to draw chart with equal segment heights/widths without regards to data points.

Gauge Chart:

Ratio of measurements.

Mekko Charts:

Mekko charts are useful in such areas as market analysis

Trellis Chart:

Multi-Dimensions with one or more measurements where the first dimension of the chart is used as an
iteration for producing an array of chart.

Mini Chart:
Multi dimensional snapshots and comparitions.

1) What is fact table? What is the use?

Fact Tables are the Heart of Data warehousing... They are the tables having measurements,
metrics or Business process. Major work around is being done using these tables.. They should
be located in center of Start Scheme (1 Fact Table only) or Snowflake (More than 1 Fact
Table))schema with Dimensions tables linked around.
 
Consider below case. For Sales Oriented company....
 
Sales Table = Fact Table
Customer Table, Supplier Table, Salesman Table all are Dimension Table

2) What is Dimension table ? what is the use ?


Dimension tables contain attributes that describe fact records in the fact table. Some of these
attributes provide descriptive information; others are used to specify how fact table data should
be summarized to provide useful information to the analyst

3) What is the difference between a fact table and a dimension table ?

When comes to data modeling, we have fact and dimension tables.


Fact- Stores transactional data ( e.g how many purchased a product today from a website(sales))- Measures will be
there(sum, count etc). This table keeps changing whenever the sales is happening.
Dimension - Stores high level data (Customer table - customer name , country) .This type of data you wont get in
fact table. Change in data will not be often

Security:

Section access:

There are two good reasons to implement section access into your documents.
To help protect your data from unauthorized access.
To limit what data authorized users can see and what they can do.
ACCESS:

A field that defines what access the corresponding user should have and is a required
field for all section access solutions.
There are two access levels in Section Access, “ADMIN” and “USER”.
USERID
A field that should contain an accepted user ID.
QlikView will prompt for a User ID and compare to the value in this field.
This user ID is not the same as the Windows user ID.
Note that the USERID isn’t case sensitive. All fields in the Section Access definition is
interpreted as uppercase.

PASSWORD
This field must contain an accepted password.
QlikView will prompt for a Password and compare to the value in this field.
This password is not the same as the Windows password.
Note that the USERID isn’t case sensitive. All fields in the Section Access definition is
interpreted as uppercase.

SERIAL
This field must contain a number corresponding to the
QlikView serial number.
Example: 4900 2394 7113 7304.
QlikView will check the serial number of the user and compare it to the value in this
field.
The SERIAL can be found in QlikView, “Settings”->”User Preferences”->License-tab

NTNAME
This field must contain a string corresponding to a Windows
NT Domain user name or group name.
QlikView will fetch the logon information from the OS and compare it to the value in
this field.
Example: DOMAIN\NTNAME
NTDOMAINSID
This field must contain a string corresponding to a Windows NT Domain SID.
Example: S-1-5-21-125976590-467238106-1092489882
QlikView will fetch the logon information from the OS and compare it to the value in
this field.
The NTDOMAINSID can be derived from the script, “Edit”->”Insert Domain SID”
NTSID
This field must contain a Windows NT SID.
Example: S-1-5-21-125976590-467238106-1092489882-1378
QlikView will fetch the logon information from the OS and compare it to the value in
this field.
The NTSID can be generated via free 3’rd party applications such as “Getsid.exe”.
OMIT
A field that should be omitted for a specific user.
REDUCTION
A reduction field can be added to control access to data for each individual user.
The value in the reduction field is used to match against another field in the application
with same name. If a match is found, the data will be reduced for the field and presented
to the user. The result will be the same as if this field was selected in the application
and all none associated fields would be reduced.
If the section access solution contains more than one reduction field the logic was
made stricter in the SR3 release of 8.50.
If the two (or more) reductions are mutually exclusive and “Strict Exclusion” is used,
QlikView will refuse to open the application. I.e. there may be applications that you
can open with previous versions, but not with QlikView 8.50 SR3.

“Strict Exclusion”
Access to the document will be denied whenever the field values in the section access
reduction fields lack matches in their corresponding section application field.
Having this option unselected will mean that if QlikView can’t find a match to reduce
data, all data in the document will be visible on USER level. However, ADMIN will
always be able to see all data, regardless of the reduction. Best practice is to use strict
exclusion to avoid unwanted access to the QlikView document.
“Prohibit Binary Load”
If this option is selected it will not be possible to load data from the document’s qvw
file via a binary statement in another QlikView document. It’s highly recommended to
use this option to increase security.

2) what is authorization and authentication?


a) who are you is and checking for credentials is authentication and what are you allowed to
see and what are u allowed to do is authorization.
Authentication and Authorization are two important concepts in securing any application.  Let’s start with some simple
definitions.  Authentication makes sure that the person accessing the system is the person  he says he is.  Authorization only
lets you access information and complete actions that you are allowed to, based on your identity.

What is the difference between File System Security vs Section Access?


file system security is at the document level; you authorize a user/group to access the whole doc
 
section access is inside the document, more granular; with section access you authorize the user at the
row level

Types of services:

-----------------------------

Qds:qlikview distibution service.

...............................................

.prepare and distibutes files

Qms:qlikview management services.

.........................................................

.communicates with all services.

Dsc:directory service connector.

...................................................

.keeps tracks of the user.

Qvs:Qlikview server.

...................................

.hosts the files for the end users.

Qvws:qlikview web server.

...........................................

.access point
Qlikview server additions:

-----------------------------------

.Enterprise Server

.............................

it is avaiable for customer looking to support large number of users and integrate into enterprise
environments.

.Small Business Server

.....................................

.Designed to be used in smaller deployments.

For use only with named and document cals

.limited to 25 named user cals

.limited to 100 document cals

.no support for additional servers

.Extranet Server

...........................

.This server requires authentication and the users must be external to the purchasing organisation.

.only the AJAX client and mobile clients may access the server.

.Information access server.

..............................................

.The qlikview server must be on the public internet,and must be publically accessible.

.The URL for accessing the site powered by the Qlikview server must be made available and must be
publically accessible.
QlikView Chart Type:
 
1. QlikView Bar chart — This is the most basic chart type. Each x-axis value corresponds to a bar. The
bar height corresponds to its numerical y-axis value.
 
 
2. QlikView Pie chart– Shows the relation between a single (primary dimension) and a single expression.
A variant chart type is drawn when a secondary dimension is introduced. If more expressions than one are
enabled in the Chart properties: Expressions page, the first in the expression list will be displayed. To
switch expression use the Promote/Demote buttons in the Expressions property page.
 
 
3. QlikView Combo chart– The combo chart allows the combination of the features of the bar chart with
those of the line chart. One expression will be displayed by lines and/or symbols,the other as bars.
 
 
4. QlikView Scatter chart — The scatter chart plots data points representing combinations of expressions,
iterated over one or several dimensions. Both axes are continuous, representing one expression each.
 
 
5. QlikView Line chart — The line chart is essentially defined in the same way as the bar chart. Instead of
using bars the data can be presented as lines between value points, as value points only or as both lines
and value points ,
 
 
6. Radar chart– The radar chart is a variant of the line chart where the x-axis is plotted in a circle around
the chart, resulting in a projection reminiscent of a radar screen or a spider’s web.
 
 
7. QlikView Grid chart — The grid chart is a variant of the scatter chart that plots dimension values on
the axes and uses an expression to determine the plot symbol. It can also show a third dimension in the
form of small pie charts as plot symbols.
 
 
8. QlikView Gauge chart– Gauge charts are used to display the value of a single expression, lacking
dimensions.
 
 
9. QlikView Block chart — The block chart shows the relation between expression values as blocks of
varying area. It uses a single expression and up to three dimensions, with each dimension block further
divided into sub-blocks. The total area of the block chart always equals 100% of the possible expression
values.
 
 
10. QlikView Funnel chart — The funnel chart is typically used for showing data in flows and processes.
From a display standpoint it is related to the pie chart. The chart may be shown with either segment
height/width or segment area proportional to data. It is also possible to draw the chart with equal segment
heights/widths without regards to data points.
 
 
11. QlikView Pivot table — The pivot table presents dimensions and expressions in table form. There is
no formal limit to the number of dimensions or expressions possible. A pivot table can be defined without
expressions, generating a tree view for navigating the dimension levels
 
 
12 . QlikView Straight table — The straight table differs from the pivot table in that it can not display
subtotals and that the grouping of dimensions is shown in record form so that each row of the table
contains field and expression values.
 
 
13. QlikView Mekko charts — Mekko charts present data using variable width bars. They can display up
to three levels of data in a two dimensional chart. Mekko charts are useful in such areas as market
analysis.

First i would suggest be clear with the requirement and than think which chart suits best. M giving few examples which suits best in
scenarios.
1- Bar Chart - Comparisons, suppose you want to compare CY Sales vs PY Sales, Drill Down/Cyclic dimension Representations,
Actual Vs Target than Bar Chart suits best.
2- Line Chart = Specially to show trends, Month on month, YoY Sales etc.
3- Combo Chart= Combination of bar and line Chart
4- Pie Chart = Contributions of percentage
5-Funnel Chart= Specially for Bucket analysis.
6- Radar Chart= for Hypothetical Surveys
7- Gauge Chart= Achievements, dimension less and specially for dashboard, for MTD/YTD analysis.
8- Scatter Chart= Shows Density
9-Mekko Chart= Shows Tree kind of Analysis as per Area... bigger area represent greater sales.
10-Block Chart= Block wise sales

You might also like