Sunteți pe pagina 1din 128

Mihaela Muntean, Ana-Ramona Bologa

Business Intelligence. Teorie și practică, editura ASE, 2015,


ISBN 978-606-505-858-3

Capitolul 5. Dezvoltarea și implementarea


soluțiilor BI

5.1. Realizarea unei soluții BI utilizând


Qlikview
Un document Qlikview (fișier QVW) este compus din două elemente:
 Setul de date analizat care include toate sursele de date necesare pentru a
crea modelul de date;
 Interfața prin care utilizatorul analizează datele;
Pentru a extrage datele din diferite surse de date, se utilizează un script.
Scriptul include comenzi SELECT-SQL, dacă datele sunt extrase din baze de date
relaționale sau comenzi LOAD, dacă datele sunt extrase din fișiere (text, Excel,
csv, html, etc.) (figura 5.1).

Fișiere text,csv,
excel
Baze de
date

Select load

script

Open
Qlikview
QlikView fisier(qvw)
Save

Figura 5.1. Încărcarea datelor în documentul Qlikview

Un document QlikView este format din mai multe pagini (sheet). O pagină
poate conține mai multe obiecte cum ar fi: liste, casete statistice, diferite tipuri de
grafice, obiecte de tip slider/calendar, containere, liste multiple, etc. Fereastra de
proprietăți ale unui obiect se accesează prin combinația de taste CTRL+ALT+S,

1
Mihaela Muntean, Ana-Ramona Bologa
Business Intelligence. Teorie și practică, editura ASE, 2015,
ISBN 978-606-505-858-3
sau click cu butonul dreapta al mouse-ului pe obiect și se selectează opțiunea
Properties din meniul asociat. Principalele obiecte ale unei pagini sunt:
Lista (List box) (prima icoană din stânga, din bara de butoane prezentată mai
jos) afișează valorile unui atribut din modelul de date (de exemplu, atributul
Regiune). Se utilizează pentru a face selecții și filtrări de date. Toate obiectele cu
excepția butoanelor, obiectelor de tip text și obiectelor de tip linie/săgeată pot fi
utilizate pentru selecții.

Caseta statistică (Statistics box) (a doua icoană din stânga) permite realizarea
unor statistici, utilizând valorile unui singur atribut. De exemplu, se poate crea o
casetă statistică pentru atributul Numar angajati, care va afișa numărul mediu,
numărul maxim și numărul minim de angajați.

Caseta pentru introducere date (Input box) (a șasea icoană din stânga)
permite modificarea valorilor unei variabile (de exemplu, valoarea variabilei vTop).

Lista multiplă (Multi box) (a patra icoană din stânga) afișează valorile mai
multor atribute, fiecare atribut pe o singură linie. Se pot selecta valorile acestor
atribute. De exemplu, se poate crea o listă multiplă care va afișa informații despre
companii (denumire, categorie, regiune). O valoare va fi afișată în lista multiplă,
numai dacă este opțională/selectată.

2
Mihaela Muntean, Ana-Ramona Bologa
Business Intelligence. Teorie și practică, editura ASE, 2015,
ISBN 978-606-505-858-3

Tabelul (Table box) (a treia icoană din stânga) nu se folosește pentru a afișa
agregări calculate. De exemplu, se poate crea un tabel care va afișa indicatorii
profit net, cheltuieli operationale, profit operational și venituri operationale pentru
fiecare combinație posibilă dintre valorile atributelor: Denumire, An, Trimestru și
Regiune.

Grafice. Se pot crea diferite tipuri de grafice: linie, bară, scatter, mekko, funnel,
gauge, tabelă liniară/straight, tabelă pivot, etc.
Butoanele se pot utiliza pentru a se executa diferite comenzi sau acțiuni: export
de date în fișiere, ștergerea selecțiilor, crearea unui bookmark, etc. De exemplu, se
poate crea un buton Anuleaza selectii pentru a anula selecțiile curente.

Selecția curentă. Qlikview are o opțiune care arată utilizatorului care sunt
selecțiile curente și anume din meniu, opțiunea View/Current Selections sau
combinația de taste CTRL+Q. De asemenea, se pot crea astfel de obiecte.
3
Mihaela Muntean, Ana-Ramona Bologa
Business Intelligence. Teorie și practică, editura ASE, 2015,
ISBN 978-606-505-858-3

5.1.1. QPM- Qlikview Project Methodology


Qlikview utilizează o metodologie proprie pentru dezvoltarea aplicațiilor BI
complexe și anume QPM (Qlikview Project Methodology) [Nieuwenhujis, 2011].
Această metodologie include o descriere a tuturor activităților legate de
managementul unui proiect Qlikview, precum și etapele de realizarea a unei
aplicații BI, inclusiv documente și livrabile. Aceasta metodologie include
următoarele etape: inițierea proiectului, etapa de planificare, etapa de execuție,
etapa de implementare și etapa de evaluare (figura 5.2).

testare

execuție
dezvoltare validare

Inițiere Planificare
proiect proiect imple- evalu-
mentare are

rafinare

Figura 5.2. Qlikview Project Methodology

Inițierea proiectului presupune următoarele activități:


 Definirea obiectivului inițial, care trebuie corelat cu obiectivele business-
ului;
 Planificarea și bugetarea inițială a proiectului cu următoarele activități:
o Estimarea duratei proiectului și a perioadei de timp alocată fiecărei
etape ;
o Stabilirea resurselor necesare;
o Definirea unui plan inițial cu activitățile proiectului și cu perioada
alocată fiecărei activități;
o Pregătirea bugetului proiectului;
 Definirea cerințelor inițiale cu următoarele activități:
o Definirea cerințelor de business și a restricțiilor;

4
Mihaela Muntean, Ana-Ramona Bologa
Business Intelligence. Teorie și practică, editura ASE, 2015,
ISBN 978-606-505-858-3
o Identificarea cerințelor inițiale legate de sursele de date: definirea
indicatorilor KPI, analiza sistemelor operaționale sursă (volumul
datelor, modul de actualizare a datelor, etc.);
o Înțelegerea modului cum sunt create, stocate, transportate și
raportate datele. Aceste analize inițiale vor stabili: tipurile de baze
de date necesare (depozite de date, centre de date, stocuri de date
operaționale, etc.), metodele de integrare a datelor și metodele de
livrare a rezultatelor (dashboard-uri, rapoarte, etc.);
o Stabilirea transformărilor necesare asupra datelor;
o Identificarea cerințelor legate de integrarea datelor (utilizarea de
instrumente ETL pentru migrarea datelor/instrumente pentru
evaluarea calității datelor, etc.);
o Realizarea unei mapări sursă-destinație;
o Specificarea cerințelor infrastructurii: numărul de utilizatori
concurenți, locația lor, tipul de server utilizat, etc;
o Specificarea cerințelor de securitate (criptarea, autentificare și
autorizarea accesului la date );
o Descrierea diferitelor soluții și utilizarea unui model SWOT pentru
fiecare soluție. Identificarea soluției optime.
Planificarea are ca scop stabilirea unei strategii pentru proiect și pregătirea
planului proiectului. Principalele etape sunt:
 Planificarea managementului proiectului cu următoarele activități:
o Actualizarea cerințelor de business și ierarhizarea lor, ținând cont
de obiectivele proiectului;
o Estimarea efortului necesar pentru implementarea cerințelor de
business. O cerință trebuie să fie implementată într-o singură
iterație, de aceea, aceste cerințe vor fi descompuse până la nivelul
la care sunt ușor de estimat;
o Validarea obiectivului și a scopului proiectului;
o Planificarea etapelor de execuție și implementare;
o Revizuirea resurselor necesare pentru următoarele etape și
actualizarea planului de organizare a proiectului;
o Alocarea resurselor la roluri și responsabilități, alocarea rolurilor și
a responsabilităților la fiecare task, pentru etapa de execuție;
o Revizuirea bugetului, ținând cont de ultimele modificări din planul
proiectului;
o Analiza riscului: identificarea riscurilor asociate cu proiectul,
evaluarea fiecărui risc, identificarea factorilor de risc, precum și a
măsurilor care pot reduce sau elimina acești factori;
o Crearea planului final al proiectului.
 Planificarea platformei Qlikview Enterprise cu următoarele activități:
o Realizarea modelului dimensional inițial (dacă utilizăm un depozit
de date/centru de date): identificarea tabelelor de fapte, a

5
Mihaela Muntean, Ana-Ramona Bologa
Business Intelligence. Teorie și practică, editura ASE, 2015,
ISBN 978-606-505-858-3
dimensiunilor, atributelor și faptelor, identificarea cheilor
primare/externe, definirea agregatelor;
o Definirea cerințelor pentru: extragerea, transformarea și încărcarea
datelor (încărcarea inițială și încărcarea incrementală) în
documentul Qlikview;
o Definirea arhitecturii aplicațiilor: tipurile de aplicații Qlikview
relevante pentru organizație, modul cum vor gestiona datele și
modul cum vor fi prezentate datele la utilizatori;
o Identificarea riscurilor asociate cu arhitectura stabilită și evaluarea
nivelului inițial de risc (de exemplu, catastrofal, critic, neglijabil)
și a frecvenței de apariție.
Etapa de execuție este iterativă și include multe cicluri de scurtă durată (în jur
de 3 săptămâni) care permit un feedback rapid de la utilizatori și obținerea de
livrabile, într-un timp cât mai scurt. Presupune următoarele activități:
 Dezvoltarea presupune:
o dezvoltarea procesului de încărcare a datelor (configurarea
conexiunilor, dezvoltarea scriptului de încărcare inițială a datelor);
o crearea modelului de date (crearea fișierelor QVD);
o dezvoltarea interfeței.
 Testarea presupune următoarele activități:
o se va verifica dacă sursele de date conectate sunt valide;
o se va verifica corectitudinea expresiilor create;
o se vor testa panourilor de bord pentru a verifica dacă afișează
indicatorii ceruți;
o se vor testa diferite scenarii de business;
o se va verifica dacă a fost configurată corect securitatea aplicației.
 Revizuirea și validarea de către client;
 Rafinarea soluției.
Implementarea include ca principale activități:
 Training-ul utilizatorilor;
 Managementul metadatelor;
 Inițierea procesului de mentenanță;
 Migrarea –mutarea aplicațiilor în producție;
 Suport pentru utilizatori.
Evaluarea presupune evaluarea aplicației BI, evaluarea managementului
proiectului, a managementului riscurilor, evaluarea echipei de proiect, a rolurilor și
a responsabilităților asociate. De asemenea, se stabilesc mecanisme pentru
îmbunătățirea soluției BI.

6
Mihaela Muntean, Ana-Ramona Bologa
Business Intelligence. Teorie și practică, editura ASE, 2015,
ISBN 978-606-505-858-3

Figura 5.3. Pagină pentru raportare

Proiectarea și dezvoltarea interfeței utilizează o abordare DAR (Dashboards,


Analysis, Reports), adică se vor construi pagini de tip tablouri de bord, pagini
pentru analiză și pagini pentru raportare. În Qlikview, rapoartele sunt considerate a
fi afișări statice ale informațiilor detaliate și oferă utilizatorilor abilitatea de a
vizualiza orice detaliu necesar pentru a demara o acțiune. Se utilizează tabele
pivot/straight (figura 5.3).

5.1.2. Studiu de caz


Studiu de caz prezentat în acest paragraf are un scop didactic, putând fi utilizat
ca și “tutorial”. S-a utilizat site-ul http://www.transtats.bts.gov [Research and
innovative Technology Administration Bureau of Transportation Statistics] care
oferă multe surse de date în format (csv) pentru analiza activității companiilor
aeriene din SUA. Activitatea unei companii aeriene poate fi analizată din punct de
vedere financiar, a personalului implicat în activitățile companiei și a activității de
bază. Pagina principală a acestui site este o pagină de tip dashboard care oferă
informații despre o serie de indicatori cum ar fi: numărul de pasageri îmbarcați,
factorul de ocupare, greutatea transportată, cota de piață, etc. (figura 5.4).

7
Mihaela Muntean, Ana-Ramona Bologa
Business Intelligence. Teorie și practică, editura ASE, 2015,
ISBN 978-606-505-858-3

Figura 5.4. Site-ul http://www.transtats.bts.gov

Au fost utilizate următoarele surse de date:


 Form 41 Financial Schedule (Schedule P-1.2.) include informații despre:
profitul/pierderile companiilor aeriene din SUA, cu un venit operațional
anual>20mil $, veniturile operaționale, cheltuielile operaționale,
deprecierea și amortizarea, profitul operațional, impozitul pe venit și
venitul net. Este un fișier (csv) cu 10474 de înregistrări, 52 de atribute, iar
perioada de timp este: 1990-septembrie 2013.
 Schedule P-6 include informații despre cheltuielile trimestriale ale
companiilor aeriene și anume: salarii, servicii, beneficii, materiale
achiziționate, servicii achiziționate, amortizare, cheltuieli de exploatare,
etc. Este un fișier (csv) cu 10465 de înregistrări, 42 de atribute, iar perioada
de timp este: 1990-2013.
 Schedule P-10 include informații despre numărul de angajați pe categorii
de muncă, pentru fiecare companie. Este un fișier (csv) cu 2320 de
înregistrări, 23 de atribute, iar perioada de timp este: 1990-2012.
Sursele de date au fost prelucrate și transformate în următoarele fișiere:
Fișierul Financiar.xls include numai o parte din atributele sursei Form 41
Financial Schedule (Schedule P-1.2.) și anume: Companie_ID, Denumire,
Categorie_ID, AN, TRIMESTRU, Regiune_ID, NETPROFIT (profitul net),
OP_PROFIT (profitul operațional), OP_VENITURI (venituri operaționale),
OP_CHELTUIELI (cheltuieli operaționale). Indicatorii financiari (NETPROFIT,
OP_PROFIT, OP_VENITURI și OP_CHELTUIELI) sunt specificați la nivel de
trimestru, pentru fiecare companie. De asemenea, fișierul include numai perioada
2000-2013. Veniturile operaționale includ veniturile obținute din activitățile de
bază (transportul pasagerilor, a poștei, a bagajelor, taxe, etc.). Cheltuielile
8
Mihaela Muntean, Ana-Ramona Bologa
Business Intelligence. Teorie și practică, editura ASE, 2015,
ISBN 978-606-505-858-3
operaționale includ cheltuieli datorate activităților de bază (mentenanță, promoții,
servicii oferite pasagerilor, etc.). Profitul net se calculează ca diferența dintre total
venituri și total cheltuieli, existând și alte venituri, decât cele menționate mai sus,
precum și alte cheltuieli (figura 5.5).

Figura 5.5. Fișierul Financiar.xls

Fișierul Cheltuieli salariale.xls include următoarele atribute din sursa Schedule


P-6: Companie_ID, Denumire, Regiune_ID, Categorie_ID, AN, TRIMESTRU,
SAL_MGT (salarii personal conducere), SAL_FLIGHT (salarii personal de zbor),
SAL_MAINT (salarii personal mentenanță), SAL_TRAFFIC (salarii personal trafic),
SAL_OTHER (salarii alte categorii de personal), TOTALSALARII,
TOTALBENEFICII (cheltuieli de personal, impozite pe salarii, alte beneficii,
pensii), CHELTUIELI_SAL (TOTALSALARII+ TOTALBENEFICII) (figura 5.6).
Indicatorii: SAL_MGT, SAL_FLIGHT, SAL_MAINT, SAL_TRAFFIC,
SAL_OTHER, TOTALSALARII, TOTALBENEFICII si CHELTUIELI_SAL au
aceeași granulație ca și indicatorii financiari, adică sunt specificați la nivel de
trimestru, pentru fiecare companie.

9
Mihaela Muntean, Ana-Ramona Bologa
Business Intelligence. Teorie și practică, editura ASE, 2015,
ISBN 978-606-505-858-3

Figura 5.6. Fișierul Cheltuieli salariale.xls

Fișierul Angajati-categorii-an.xls include următoarele atribute din sursa


Schedule P-10: AN, Companie_ID, Denumire, Categorie_ID, Regiune_ID, MGT
(numărul de persoane-personal de conducere), FLIGHT (personal de zbor),
MAINTENANCE (personal de întreținere), TOTAL (figura 5.7). Indicatorii: MGT,
FLIGHT, MAINTENANCE și TOTAL pot fi utilizați pentru a analiza evoluția în
timp a personalului implicat în activitățile companiilor aeriene, pe categorii de
personal, la nivel de companie/categorie, pentru o anumită perioadă de timp, etc.
O companie aeriană este inclusă într-o anumită categorie, în funcție de
veniturile anuale realizate. Fișierul Categorie_companie.csv conține informații
despre categoriile existente:
Cod, Descriere
"1","Companii aeriene regionale mari (cu venit anual intre 20mil-100 mil$"
"2","Companii aeriene nationale (cu un venit anual intre 100 mil$-1 miliard$)"
"3","Companii aeriene mari (cu un venit anual> 1miliard $)"

10
Mihaela Muntean, Ana-Ramona Bologa
Business Intelligence. Teorie și practică, editura ASE, 2015,
ISBN 978-606-505-858-3

Figura 5.7. Fișierul Angajati-categorii-an.xls

De asemenea, o companie aeriană poate efectua zboruri în una sau mai multe
regiuni geografice. Fișierul Regiuni.csv conține informații despre regiunile
geografice:
Cod, Descriere
"A","Atlantic"
"D","Intern"
"I","International"
"L","America Latina"
"P","Pacific"

În paragrafele următoare, se vor utiliza numai o parte din indicatori și anume:


profitul operațional, cheltuielile operaționale, veniturile operaționale, salariile
personalului de conducere, total salarii, profitul net marginal, cota de piață. Se vor
realiza următoarele analize:
 analiza profitului operațional/cheltuielilor operaționale/venituri
operaționale pe ani/trimestre, pentru fiecare companie;
 cât reprezintă procentual salariile personalului de conducere din total
cheltuieli salariale, la nivel de companie/categorie, pentru o anumită
perioadă de timp;
 cota de piață pe ani;

11
Mihaela Muntean, Ana-Ramona Bologa
Business Intelligence. Teorie și practică, editura ASE, 2015,
ISBN 978-606-505-858-3
 analiza profitului net marginal;
 cum au crescut/scăzut veniturile față de anul anterior, la nivel de
companie/categorie, pentru o anumită perioadă de timp;
 analiza comparativă a veniturilor operaționale pe regiuni și ani;
 primele trei companii care au contribuit cu mai mult de 10% la veniturile
categoriei din care fac parte;
 etc.

5.1.2.1. Crearea modelului de date


Pentru încărcarea surselor de date, se utilizează următorul script:
Companii:
LOAD distinct Companie_ID, Denumire
FROM [surse\financiar.xls] (biff, embedded labels, table is [financiar$]);
Categorii:
LOAD Cod as Categorie_ID, Descriere as Categorie
FROM surse\Categorie_Companie.csv
(txt, codepage is 1252, embedded labels, delimiter is ',', msq);
Regiuni:
LOAD Cod as Regiune_ID, Descriere as Regiune
FROM surse\REGIUNI.csv (txt, codepage is 1252, embedded labels, delimiter is ',',
msq);
Financiar:
LOAD AutoNumberHash256(AN, Regiune_ID, Categorie_ID, Companie_ID) as
FinanciarAngajatiID, NETPROFIT, OP_PROFIT , OP_VENITURI,
OP_CHELTUIELI, AN, TRIMESTRU, Companie_ID, Categorie_ID, Regiune_ID
FROM surse\financiar.xls (biff, embedded labels, table is [financiar$]);
JOIN load//joncțiune financiar cu cheltuieli-salariale, au aceeași cheie
SAL_MGT, SAL_FLIGHT, SAL_MAINT, TOTALSALARII, TOTALBENEFICII,
CHELTUIELI_SAL, Companie_ID, Regiune_ID, Categorie_ID, AN,
TRIMESTRU
FROM [surse\cheltuieli salariale.xls] (biff, embedded labels, table is
[cheltuielisalariale$]);
[Angajati]:
LOAD AN, Companie_ID, Categorie_ID, Regiune_ID, MGT, FLIGHT,
MAINTENANCE,
TOTAL, AutoNumberHash256(AN, Regiune_ID, Categorie_ID, Companie_ID) as
FinanciarAngajatiID
FROM [surse\angajati-categorii-an.xls] (biff, embedded labels, table is
[angajati$]);
Key:
Load distinct FinanciarAngajatiID, AN, Regiune_ID, Categorie_ID, Companie_ID

12
Mihaela Muntean, Ana-Ramona Bologa
Business Intelligence. Teorie și practică, editura ASE, 2015,
ISBN 978-606-505-858-3
Resident Financiar;
Join(Key)
Load distinct FinanciarAngajatiID, AN, Regiune_ID, Categorie_ID, Companie_ID
Resident Angajati;
Drop fields AN, Regiune_ID, Companie_ID, Categorie_ID from Angajati;
Drop fields AN, Regiune_ID, Companie_ID, Categorie_ID from Financiar;

Se execută scriptul (opțiunea Reload). Se deschide automat fereastra Sheet


properties și se pot selecta câmpurile care vor fi afișate ca liste în pagină și anume:
AN, Regiune și Denumire (figura 5.8). Modelul de date asociativ creat este
prezentat în figura 5.9. Din meniu se selectează opțiunea File/Save As și se
salvează documentul cu denumirea analiza.qvw.

Figura 5.8. Fereastra Sheet Properties

Fereastra Edit Script


Fereastra de editare a scriptului se deschide cu opțiunea File|Edit Script din
meniu, sau combinația de taste CTRL+E. Editorul are următoarele componente:
un meniu, o bară de butoane, o zonă unde se afișează scriptul (zona de editare) și o
zonă cu opțiuni pentru conectare la diferite surse de date (figura 5.10) [Qlikview,
2011a], [Redmond, 2013], [Qlikview, 2010], [Qlikview, 2011b].

13
Mihaela Muntean, Ana-Ramona Bologa
Business Intelligence. Teorie și practică, editura ASE, 2015,
ISBN 978-606-505-858-3

Figura 5.9. Modelul de date

Figura 5.10. Fereastra Edit Script

14
Mihaela Muntean, Ana-Ramona Bologa
Business Intelligence. Teorie și practică, editura ASE, 2015,
ISBN 978-606-505-858-3
Principalele opțiuni ale meniului sunt prezentate în tabelul 5.1 [Redmond,
2013], [Qlikview, 2010], [Qlikview, 2011b].
Tabelul 5.1. Opțiunile meniului asociat ferestrei Edit Script
Opțiunea Descriere

File|Reload Execută scriptul

File|Save entire document Salvează întregul document, nu numai scriptul

Tab|Add tab Scriptul poate fi organizat utilizând tab-uri. Se


adaugă un nou tab

Tab|Rename Redenumește tab-ul curent selectat

Tab|Promote Mută tab-ul selectat la stânga

Tab|Demote Mută tab-ul selectat la dreaptă

Atunci când se creează un document Qlikview, în zona de editare a scriptului,


sunt definite și setate automat o serie de variabile de sistem, în funcție de setările
sistemului de operare. Liniile de script sunt numerotate, comenzile utilizate în
script au diferite culori și fonturi. De exemplu, comanda SET este bolduită și are
culoarea albastru, iar textul care urmează este italic și are culoarea gri. Toate
comenzile sunt terminate cu (;) cu excepția: IF..THEN..ELSE, DO LOOP și
FOR…NEXT. Zona cu opțiuni pentru conectare la diferite surse de date include
următoarele tab-uri (figura 5.11):

Figura 5.11. Zona cu opțiuni pentru conectare la diferite surse de date

 Tab-ul Data permite conectarea la diferite surse de date;


 Tab-ul Functions afișează funcțiile care pot fi utilizate în script;

15
Mihaela Muntean, Ana-Ramona Bologa
Business Intelligence. Teorie și practică, editura ASE, 2015,
ISBN 978-606-505-858-3
 Tab-ul Variable afișează variabilele de sistem și cele create de utilizatori;
 Tab-ul Settings conține setările legate de acces, parolă, etc.
Un script este format dintr-o secvență de comenzi utilizate pentru a manipula
datele, sau pentru a controla modul în care scriptul este executat. De regulă,
scriptul este executat într-o ordine secvențială (de sus în jos și de la stânga la
dreapta). Dacă Qlikview identifică erori în timpul procesului de încărcare a datelor,
documentul se închide automat și se încărcă ultima versiune salvată. Se poate salva
scriptul înainte de execuție:
1. Se utilizează opțiunea File|Save Entire document din meniul ferestrei
Edit Script, sau combinația de taste CRTL+S, sau click pe icoana Save
din bara de butoane;
sau:
2. Se selectează din meniul principal, opțiunea Settings|User preferences,
sau combinația de taste (CRTL+ALT+U). Se selectează tab-ul Save și se
bifează caseta de validare Save Before Reload. De asemenea, se bifează
caseta de validare Use backup și se setează opțiunea Keep Last
Instances=5, adică sunt păstrate ultimele 5 versiuni ale fișierului Qlikview.
Pentru a executa scriptul:
1. Se selectează opțiunea File| Reload, sau combinația de taste CRTL+R,
sau click pe butonul Reload din bara de butoane;
2. După execuția scriptului, se deschide automat fereastra Sheet Properties,
click butonul OK pentru a închide această fereastră.
Comanda COMMENT poate fi utilizată pentru crea comentarii asociate
tabelelor logice/atributelor. Aceste comentarii apar în fereastra Table Viewer,
atunci când ne poziționam cu mouse-ul pe denumirea atributului, sau în fereastra
Tables (opțiunea Settings|Document Properties|tab-ul Tables, din meniul
principal). De exemplu, se va adăuga un comentariu asociat tabelei logice Regiuni,
precum și un comentariu asociat atributului FinaciarAngajatiID:
COMMENT TABLE Regiuni WITH 'contine informatii despre regiunile unde isi
desfasoara activitatea companiile';
COMMENT FIELD FinanciarAngajatiID WITH 'cheia pentru tabela de legatura';
De asemenea, se poate utiliza și clauza MAPPING (comanda LOAD). Se
parcurg următorii pași:
1. Se deschide fereastra Edit Script. Se va crea un tab: Mapari;
2. Click pe butonul Table Files și se selectează fișierul comments.xls
(trebuie creat anterior) (figura 5.12). Scriptul se modifică astfel:
Map_Table_Comments:
MAPPING LOAD TableName, Comment
FROM surse\comments.xlsx (ooxml, embedded labels, table is [table$]);

Se va crea un alt tab COMENTARII și se adaugă următoarea linie de script:


COMMENT TABLES USING Map_Table_Comments;

16
Mihaela Muntean, Ana-Ramona Bologa
Business Intelligence. Teorie și practică, editura ASE, 2015,
ISBN 978-606-505-858-3
Se salvează documentul și se execută scriptul, apoi se deschide fereastra Table
Viewer pentru a vizualiza comentariile asociate.
Se pot redenumi tabelele logice/atributele utilizând comanda RENAME:
RENAME FIELD Year to An, Month to Luna;
De asemenea, se pot redenumi tabelele/atributele utilizând o tabelă de mapare,
la fel ca la comentarii:
RENAME TABLES USING Map_Table_Names;
RENAME FIELDS USING Map_Field_Names;
Se pot șterge atributele/tabelele logice utilizând comanda DROP:
DROP TABLE Regiuni;
DROP FIELD Regiune_ID;
DROP FIELD Regiune_ID FROM Regiuni; - se șterge atributul doar din tabela
logică Regiuni.

Figura 5.12. Fișierul comments.xls

Corectitudinea sintaxei se verifică în mod automat, prin culoarea textului


(culoarea roșie pentru sintaxă incorectă) și bolduirea lui. Se poate face o verificare
suplimentară a sintaxei, dacă se selectează din meniu, opțiunea Tools|Syntax
Check.
Când se execută scriptul, în fereastra Script Execution Progress apare un log
cu toate activitățile. O copie a acestui log poate fi salvată pe disc astfel:
1. Se selectează din meniu, opțiunea Settings|Document Properties;

17
Mihaela Muntean, Ana-Ramona Bologa
Business Intelligence. Teorie și practică, editura ASE, 2015,
ISBN 978-606-505-858-3
2. Se selectează tab-ul General, și se bifează caseta de validare Generate
Logfile;
3. Pentru a crea fișiere log pentru fiecare execuție a scriptului, se bifează
caseta de validare Timestamp in logFile Name;
4. Click butonul OK pentru a închide fereastra Document Properties.
Ori de câte ori se va executa scriptul, se va crea un fișier log, în același folder cu
documentul Qlikview. Fișierul log va avea aceeași denumire cu documentul, la
care se adăuga data când s-a creat (de exemplu,
analiza.qvw.2014_07_07_10_24_43.log).

Depanarea script-ului
Pentru a deschide fereastra Debugger (figura 5.13), click pe icoana Debugger
din bara de butoane, sau din meniul asociat ferestrei Edit Script, se selectează
opțiunea File|Debug.

Figura 5.13. Fereastra Debugger

Fereastra Debugger conține următoarele informații [Redmond, 2013],


[Qlikview, 2010], [Qlikview, 2011b] [Garcia, 2012]:
 Scriptul concatenat din toate tab-urile;
 Se marchează cu un dreptunghi galben comanda executată la momentul
curent;

18
Mihaela Muntean, Ana-Ramona Bologa
Business Intelligence. Teorie și practică, editura ASE, 2015,
ISBN 978-606-505-858-3
 În zona din stânga jos, se vor afișa informațiile log care apar și în fereastra
Script Execution progress (în timpul execuției scriptului);
 În zona din dreapta jos, se afișează valorile curente ale variabilelor.
Se poate executa scriptul în mai multe moduri și anume:
 click pe butonul Run și se execută scriptul în mod normal ;
 click pe butonul Animate și scriptul se execută în mod normal, dar cu o
mică pauză între liniile de cod executate;
 click pe butonul Step și se execută o singură comandă din script.
Pentru a opri execuția scriptului la un anumit moment, se utilizează un
“breakpoint” (punct de întrerupere) reprezentat printr-un cerc roșu, care este
adăugat prin click cu mouse-ul pe numărul rândului. Se poate anula prin click cu
mouse-ul pe “breakpoint”. Toate punctele de întrerupere se șterg cu butonul Clear.
Caseta Limited load permite încărcarea numai unui număr de rânduri specificat.
Comentariile în script pot fi adăugate în două moduri:
// o singură linie de comentariu
/* multiple linii
multiple linii*/
Sau se selectează partea din script care se dorește a fi comentată și apoi click
butonul dreapta al mouse-ului și se alege opțiunea Comment din meniul asociat.
În tabelul 5.2. sunt prezentate structurile de programare care pot fi utilizate în
script [Redmond, 2013], [Qlikview, 2010], [Qlikview, 2011b].

Tabelul 5.2. Structuri de programare


Structuri de programare Exemplu
DO… LOOP DO while i<10
[se execută atâta timp cât i<10]
LOOP
FOR …NEXT FOR i = 1 TO 10
[se execută pentru valori de la 1..10]
NEXT
FOR EACH FOR EACH i IN A, B, C
NEXT [se execută pentru A, B si C]
NEXT
IF IF i = 1 THEN
THEN [se execută pentru i = 1]
ELSEIF ELSEIF i = 2 THEN
ELSE [se execută pentru i = 2]
END IF ELSE
[se execută pentru i<> 1,2]
END IF
SWITCH SWITCH i
CASE CASE 1
DEFAULT [se execută pentru i=1 ]
19
Mihaela Muntean, Ana-Ramona Bologa
Business Intelligence. Teorie și practică, editura ASE, 2015,
ISBN 978-606-505-858-3
END SWITCH CASE 2
[se execută pentru i=2]
DEFAULT
[se execută pentru i <> 1 sau 2]
END SWITCH
SUB…END SUB Definește o rutină ce poate fi apelată

20
Mihaela Muntean, Ana-Ramona Bologa
Business Intelligence. Teorie și practică, editura ASE, 2015,
ISBN 978-606-505-858-3
5.1.2.2. Realizarea selecțiilor
Selecțiile se pot realiza în diferite moduri și anume:
1. Se selectează din lista Denumire, compania Aerodynamics Inc. Valoare
selectată are culoare verde și automat se vor afișa valorile asociate din
toate obiectele paginii/paginilor (în cazul nostru, listele An și Regiune).
Valorile posibile sunt albe, cele excluse au culoarea gri. Listele nu afișează
duplicatele;
2. Pentru a selecta mai multe companii, se utilizează tasta CTRL;
3. Pentru a anula selecția se utilizează butonul Clear din bara de butoane.

Rezultatul:

Anularea selecției:
1. Se utilizează butonul Clear din bara de butoane;
2. Sau se selectează o altă valoare (de exemplu, Alaska Airlines Inc).
Qlikview reține ultimele 100 de selecții;
3. Sau click pe butonul Back din bara de butoane, pentru a reveni la selecția
anterioară.

Combinarea selecțiilor (operatorul AND):


1. Se anulează selecția anterioară;
2. Dorim să afișam firmele care au realizat zboruri în regiunea Pacific, în
2009. Vom selecta din lista AN, anul 2009 și din lista Regiune, Pacific.
Selecția curentă este afișata în fereastra Current selections (din meniu,
opțiunea View| Current selections sau combinația de taste CTRL+Q, sau
se poate crea un obiect de tip Current selection.

Rezultatul:

21
Mihaela Muntean, Ana-Ramona Bologa
Business Intelligence. Teorie și practică, editura ASE, 2015,
ISBN 978-606-505-858-3

Crearea unei casete de selecție (current selection box):


1. Se anulează selecțiile curente;
2. Se selectează butonul Create current selection box din bara de butoane,
sau din meniu, opțiunea Layout |New Sheet object |Current selection
Box, sau click cu butonul dreapta al mouse-ului pe suprafața paginii. Se
selectează opțiunea New Sheet Object din meniu asociat, apoi opțiunea
Current selection box;
3. Se deschide fereastra New current selection box, iar în tab-ul General se
bifează caseta Use Column labels. Se poate stabili și un titlu: Selectia
curenta.

Rezultatul:

Acest obiect ne permite să interacționam cu selecțiile în diferite moduri și


anume:
 Se șterg filtrele: click pe icoana Erase pentru oricare dintre câmpurile
selectate și selecția pe acel câmp va fi ștearsă;
 Se modifică selecțiile: click pe icoana drop-down (săgeata în jos) și va fi
afișată o listă de valori ale acelui câmp. Se poate selecta o altă valoare;
 Click cu butonul dreapta pe fiecare dintre filtrele afișate și apare un meniu
din care se pot selecta opțiunile: Select excluded, Select All, Clear sau
Clear Other Fields.

22
Mihaela Muntean, Ana-Ramona Bologa
Business Intelligence. Teorie și practică, editura ASE, 2015,
ISBN 978-606-505-858-3
Căutarea de valori:
1. Se anulează selecțiile anterioare;
2. Se activează lista Denumire (click pe eticheta listei). Click pe icoana
Search, sau din meniu, opțiunea Edit |Search, sau tasta F3;
3. Se tastează literele “Inc”. În listă se vor afișa numai companiile care conțin
șirul “Inc”. Se poate utiliza și (*.*).

Afișarea opțiunii de căutare pentru un obiect de tip listă:


1. Se deschide fereastra de proprietăți asociată listei Denumire (click cu
butonul dreapta al mouse-ului pe listă și se selectează opțiunea Properties
din meniul asociat);
2. Se selectează tab-ul Caption și se bifează caseta Search, din lista Special
Icons. De regulă, o listă are asociată această opțiune.

Rezultatul:

5.1.2.3. Crearea elementelor interfeței


Crearea unei pagini
Se pot crea pagini, se pot adăuga obiecte într-o pagină, se pot dimensiona și
poziționa obiectele în pagină. Un document QlikView conține mai multe pagini.
Aceste pagini vor fi conectate logic. De exemplu, o selecție făcută într-o pagină va
afecta toate obiectele din celelalte pagini. Fiecare pagină are un tab asociat. Pentru
a activa o pagină, se face click cu mouse-ul pe tab-ul asociat. Se utilizează fișierul
analiza.qvw și se parcurg următorii pași:
1. Din meniu, se selectează opțiunea Layout|Add sheet, sau butonul Add
sheet din bara de butoane;
2. Click cu butonul dreapta al mouse-ului pe suprafața paginii și se selectează
opțiunea Properties din meniul asociat;
3. Se deschide fereastra Sheet Properties;
4. În tab-ul General, se stabilește denumirea paginii (Title: Evolutie
personal);
5. În tab-ul Fields, se selectează atributul Denumire și se mută în caseta
Fields Displayed in Listboxes;
23
Mihaela Muntean, Ana-Ramona Bologa
Business Intelligence. Teorie și practică, editura ASE, 2015,
ISBN 978-606-505-858-3
O pagină poate fi copiată cu opțiunea Copy Sheet (click cu butonul dreapta al
mouse-ului pe suprafața paginii). Toate obiectele din pagină sunt copiate.

Mutarea unei pagini


Se poate schimba poziția unei pagini. Click cu butonul dreapta al mouse-lui pe
tab-ul asociat paginii create și se selectează opțiunea Promote Sheet din meniu
asociat, sau butonul Promote sheet din bara de butoane.

Prima icoană din stânga (din bara de butoane) adaugă o pagină. A treia icoană
mută pagina curentă la stânga. Ultima icoană este utilizată pentru a deschide
fereastra Properties (pentru pagina curentă). Avem aceleași opțiuni, dacă utilizăm
din meniu, opțiunea Layout. Apare în plus opțiunea Remove Sheet, pentru a
șterge pagina curentă.

Crearea de obiecte:
1. Din meniu se selectează opțiunea Layout|New Sheet object (sau opțiunea
New Sheet Object din meniul asociat butonului dreapta al mouse-ului,
apoi opțiunea List Box);
2. În pagina creată anterior, se va crea o listă cu anii. În tab-ul General (List
Box Properties), se alege câmpul AN din lista de câmpuri și titlul listei
este identic cu denumirea câmpului (se bifează caseta Use as Title).

Rezultatul:

Mutarea unui obiect


Pentru a muta un obiect se utilizează combinația de taste CTRL+săgeată, sau
combinația de taste CTRL+SHIFT+săgeată. Butonul Undo Layout Change (sau
combinația de taste CTRL+Z) din bara de butoane anulează ultima modificare (se
referă la mutarea, dimensionarea și ștergerea obiectelor, la proprietăți ale
documentului/paginii/obiectului) [Redmond, 2013], [Qlikview, 2010], [Qlikview,
2011b].

Selectarea și mutarea simultană a mai multor obiecte


În pagina Main, se plasează cursorul în colțul stânga sus, apoi se ține apăsat
butonul stânga al mouse-ului și se “trage” o porțiune rectangulară ce include toate

24
Mihaela Muntean, Ana-Ramona Bologa
Business Intelligence. Teorie și practică, editura ASE, 2015,
ISBN 978-606-505-858-3
listele pe care dorim să le mutăm. Se plasează cursorul pe titlul uneia dintre liste,
apoi se ține apăsat butonul stânga și se “trage”. Toate listele selectate sunt mutate.
Se pot selecta mai multe obiecte și prin combinația de taste SHIFT +click pe titlul
listei. Pentru a activa toate obiectele dintr-o pagină, se utilizează combinația de
taste CTRL+A.

Alinierea obiectelor în pagină:


1. Se selectează listele Denumire și An din pagina Main;
2. Din meniu, se selectează opțiunea Layout|Align|Distribute|Left Align;
Pentru a aranja obiectele, se poate selecta din meniu, opțiunea
Layout|Rearrange sheet objects. Uneori este necesar să selectăm această opțiune
de mai multe ori, pentru a aranja obiectele. Sau se selectează obiectele și se
utilizează butoanele din bara de butoane. Dacă nu apare bara de butoane, atunci se
selectează din meniu opțiunea View|Toolbars|Design.

Minimizarea și maximizarea unui obiect


Listele și alte obiecte pot fi minimizate. Se selectează lista Denumire și se
deschide fereastra Properties. În tab-ul Caption, se bifează casetele Allow
Minimize|AllowMaximize.

Rezultatul:

Schimbarea bordurii unui obiect:


1. Se selectează lista Denumire și se deschide fereastra Properties;
2. În tab-ul Layout, se alege o altă bordură (de exemplu, Border
style=depressed);
3. Dacă se dorește ca toate obiectele din document să aibă aceeași bordură, se
utilizează din meniu, opțiunea Settings| Document Properties|tab-ul
Layout.
Pentru a modifica fontul, se selectează tab-ul Font din fereastra Properties.
Dacă se dorește schimbarea fontului pentru tot documentul, se utilizează din
meniu, opțiunea Settings|Document Properties|tab-ul Font.

Copierea formatului de afișare de la un obiect la alt obiect


25
Mihaela Muntean, Ana-Ramona Bologa
Business Intelligence. Teorie și practică, editura ASE, 2015,
ISBN 978-606-505-858-3
Dacă se dorește copierea unui format de la un obiect la alt obiect, se utilizează
opțiunea Format Painter. De exemplu, lista Denumire nu are același “layout” cu
celelalte obiecte (s-a modificat Border width=10, Font=Tahoma 12). Se parcurg
următorii pași:
1. Se selectează obiectul cu formatul corect, de exemplu lista AN;
2. Se selectează opțiunea Format painter din bara de butoane;
3. Click pe lista Denumire. Bordura și titlu se modifică. Pentru anularea
modificărilor, din meniu, se selectează opțiunea Edit | Undo Layout
change.
Rezultatul:

Obiecte cu aceleași proprietăți (linked objects)


Sunt obiecte care partajează toate proprietățile cu excepția: dimensiunii, a
poziției și a stării (minimizată, normală sau maximizată). Orice modificare a
proprietăților unui obiect se va reflecta automat în toate obiectele asociate (linked
objects) care pot fi în aceeași pagină sau în pagini diferite. Pentru a crea obiecte
asociate se parcurg următorii pași:
1. Click cu butonul dreapta al mouse-ului pe lista Regiune, din pagina Main și
se selectează din meniul asociat, opțiunea Copy to Clipboard –Object;
2. Click cu butonul dreapta al mouse-ului pe pagina Evoluție personal și se
selectează din meniul asociat, opțiunea Paste Sheet Objects as Link. Se
deschide apoi fereastra de proprietăți a listei Regiune din pagina Main, se
modifică bordura, se salvează. Se observă ca și lista Regiune din pagina
Evolutie personal va avea aceeași bordură.
Opțiunea Copy to clipboard permite copierea: valorilor, a imaginii și a
obiectului dintr-o pagină în altă pagină.
În continuare, se vor prezenta detaliat toate tipurile de obiecte care se pot crea
într-un document Qlikview.
Lista afișează valorile unui atribut din modelul de date. Se utilizează pentru a
face selecții și filtrări de date. Fereastra de proprietăți a unei liste include mai multe
tab-uri și anume:
 Tab-ul General conține proprietăți generale și anume:
o Titlu listei (Title) poate fi diferit de denumirea atributului, sau
poate fi setat plecând de la o valoare calculată;

26
Mihaela Muntean, Ana-Ramona Bologa
Business Intelligence. Teorie și practică, editura ASE, 2015,
ISBN 978-606-505-858-3
o Fiecare obiect creat are asociat un ID (de exemplu Object ID=
LB10) și acest ID poate fi utilizat pentru referire;
o Caseta de validare Always one selected value este valabilă numai
atunci când o singură valoare este selectată, la un moment dat;
o Casetele de validare Show frequency și In percent sunt utilizate
pentru a afișa de câte ori apare fiecare valoare în setul de date
activ. Când este selectată și caseta In Percent, apare un număr
relativ de apariții versus total;
 Tab-ul Expressions este utilizat pentru a crea expresii;
 Tab-ul Sort oferă posibilitatea de a ordona datele utilizând diferite criterii,
și anume:
o State sortează valorile în funcție de starea selecției. De exemplu,
dacă se selectează Ascending, se afișează mai întâi valorile
selectate din listă, apoi cele asociate, urmate de cele neasociate;
o Expression sortează valorile pe baza rezultatului unei expresii, de
exemplu, se sortează companiile în funcție de numărul de angajați;
o Frequency sortează valorile în funcție de frecvența de apariție a
unei valori în setul de valori;
o Numeric sortează numeric valorile;
o Text sortează valorile în funcție de reprezentarea lor alfanumerică;
o Load Order sortează valorile în funcție de ordinea în care au fost
încărcate în documentul Qlikview.
 Tab-ul Presentation include următoarele opțiuni:
o Selection style override permite modificarea stilului de selecție.
De exemplu, se poate înlocui fundalul verde pentru valorile
selectate cu o caseta de validare;
o Single column: se utilizează o singură coloană pentru a lista
valorile câmpului;
o Suppress horizontal scroll bar: când valorile sunt mai mari decât
lățimea listei, apare o bară de defilare orizontală;
o Fixed number of columns: se poate utiliza pentru a seta un număr
de coloane pentru listă;
o Order by column: sortarea este realizată după coloană, în loc de
rând;
o Alignment: se setează alinierea pentru numere și text;
o Wrap cell text: textul dintr-o celulă se scrie pe mai multe linii;
o etc.
 Tab-ul Number permite setarea delimitatorului pentru virgule/mii, a
formatului de afișare a numerelor, a datelor calendaristice, etc. De
exemplu, dacă dorim ca numerele să fie afișate cu două zecimale, se
parcug următorii pași:
o Se bifează caseta Override Document settings;
o Se selectează butonul Fixed to;
27
Mihaela Muntean, Ana-Ramona Bologa
Business Intelligence. Teorie și practică, editura ASE, 2015,
ISBN 978-606-505-858-3
o Se introduce în caseta Decimals=2.
Prin click pe butonul Change Document Format, se deschide o fereastră
în care putem seta formatul numeric implicit pentru fiecare câmp, la nivel
de document. Aceasta opțiune este valabila și din meniu, și anume
opțiunea Settings|Document Properties|Number.
 Tab-ul Layout permite modificarea formatului de afișare. Proprietățile
valabile în acest tab depind de setarea Styling mode (din meniu, opțiunea
Document Properties|tab-ul General). De exemplu, în modul Advanced
avem următoarele opțiuni:
o Caseta Use borders este utilizată pentru a activa/dezactiva bordura
obiectului;
o Shadow intensity selectează un efect de umbră pentru obiect;
o Border width setează lățimea bordurii;
o Caseta Rounded Corners este utilizată dacă se doresc colțuri
rotunjite;
o Butonul Apply to este utilizat pentru a aplica formatul curent la
alte obiecte;
o Butoanele Theme Maker și Apply Theme stochează formatul de
afișare curent într-un fișier. Acest fișier poate fi apoi utilizat pentru
a aplica același format de afișare, la obiectele din alte documente;
o Opțiunea Show permite afișarea obiectului necondiționat (butonul
Always) / condiționat (butonul Conditional). Un exemplu ar fi
utilizarea expresiei: GetFieldSelections(AN)=2009 la lista
Denumire. Lista se va afișa, numai pentru anul 2009;
o Caseta Allow Move/Size. Deselectarea acestei opțiuni, blochează
redimensionarea și repoziționarea obiectelor;
o Caseta Allow Copy/Clone. Deselectarea acestei opțiuni, previne
copierea obiectului;
o etc.
 Tab-ul Caption conține următoarele opțiuni:
o Caseta Multiline caption permite scrierea unui text pe mai multe linii
precizate în caseta Caption height;
o Casetete X-pos, Y-pos, Width și Height definesc dimensiunea și
poziția unui obiect. Aceste opțiuni pot fi setate pentru starea
Normal/Minimized a obiectului;
o Caption Alignment definește cum este aliniat textul afișat în titlu;
o Special Icons adaugă icoane care execută diferite acțiuni. Un exemplu,
ar fi utilizarea icoanei Send to Excel, pentru a trimite datele din listă la
Excel. Icoana Menu afișează un meniu cu toate acțiunile posibile;

Rezultatul:

28
Mihaela Muntean, Ana-Ramona Bologa
Business Intelligence. Teorie și practică, editura ASE, 2015,
ISBN 978-606-505-858-3

o Caseta Allow minimize permite ca un obiect să fie minimizat, apare o


icoană de minimizare în zona de titlu al listei. Dacă caseta Auto
Minimize este bifată, înseamnă că atunci când restauram un obiect
minimizat, un alt obiect va fi automat trecut la starea de minimizare,
pentru ca noul obiect să-i ia locul pe pagină;
Pentru a afișa conținutul unei liste pe mai multe coloane, se parcurg următorii
pași:
1. Se anulează selecția anterioară;
2. Se selectează pagina Main;
3. Se deschide fereastra Properties pentru lista An;
4. Se alege tab-ul Presentation;
5. Se debifează caseta Single Column. Se bifează caseta Cell Borders.

Rezultatul:

Valorile sunt ordonate pe coloane. Dacă se dorește ca valorile pentru lista An să


fie ordonate pe rânduri, în tab-ul Presentation, se debifează caseta Order by
column.

Rezultatul:

29
Mihaela Muntean, Ana-Ramona Bologa
Business Intelligence. Teorie și practică, editura ASE, 2015,
ISBN 978-606-505-858-3
Dacă avem lista Luna, pentru ca lunile să fie grupate pe trimestre, se bifează
caseta Fixed number of column=3

Rezultatul:

Schimbarea ordinii de sortare


În listele ale căror valori nu sunt în totalitate vizibile (apare bara de defilare),
valorile sunt ordonate după starea lor logică: selectată, posibilă sau exclusă
(opțiunea Sort by State din tab-ul Sort, fereastra Properties). Valorile selectate și
cele posibile sunt întotdeauna vizibile în document. Se poate modifica ordinea de
sortare astfel:
1. În pagina Main, se alege lista Denumire și se deschide fereastra Properties
pentru listă;
2. În tab-ul Sort, se bifează caseta State și caseta Text (Z >A);
Atâta timp cât nu se face o selecție, valorile din lista Denumire sunt ordonate
descrescător. Când se face o selecție, ordonarea este determinată de “starea”
valorilor. Valorile selectate (verzi) și cele posibile (albe) vor fi plasate la începutul
listei.

Schimbarea formatului numeric


Datele numerice pot fi de diferite tipuri și pot fi formatate în diferite moduri.
Se parcurg următorii pași:
1. Se selectează lista An și se deschide fereastra Properties, tab-ul General;
2. În tab-ul Number, formatul pentru câmpul An este dezactivat, deoarece
toate formatele sunt moștenite de la setările implicite ale documentului,
care depind de setările regionale ale calculatorului;
3. Se bifează caseta de validare Overide document Settings, pentru a crea un
format diferit pentru această listă;
4. Se selectează formatul dorit.

Alinierea valorilor:
1. Pentru lista Denumire, se deschide fereastra Properties;
2. În tab-ul Presention, în grupul Alignment, se selectează butonul Right
pentru text.

Rezultatul:

30
Mihaela Muntean, Ana-Ramona Bologa
Business Intelligence. Teorie și practică, editura ASE, 2015,
ISBN 978-606-505-858-3

Caseta statistică
O caseta statistică permite realizarea unor statistici, utilizând valorile unui
singur atribut. Poate fi mutată, redimensionată, copiată și închisă. Se pot utiliza o
serie de funcții statistice: sum(), min(), max(), average(), count(), etc. Dacă nu se
face nici o selecție în document, valorile afișate în caseta statistică sunt calculate
utilizând toate valorile posibile ale atributului asociat. Pentru a crea o casetă
statistică se parcurg următorii pași:
1. Se anulează selecțiile anterioare;
2. Click cu butonul dreapta al mouse-ului pe pagina Evolutie personal și se
alege din meniul asociat, opțiunea New Sheet Object|Create statistics
box. Se va crea o casetă statistică cu titlu Numar angajati;
3. În tab-ul General, se alege din lista Field, câmpul TOTAL;
4. Din lista Available Functions se aleg următoarele funcții : average(),
min(), max() și se mută în lista Displayed Functions, utilizând butonul
Add;
5. Pentru a limita numărul de zecimale pentru valorile funcției average(), în
tab-ul Number, din lista Functions, se selectează Average și se bifează
caseta de validare Ovveride Default Settings;
6. Se selectează butonul radio Fixed to și se setează la: 2 decimals;
7. De asemenea, se modifică separatorul pentru virgule (,) si pentru mii (.).

Rezultatul:

În casetă se vor afișa: numărul maxim de angajați, numărul minim de angajați


și media. Se poate crea o casetă statistică și din meniu, opțiunea Layout|New
Sheet Object|Statistics box, sau se selectează butonul Create Statistics box, din
bara de butoane.

31
Mihaela Muntean, Ana-Ramona Bologa
Business Intelligence. Teorie și practică, editura ASE, 2015,
ISBN 978-606-505-858-3
Selecții într-o casetă statistică:
1. Se anulează selecțiile anterioare;
2. Click cu mouse-ul pe funcția Max și se va afișa compania cu cei mai mulți
angajați și anume American Airlines Inc;

Rezultatul:

3. Se anulează selecția.

Crearea unui obiect de tip bookmark (selecție salvată)


Se parcurg următorii pași:
1. Se selectează pagina Main. Se anulează toate selecțiile;
2. Se selectează butonul Create Bookmark object din bara de butoane, sau
din meniu, opțiunea Layout|New Object sheet|Bookmark object ;
3. În tab-ul General, se stabilește Titlu = Bookmark;
4. Se fac câteva selecții în listele existente și apoi click pe butonul Add
Bookmark din obiectul de tip bookmark creat. Denumirea implicită pentru
bookmark este data curentă. Primul bookmark dintr-o zi are numărul 1, al
doilea, numărul 2, etc. Se tastează numele bookmark-ului: Bookmark1.
Lista de bookmark-uri create (max 10) sunt afișate în meniu, opțiunea
Bookmarks|Document Bookmarks.
5. Se anulează selecțiile;
6. Se selectează apoi, bookmark Bookmark1 din obiectul de tip bookmark și
se observă selecția curentă.

Rezultatul:

Putem crea un bookmark dinamic, adică expresia de căutare este interpretată de


fiecare dată, când bookmark-ul este selectat. Se va crea un bookmark care va
selecta întotdeauna primele 10 companii în funcție de veniturile operaționale:
1. Se anulează toate selecțiile;
32
Mihaela Muntean, Ana-Ramona Bologa
Business Intelligence. Teorie și practică, editura ASE, 2015,
ISBN 978-606-505-858-3
2. Click cu butonul dreapta al mouse-lui pe lista Denumire și se selectează
opțiunea Advanced search din meniul asociat. Se deschide fereastra
Advanced Search;
3. În caseta Search expression se introduce următoarea expresie:
=rank(sum(OP_VENITURI))<=10
4. Click pe butonul Go pentru a executa căutarea și se observă modificările în
lista Denumire;
5. Click pe butonul Close pentru a închide fereastra Advanced Search;
6. Se selectează din meniu, opțiunea Select Bookmarks |Add bookmark;
7. Se tastează denumirea: Primele 10 companii dupa veniturile operationale ;
8. Se bifează caseta de validare Make bookmark apply on top of current
selection. Apoi click butonul OK pentru a salva setările.
Se anulează toate selecțiile. Se selectează anul 2012, regiunea America Latina și
apoi bookmark-ul creat anterior. Se vor afișa primele 10 companii (după veniturile
operaționale) care au operat în America Latina, în 2012.

Rezultatul:

Realizarea graficelor
Graficele pot fi de tip: bară, scatter, linie, combo (bara/linie), grid, gauge,
funnel, mekko, tabela pivot/liniară, etc. Un grafic se poate crea utilizând opțiunea
Quick Chart Wizard din meniul Tools, sau butonul Create Chart din bara de
butoane, sau opțiunea New sheet Object|Chart din meniul asociat butonului
dreapta al mouse-ului. Fereastra Properties diferă de la un tip de grafic la alt tip de
grafic.
Prima analiză va fi analiza profitului operațional pe ani și se va utiliza un grafic
de tip bară. Se parcurg următorii pași:
33
Mihaela Muntean, Ana-Ramona Bologa
Business Intelligence. Teorie și practică, editura ASE, 2015,
ISBN 978-606-505-858-3
1. Se selectează butonul Create Chart din bara de butoane. Se deschide
fereastra Create Chart, tab-ul General. Se stabilește titlul ferestrei
(Window title= Profit operational/pierdere (mil$));
2. Se alege ca tip de grafic: bara (Bar Chart). Apoi click pe butonul Next;
3. În fereastra Dimensions, se alege din lista Available fields, câmpul AN și
se adaugă în lista Used Dimensions. Apoi, click pe butonul Next. O
dimensiune este un câmp după care datele sunt agregate în grafic;
4. În fereastra Edit Expression se va introduce următoarea expresie: Sum
(OP_PROFIT). Se poate tasta direct expresia, sau se alege din lista de
câmpuri, câmpul OP_PROFIT și din lista de funcții, funcția sum(), apoi se
selectează butonul Paste. Eticheta expresiei (label) este: Profit
operațional/pierdere (mil$)

Rezultatul:

Pentru a arăta mai bine graficul, se pot face următoarele modificări:


1. În tab-ul Caption, se deselectează caseta Show caption;
2. În tab-ul Number, se selectează butonul Fixed to 2 decimals;
3. În tab-ul Axes, se bifează caseta Show grid, din zona Expression Axes. Se
modifică Primary Dimension Labels=diagonal.

Rezultatul:

34
Mihaela Muntean, Ana-Ramona Bologa
Business Intelligence. Teorie și practică, editura ASE, 2015,
ISBN 978-606-505-858-3

Utilizarea grupurilor ciclice


Grupurile ciclice (Cyclic groups) sunt definite ca o listă de dimensiuni, din care
utilizatorul poate selecta dimensiunea dorită. Se parcurg următorii pași:
1. Din meniu, se selectează opțiunea Settings |Document properties |tab-ul
Group;
2. Click pe butonul New. Se deschide fereastra de dialog Group settings;
3. Se stabilește denumirea grupului. Se selectează opțiunea Cyclic group;
4. Se selectează din lista de câmpuri, atributele care vor fi incluse în grup.
Ordinea din listă nu contează. Când se utilizează ca dimensiune într-un
grafic, se poate alege pentru axa X, unul dintre câmpurile grupului, în timp
ce se păstrează aceeași expresie pe axa Y.
Se pot crea de asemenea, și grupuri ciclice de expresii. Se deschide fereastra
Properties pentru graficul creat anterior. Se selectează tab-ul Expression și click
pe butonul Add. În fereastra Edit Expression se tastează următoarea expresie:
Sum(OP_VENITURI), Label=Venituri operationale. Cu expresia anterioară
selectată, se face click pe butonul Group. Automat se va crea un grup ciclic de
expresii. Click pe butonul Add pentru a adăuga următoarea expresie:
sum(OP_CHELTUIELI), Label=Cheltuieli operationale, click apoi pe butonul
Group. În tab-ul Number, se stabilește formatul expresiilor: Fixed to 2 decimals.

Rezultatul:

35
Mihaela Muntean, Ana-Ramona Bologa
Business Intelligence. Teorie și practică, editura ASE, 2015,
ISBN 978-606-505-858-3

Logica asociativă a instrumentului Qlikview ne dă libertatea de a utiliza orice


atribut ca dimensiune, în orice ordine dorim. Grupurile de atribute pot fi: ierarhice
(drill-down) și ciclice. Se pot defini grupuri ierarhice/grupuri ciclice, și apoi se pot
crea grafice cu aceste grupuri. Un grup ierarhic permite utilizatorilor să facă drill
down pe nivelele ierarhiei. Se va crea un grup ierarhic format din atributele An și
Trimestru:
1. Se deschide fereastra de proprietăți pentru graficul anterior;
2. Se selectează tab-ul Dimensions, apoi click pe butonul Edit groups;
3. Se deschide fereastra de dialog Groups, click pe butonul New. În fereastra
de dialog Group settings, se introduce Group name=Timp, butonul radio
Drill down este selectat;
4. Din lista Available Fields, se adaugă atributele An și Trimestru la lista
Used Fields. Fiecare atribut utilizează, în mod implicit, denumirea sa ca
etichetă în grafic. Se poate specifica o etichetă diferită (opțiunea Label, în
partea de jos a listei Used Fields).
Se observă grupul creat în lista Available Fields/Group, din tab-ul
Dimensions. Se selectează grupul și se adaugă în lista Used Dimensions. Putem să
facem drill down prin click pe una dintre barele graficului care inițial reprezintă un
an (de exemplu, anul 2004) și se va afișa evoluția profitului operațional pe
trimestrele anului 2004.

Rezultatul:

36
Mihaela Muntean, Ana-Ramona Bologa
Business Intelligence. Teorie și practică, editura ASE, 2015,
ISBN 978-606-505-858-3

Se poate reveni la nivel de an, dacă se face click pe icoana asociată grupului.
Pentru a afișa valorile pe barele graficului, se bifează caseta Values on data
points, din tab-ul Expression. În tab-ul General, se va modifica titlu ferestrei
(Window title): ='Indicatori la nivel de ' & GetCurrentField(Timp). Funcția
Getcurrentfield() utilizează ca parametru denumirea grupului ierarhic și returnează
denumirea câmpului curent.

Rezultatul:

37
Mihaela Muntean, Ana-Ramona Bologa
Business Intelligence. Teorie și practică, editura ASE, 2015,
ISBN 978-606-505-858-3
Se pot face selecții de date într-un grafic. Se plasează cursorul pe grafic, apoi cu
butonul stânga al mouse-ului apăsat, se trasează o zonă de selecție. Graficul va
afișa informații despre anii selectați din grafic. Modificarea este reflectată și în lista
AN. De asemenea, se pot face selecții prin click cu mouse-ul pe anii din grafic.
Unele grafice pot fi vizualizate în mai multe moduri. Se selectează din fereastra
Properties, tab-ul General, din lista Fast type Change, tipurile de grafice dorite,
de exemplu, bara și linie. Se va bifa caseta Show Caption, din tab-ul Caption. Se
observă că lângă icoana de minimizare, a apărut o nouă icoană asociată graficului
de tip linie. Se poate selecta și se modifică tipul de grafic.

Rezultatul:

Clonarea unui grafic și detașarea clonei


Pentru a clona un grafic, se parcurg următorii pași:
1. Click cu butonul dreapta al mouse-ului pe grafic și se alege din meniul
asociat, opțiunea Clone. Apare un grafic identic;
2. Click cu butonul dreapta al mouse-ului pe noul grafic și se alege din
meniul asociat, opțiunea Detach. Un grafic detașat nu se actualizează
atunci când se fac selecții. Poate fi util atunci când se dorește o evidență a
modificărilor;
3. Se atașează din nou graficul (opțiunea Attach din meniu asociat butonului
dreapta al mouse-ului);
4. Se anulează selecțiile.

Schimbarea culorilor:
1. Se selectează graficul, se deschide fereastra Properties;
2. Se selectează tab-ul Colors, apoi se bifează caseta Multicolored;

Rezultatul:
38
Mihaela Muntean, Ana-Ramona Bologa
Business Intelligence. Teorie și practică, editura ASE, 2015,
ISBN 978-606-505-858-3

Graficele pot fi foarte complexe cu multe dimensiuni și expresii. Se va crea un


grafic cu două dimensiuni și o expresie: profitul operațional la nivel de companie.
Pentru fiecare companie, profitul operațional este afișat pe ani:
1. În pagina Main, se va crea un nou grafic de tip bară;
2. În tab-ul Dimensions, se mută atributele Denumire, AN în lista Used
dimensions;
3. Expresia este sum(OP_PROFIT), eticheta=Profit operational/pierdere
(mil$) ;
4. În pagina Style, se setează opțiunea Subtype la Stacked;
5. În pagina Dimensions Limits, se bifează caseta Restrict which values are
displayed using the first expression și se selectează butonul Show only.
Selectam Largest și introducem valoarea 5 pentru dimensiunea Denumire
(primele 5 firme după profit);
6. Se deselectează caseta Show Others;
7. În tab-ul Axes, se selectează afișare înclinată pentru opțiunea Primary
Dimension Labels.
O bară reprezintă profitul operațional/pierderea pentru o anumită companie, dar
este împărțită în secțiuni de culori diferite reprezentând diferiți ani.

Rezultatul:

39
Mihaela Muntean, Ana-Ramona Bologa
Business Intelligence. Teorie și practică, editura ASE, 2015,
ISBN 978-606-505-858-3

Tabela pivot și tabela “straight”/linie


Pentru a schimba un grafic de tip bară într-o tabelă pivot se parcurg următorii
pași:
1. Se alege graficul creat anterior și se deschide fereastra Properties;
2. În pagina General, se schimbă titlul ferestrei în Tabela pivot;
3. Se selectează ca tip de grafic: Pivot table;
4. În pagina Sort, se ordonează valorile atributului Denumire de la A la Z.

Tabela pivot rezultată:

Se adaugă atributul Trimestru în lista Used Dimensions (fereastra


Properties|tab-ul Dimensions)

Rezultatul:

40
Mihaela Muntean, Ana-Ramona Bologa
Business Intelligence. Teorie și practică, editura ASE, 2015,
ISBN 978-606-505-858-3

Se pot ajusta coloanele utilizând opțiunea Fit Columns to data din meniul
asociat butonului dreapta al mouse-ului. Este posibil drill down la un nivel de
detaliu prin click pe icoana (+) (se bifează caseta Allways full expanded din tab-ul
Presentation). Tabela pivot poate afișa totaluri pe trimestru astfel:
1. În fereastra Properties, se selectează tab-ul Presentation și în caseta
Dimensions and Expressions se selectează atributul Trimestru;
2. Apoi se bifează caseta Show Partial Sums.

Rezultatul:

Crearea unei tabele de tip “straight”/linie


Poate conține dimensiuni și expresii calculate și este utilizată pentru a afișa
indicatori KPI. Acest tip de tabelă nu poate afișa totaluri parțiale. Orice coloană din
tabelă poate fi sortată și fiecare dintre rândurile sale conține o combinație de
dimensiuni și expresii. Pentru a crea o tabelă de tip “straight” se parcurg următorii
pași:
1. Se activează pagina Main, se minimizează tabela pivot;
2. Se creează un nou obiect de tip grafic;
3. Se alege tipul straight table, se tastează denumirea ferestrei: Tabela de tip
straight;

41
Mihaela Muntean, Ana-Ramona Bologa
Business Intelligence. Teorie și practică, editura ASE, 2015,
ISBN 978-606-505-858-3
4. În pagina Dimensions, se mută câmpurile An, Denumire și Trimestru în
caseta Used Dimensions;
5. În pagina Edit Expression se introduce expresia: Sum(OP_PROFIT),
eticheta expresiei este Profit operational/pierdere;

Rezultatul:

Fiecare rând din tabelă reprezintă o posibilă combinație de date. De asemenea,


se afișează și un total general. Sortarea se face după atributul AN. Se poate
modifica atributul după care se face sortarea astfel:
1. Click cu butonul dreapta al mouse-ului pe coloana Denumire și se alege
opțiunea Sort din meniul asociat;
2. Ordinea coloanelor rămâne aceeași, dar ordonarea rândurilor se face după
câmpul Denumire.

Rezultatul:

Mutarea unei coloane


Dorim ca atributul Denumire să fie prima coloană din tabelă. Se ține apăsat
butonul stânga al mouse-ului pe titlul coloanei Denumire și se “trage” în poziția
dorită.
Se pot utiliza culori diferite pentru a diferenția valorile expresiilor din tabelă:
1. Se deschide fereastra de proprietăți a tabelei;
2. În tab-ul Visual Cues, expresia utilizată este Profit operational/Pierdere.
Sunt patru categorii: upper, normal, lower și text. Dorim să evidențiem
toate valorile >0. Se tastează 0 în caseta Upper;
3. Există două butoane pentru culori și trei casete de validare pentru a seta
modul cum va apare textul și/sau fundalul valorilor. Dorim să aplicăm
culoarea verde la valorile care aparțin categoriei Upper. Click pe butonul
Text și se alege culoarea verde;

42
Mihaela Muntean, Ana-Ramona Bologa
Business Intelligence. Teorie și practică, editura ASE, 2015,
ISBN 978-606-505-858-3
4. Apoi se bifează caseta Bold;
5. Se repetă pașii pentru cazul în care profitul< 0: culoarea va fi roșie, textul
va fi italic;
6. În tab-ul Expression, selectăm butonul No Totals.
Rezultatul:

Se pot face selecții în tabela de tip pivot/straight. De exemplu, click pe valoarea


2004 din coloana AN și se vor afișa informații numai despre anul 2004. Se poate
selecta și o valoare a expresiei, ceea ce presupune o selecție indirectă a acelor
valori din dimensiuni (coloane/rânduri) care sunt utilizate pentru a calcula expresia.
De exemplu, click pe valoare 170.54 din coloana Profit operational/pierdere. S-a
selectat de fapt anul 2006, trimestru 2 și compania Aerodynamics Inc.

Rezultatul:

Pentru selecții multiple și complexe, există o altă opțiune numită drop-down


select. Această opțiune face posibilă transformarea unei coloane de tip dimensiune
într-o listă drop-down cu posibilități de căutare complexe:
1. Se deschide fereastra de proprietăți a tabelei de tip “straight”;
2. Se selectează tab-ul Presentations. Se selectează atributul An în caseta
Columns și apoi se bifează caseta Dropdown Select;
3. Se repetă pașii pentru atributele Denumire și Trimestru;
Se selectează cu CTRL + mouse din coloana AN, valorile: 2000, 2001 și 2002.
Apoi, click pe icoana drop-down din coloana Denumire. Când apare lista drop-
down se tastează “H*”. Se vor afișa informații numai despre companiile a căror
denumire începe cu “H” și numai pentru anii 2000-2002.

Rezultatul:

43
Mihaela Muntean, Ana-Ramona Bologa
Business Intelligence. Teorie și practică, editura ASE, 2015,
ISBN 978-606-505-858-3

Cele două tabele create, precum și graficul de tip bară se vor muta în pagina
Evolutie personal. Pentru a nu încărca prea mult pagina, vom seta ca un singur
grafic/tabelă să fie afișat/afișată la un moment dat. În tab-ul Caption, din fereastra
de proprietăți, se bifează caseta de validare Autominimize. Se poate face același
lucru pentru un grup de grafice. Se desenează o porțiune rectangulară cu mouse-ul
în jurul graficelor pe care dorim să le modificăm. Click cu butonul dreapta al
mouse-ului pe unul dintre graficele selectate și se deschide fereastra Properties,
pentru toate obiectele selectate. În acest caz avem numai tab-urile Font, Layout și
Caption. În tab-ul Caption, se selectează caseta Minimize/Autominimize.
Se activează pagina Evolutie personal și se va crea un grafic de tip bară cu
dimensiunea Denumire și două expresii sum(OP_PROFIT) și avg(TOTAL). Se
parcurg următorii pași:
1. În tab-ul General se specifică titlul ferestrei: Angajati versus profit
operational ;
2. Se bifează caseta de validare Show title in the chart și se tastează
Angajati versus profit operational în casetă;
3. În tab-ul Expression, click pe butonul Add și se deschide fereastra Edit
expression. Se introduce expresie sum(OP_PROFIT) cu eticheta Profit
operational/pierdere și expresia avg(TOTAL) cu eticheta Nr.mediu
angajați;
4. Se restricționează afișarea doar a primelor 5 companii, utilizând prima
expresie, adică Profitul operațional;
Ambele expresii sunt afișate pe o singura axă, dar magnitudinea numerelor
pentru cele două expresii diferă foarte mult. Numărul de angajați uneori nu este
vizibil.

44
Mihaela Muntean, Ana-Ramona Bologa
Business Intelligence. Teorie și practică, editura ASE, 2015,
ISBN 978-606-505-858-3
Rezultatul:

Putem să folosim axe diferite pentru cele două expresii:


1. Se deschide fereastra de proprietăți și se selectează tab-ul Axes;
2. Se selectează expresia Nr mediu angajați în caseta Expression axes și apoi
se selectează butonul radio Right(top) din caseta Position.

Rezultatul:

Transformarea unui grafic de tip bară într-un grafic de tip combo


Într-un grafic combo se pot combina facilitățile unui grafic de tip bară cu ale
unui grafic de tip linie. De exemplu, o expresie este prezentată ca bare, iar a doua
expresie ca linii și/sau simboluri. Se parcurg următorii pași:

45
Mihaela Muntean, Ana-Ramona Bologa
Business Intelligence. Teorie și practică, editura ASE, 2015,
ISBN 978-606-505-858-3
1. Pentru graficul anterior, se deschide fereastra Properties și se selectează
icoana combo chart din tab-ul General;
2. În tab-ul Expression, se selectează Profitul operațional/pierdere și se
bifează caseta Bar sub Display options. Casetele Line și Symbol nu sunt
bifate;
3. Se selectează Nr mediu angajați și se bifează casetele Symbol si line, iar
caseta Bar nu este selectată. Se poate bifa și caseta Smooth Line.

Rezultatul:

Expresiile din Qlikview sunt similare cu formulele din Excel sau funcțiile din
SQL. Fereastra Edit Expression verifică automat sintaxa, iar dacă apare o eroare,
expresia se va colora în roșu și se va afișa mesajul “Error in expression”. În partea
de jos a ferestrei sunt o serie de tab-uri și anume:
 Fields - se pot selecta atributele care vor fi agregate;
 Functions –se pot selecta funcțiile utilizate în expresii;
 Variabile - pot fi utilizate pentru a stoca expresii și valori. De exemplu, în
loc de a tasta expresie sum(OP_PROFIT) în caseta Edit Expression, se
poate crea o variabilă care conține definiția expresiei și putem selecta
variabila din listă. Rezultatul este același.
 Imagini. Sunt unele obiecte, de exemplu, obiecte de tip text sau chiar
tabele de tip “straight” care pot afișa rezultatul unei expresii ca o imagine.
Se pot alege diferite simboluri din caseta Image, sau click pe butonul
Advanced și se aleg simbolurile dorite.
De exemplu, următoarea expresie verifică dacă sum(OP_PROFIT)>0 și va afișa
o săgeată verde în sus, altfel se va afișa o săgeată roșie în jos. Se deschide fereastra
de proprietăți a tabelei “straight” și se modifică expresie astfel:

46
Mihaela Muntean, Ana-Ramona Bologa
Business Intelligence. Teorie și practică, editura ASE, 2015,
ISBN 978-606-505-858-3
If(sum(OP_PROFIT)> 0, 'qmem://<bundled>/BuiltIn/arrow_n_g.png',
'qmem://<bundled>/BuiltIn/arrow_s_r.png')
De asemenea, trebuie să setăm modul de afișare (tab-ul Expression, Display
Option, caseta Representation: Image).

Rezultatul:

De asemenea, în tabelele “straight”/pivot nu toate expresiile trebuie să fie


numerice. În tab-ul Expression din fereastra de proprietăți, există caseta
Representation, implicit setată pe text, dar are și alte opțiuni:
 Image: de exemplu, se poate afișa o săgeată în sus, atunci când un
indicator are valori pozitive, sau o săgeată în jos, pentru valori negative;
 Circular Gauge: se poate include un grafic de tip gauge în celulele tabelei;
 Linear Gauge: ocupă în principal spațiu pe orizontală și este mai bun
decât cel circular;
 Traffic Light Gauge: se utilizează un semafor;
 LED Gauge: trebuie precizate toate setările specifice unui grafic de tip
gauge;
 Mini chart: arată direcția de evoluție a unui indicator, utilizând un grafic
de tip linie (linie punctată, întreruptă, etc);
 Link: permite hyperlink-uri în celulele tabelei. Se utilizează un tag <url>.
De exemplu, dorim să afișăm într-o tabelă „straight”, profitul operațional ca
valori, dar și sub forma unui minigrafic:
1. Vom copia tabela „straight” creată anterior (opțiunea Copy to
clipboard/Object, apoi Paste Sheet Object). Redenumim tabela (Window
title: Tabela straight modificata);
2. În tab-ul Dimensions, din fereastra de proprietăți, ștergem atributul
Trimestru din lista Used Dimensions;
3. În tab-ul Expression, vom crea expresia sum(OP_PROFIT), eticheta
expresiei este Profit ca minichart;
4. Alegem din caseta Representation opțiunea Minichart;

47
Mihaela Muntean, Ana-Ramona Bologa
Business Intelligence. Teorie și practică, editura ASE, 2015,
ISBN 978-606-505-858-3
5. Apare butonul Mini chart settings. Click pe acest buton și se deschide
fereastra Mini Chart settings. Se alege dimensiunea după care se va
construi graficul: Trimestru și modul de afișare (Mode: Line with dots);
6. Click butonul OK pentru a închide ambele ferestre.

Rezultatul:

Putem să schimbăm și fundalul unei expresii în funcție de valorile sale. De


exemplu, pentru graficul anterior, vom face următoarele modificări:
1. Click cu mouse-ul pe expresia Profit operațional/Pierdere și selectăm
atributul background color;
2. Introducem următoarea expresie în caseta Definition:
If(sum(OP_PROFIT) >= 0, Green(),LightRed())
3. Click butonul OK pentru a închide fereastra Edit Expression;
4. Apoi se selectează atributul Text Color și în caseta Definition se tastează
white();
5. În tab-ul Number, se setează următorul format: Fixed to 2 decimals.

Rezultatul:

48
Mihaela Muntean, Ana-Ramona Bologa
Business Intelligence. Teorie și practică, editura ASE, 2015,
ISBN 978-606-505-858-3

Fereastra Expression overview (combinația de taste CTRL+ALT+E, sau din


meniu opțiunea Settings|Expression overview) permite gestionarea tuturor
expresiilor utilizate într-un document Qlikview (figura 5.14). Implicit se afișează
doar expresiile la nivel de grafic. Această listă poate fi extinsă, dacă selectăm sau
nu casetele de validare corespunzătoare (Chart…, Color…., etc.). Putem edita o
expresie prin selectarea ei din listă și apoi, click pe butonul Edit.

Figura 5.14. Fereastra Expression Overview

49
Mihaela Muntean, Ana-Ramona Bologa
Business Intelligence. Teorie și practică, editura ASE, 2015,
ISBN 978-606-505-858-3
Crearea unui grafic de tip gauge
Se va crea un grafic de tip gauge care va afișa cât reprezintă procentual salariile
personalului de conducere din total cheltuieli salariale. Se parcurg următorii pași:
1. Se selectează icoana Create Chart din bara de butoane;
2. În fereastra General, se selectează tipul graficului: gauge;
3. Se stabilește titlu (Window Title)=Salarii personal conducere/Cheltuieli
salariale. Apoi click butonul Next;
4. Acest tip de grafic nu utilizează dimensiuni. Se va trece la fereastra Edit
Expression;
5. Se adaugă următoarea expresie: Sum (SAL_MGT)/Sum
(CHELTUIELI_SAL)
6. Eticheta expresiei este Salarii personal conducere/Cheltuieli salariale;
7. Click butonul Next de trei ori până la fereastra Presentation și se setează
(sub Gauge Settings) valorile min și max: 0 și 1;
8. În caseta Segment setup se vor adăuga două segmente prin click pe
butonul Add, de două ori. Caseta de validare Autowidth segments nu se
selectează. Dacă se bifează caseta Autowidth segments, dimensiunile
segmentelor se stabilesc în funcție de valorile min și max. Dacă dorim să
evităm acest lucru, setam noi segmentele astfel:
 Segmentul 1:
o lower bound=0.0, click pe butonul de culoare. Se deschide
fereastra Color Area, se selectează butonul Solid Color și se
alege culoarea verde deschis;
 Segment 2:
o Lower Bound: 0.25
o Se selectează butonul Solid Color și se alege culoarea
galbenă;
 Segment 3:
o Lower Bound: 0. 5
o Se selectează butonul Solid Color și se alege culoarea
portocaliu;
 Segment 4:
 Lower Bound: 0.75
 Se selectează butonul Solid Color și se alege culoarea roșie.
Graficul va afișa valori procentuale de la 0 la 100%. S-au definit 4 segmente. Se
setează numai limita inferioară a fiecărui segment. Limita superioară este definită
automat de limita inferioară a segmentului următor, sau de limita superioară a
graficului. Segmentul 1 este de la 0 la 25%, segmentul 2 de la 25-50%, etc.
9. În tab-ul Presentation se bifează casetele de validare Show Scale, Show
Labels on every major unit, Hide segment boundaries și Hide Gauge
Outlines;

50
Mihaela Muntean, Ana-Ramona Bologa
Business Intelligence. Teorie și practică, editura ASE, 2015,
ISBN 978-606-505-858-3
10. Se setează Show Scale =5 Major units, se setează Show Labels on every
to 1 Major Unit. Se vor afișa limitele fiecărui segment: 0, 25%, 50%, 75%
și 100%.
11. Click butonul Next, de trei ori până la fereastra Number. Se va seta
formatul Integer și se bifează caseta Show in Percent (%);
12. Click butonul Next și se deschide fereastra Font. Se setează Size=8;
13. Click butonul Finish.

Rezultatul:

Pentru a vedea exact ce reprezintă fiecare număr din grafic, se parcurg următorii
pași:
1. Se deschide fereastra Properties;
2. În tab-ul Presentation, click pe butonul Add (secțiunea Text in chart). Se
deschide fereastra Chart Text;
3. Se adaugă următoarea expresie în caseta Text, prin click pe butonul (…):
=Num (Sum (SAL_MGT) / Sum (CHELTUIELI_SAL), '##.#%')
Se pune semnul (=) în fața expresiei, pentru a fi interpretată ca o expresie. Se
utilizează funcția Num() pentru a afișa procentual.
4. În fereastra Chart text, se setează opțiunile: Alignment =centered, Font
=Tahoma, Font style=regular și Size=14;
5. Click pe butonul OK pentru a salva setările. Textul adăugat va fi plasat în
colțul stânga sus al obiectului. Se activează graficul (click pe titlu) și apoi
51
Mihaela Muntean, Ana-Ramona Bologa
Business Intelligence. Teorie și practică, editura ASE, 2015,
ISBN 978-606-505-858-3
se apasă combinația de taste Ctrl+Shift. Apare o bordură roșie în jurul
textului și putem muta textul unde dorim;
6. Se deschide fereastra de proprietăți. În tab-ul Colors, se mută
Transparency slider la 100%;
7. În tab-ul Caption, caseta de validare Show caption nu se selectează;
8. Click pe butonul OK pentru a salva setările.

Rezultatul:

Se pot alege și alte tipuri de reprezentare cum ar fi: vitezometru, vitezometru


vertical, termometru, semafor, termometru orizontal și gauge digital.

Rezultatul (termometru):

52
Mihaela Muntean, Ana-Ramona Bologa
Business Intelligence. Teorie și practică, editura ASE, 2015,
ISBN 978-606-505-858-3

Crearea unui obiect de tip text box/caseta pentru afișare texte


Un astfel de obiect se folosește pentru a afișa un text explicativ, o imagine sau
pentru a crea zone colorate în pagină. Vom redenumi pagina Main în Dashboard și
vom crea un obiect de tip text box. Se parcurg următorii pași:
1. Click cu butonul dreapta al mouse-ului oriunde pe un spațiu gol din pagină
și se selectează din meniul asociat opțiunea New Sheet object|Text
object;
2. În caseta Text se introduce următoarea expresie:
=Num(avg (MGT), '#,##0.00')
Un obiect de tip text box nu are tab-ul Number în fereastra de proprietăți,
de aceea s-a utilizat funcția Num() pentru a formata corect rezultatul
expresiei.
3. Mutăm Transparency slider la 100%;
4. În tab-ul Font se setează font=Tahoma, font style=bold, size=16;
5. În tab-ul Caption, se bifează caseta de validare Show caption, iar în caseta
Title text se introduce: Număr mediu de manageri (mii);
6. Se setează, din zona Caption alignment, caseta Horizontal: centered;
7. Se bifează caseta de validare Wrap text și în caseta Caption Height se
introduce valoarea 2. Obiectul creat va fi poziționat sub obiectul de tip
gauge (figura 5.15).
Dacă dorim să afișăm o icoană de atenționare pe obiectul de tip text box Profit
Net, atunci când profitul este negativ, se parcurg următorii pași:
1. Din meniu, se selectează opțiunea Layout|New sheet object|Text object ;
2. În tab-ul General se tastează în zona Text:
=num(sum(NETPROFIT), '#,##0.00');

53
Mihaela Muntean, Ana-Ramona Bologa
Business Intelligence. Teorie și practică, editura ASE, 2015,
ISBN 978-606-505-858-3
3. În tab-ul Caption se bifează caseta de validare Show caption și Title text:
Profitul net (mil $),
4. Se bifează caseta de validare Wrap text și în caseta Caption Height se
introduce valoarea 2;
5. În tab-ul Font, se alege: tahoma, bolduit, 10;
6. Click pe butonul OK pentru a închide fereastra și a salva setările.
Apoi se va crea un alt obiect de tip text box cu următoarele setări:
1. În tab-ul General, se selectează butonul radio Image localizat în secțiunea
Background și click pe butonul Change;
2. Se selectează fișierul warning.jpeg (se poate descărca de pe Internet);
3. Transparency slider este <50% pentru a fi vizibilă icoana;
4. În tab-ul Layout, se setează din zona Layer: Top. În acest caz, icoana este
întotdeauna suprapusă peste obiectul de tip text, creat anterior. Altfel nu se
va putea selecta cu mouse-ul;
5. În tab-ul Layout, se selectează butonul radio Conditional (sub Show) și se
introduce expresia: Sum([NETPROFIT]) < 0. În acest caz, icoana se va
afișa numai pentru un profit net<0;
6. Click pe butonul OK pentru a închide fereastra de proprietăți (figura 5.16).

Figura 5.15. Crearea unui obiect de tip text

54
Mihaela Muntean, Ana-Ramona Bologa
Business Intelligence. Teorie și practică, editura ASE, 2015,
ISBN 978-606-505-858-3

Figura 5.16. Crearea unui obiect de tip text box care afișează și o imagine

Se pot asocia acțiuni la obiectele de tip text, obiecte de tip linie/săgeată sau
butoane. De exemplu, dacă facem click pe obiectul de tip text Profitul net să se
deschidă pagina Analiza financiară. Se parcurg următorii pași:
1. Se va crea pagina Analiza financiară și se deschide fereastra de proprietăți
corespunzătoare paginii;
2. În tab-ul General, se setează sheetID=Analiza_FIN și click pe butonul
OK;
3. În pagina Dashboard, click pe obiectul de tip text Profitul net și se
deschide fereastra de proprietăți;
4. În tab-ul Actions, click pe butonul Add;
5. Se selectează opțiunea Layout din secțiunea Action Type și opțiunea
Activate Sheet din secțiunea Action. Click pe butonul OK;
6. În tab-ul Actions, se introduce Analiza_FIN în caseta SheetID. Apoi click
pe butonul OK.

Utilizarea variabilelor în grafice


Se va crea o variabilă care va stoca expresia Sum (SAL_MGT)/Sum
(CHELTUIELI_SAL):
1. Din meniu se selectează opțiunea Settings|Variable overview (sau
combinația de taste CTRL+ALT+V) pentru a deschide fereastra Variable
Overview;

55
Mihaela Muntean, Ana-Ramona Bologa
Business Intelligence. Teorie și practică, editura ASE, 2015,
ISBN 978-606-505-858-3
2. Click pe butonul Add pentru a introduce în caseta Variable Name:
eprocent și apoi click pe butonul OK;
3. Se selectează variabila creată și se introduce în caseta Definition
următoarea expresie: Sum (SAL_MGT)/Sum (CHELTUIELI_SAL)
4. În caseta Comment se introduce descrierea variabilei: Salarii personal
conducere/cheltuieli salariale;
5. Click pe butonul OK pentru a închide fereastra Variable Overview;
6. Se selectează pagina Dashboard și se deschide fereastra de proprietăți
pentru graficul gauge;
7. În tab-ul Expression, se înlocuiește expresia definită anterior cu
următoarea expresie: =Num($(eprocent), '##.#%')
8. Click pe butonul OK.
Dacă această variabilă se va modifica, modificările se vor reflecta automat în
grafic.

Grafic de tip plăcintă


Un indicator important este cota de piață pe care o putem calcula utilizând
următoarea formulă: cota de piață a firmei X= (veniturile operaționale realizate de
firma X în perioada Y)/(total venituri operaționale realizate în perioada Y). Se va
utiliza un grafic de tip plăcintă:
1. Se va crea o variabilă vTOTAL=sum(OP_VENITURI);
2. Click cu butonul dreapta al mouse-ului pe suprafața paginii Dashboard și
se selectează opțiunea New Sheet Object|Chart din meniul asociat;
3. În tab-ul General, se selectează ca tip de grafic: Pie chart și titlu: Cota de
piață. Apoi click pe butonul Next;
4. În tab-ul Dimension, se selectează atributul Denumire din lista Available
Fields /Groups și se mută în lista Used Dimensions;
5. În fereastra Edit expression se introduce următoarea expresie:
sum(OP_VENITURI)/vTOTAL. Se introduce eticheta Cota de piața;
6. Click pe butonul Finish.

Rezultatul:

56
Mihaela Muntean, Ana-Ramona Bologa
Business Intelligence. Teorie și practică, editura ASE, 2015,
ISBN 978-606-505-858-3

Pentru a afișa cei mai mari jucători pe piață, în 2012, se vor face următoarele
modificări:
1. Se deschide fereastra de proprietăți a graficului. În tab-ul Dimension
Limits, se bifează caseta de validare Restrict which values are displayed
using the first expression;
2. Se selectează butonul radio Show only;
3. Se selectează Largest 5 values;
4. În tab-ul Expressions se bifează caseta Value on data Points;
5. Click pe butonul OK;

Rezultatul:

57
Mihaela Muntean, Ana-Ramona Bologa
Business Intelligence. Teorie și practică, editura ASE, 2015,
ISBN 978-606-505-858-3

Opțiunea Dimension Limits poate fi setată doar numai pentru prima expresie.
În cazul în care graficul are mai multe expresii, celelalte expresii nu se iau în
considerare. Putem adăuga denumirea companiei lângă cota procentuală astfel:
1. În tab-ul Expression, se selectează butonul Add pentru a adăuga o nouă
expresie: If (count(distinct Denumire) = 1, Denumire, 'Others'), eticheta
Denumire. Se verifică dacă secțiunea curentă (felia) din grafic corespunde
unei singure companii și atunci se afișează denumirea companiei;
2. Se bifează caseta Values on Data Points;
3. În tab-ul Presentation, caseta Show legend nu se selectează;
4. În tab-ul Caption, caseta Show Caption nu se selectează;
5. Click pe butonul OK

Rezultatul:

58
Mihaela Muntean, Ana-Ramona Bologa
Business Intelligence. Teorie și practică, editura ASE, 2015,
ISBN 978-606-505-858-3

Editorul de rapoarte permite proiectarea de rapoarte statice care pot fi tipărite


sau salvate în format PDF (figura 5.17).

Figura 5.17. Report Editor

Pentru a crea un raport se parcurg următorii pași:


1. Din meniu, se selectează opțiunea Reports|Edit reports;

59
Mihaela Muntean, Ana-Ramona Bologa
Business Intelligence. Teorie și practică, editura ASE, 2015,
ISBN 978-606-505-858-3
2. Din fereastra Report Editor, click pe butonul Add pentru a crea un nou
raport;
3. Se stabilește denumirea raportului (Name=Raport static). Click pe butonul
OK;
4. Click pe butonul Edit>> pentru a edita raportul. Se afișează o pagină goală
în care se pot adăuga obiecte din documentul Qlikview.
5. Din pagina Dashboard, se “trage” graficul Cota de piața și lista An;
6. Se selectează opțiunea Page|Page Settings din meniul ferestrei Report
Editor;
7. Se activează tab-ul Banding și se marchează caseta de validare Loop page
over possible values;
8. Se selectează din listă: An, click pe butonul OK;
9. Se selectează din meniu opțiunea Reports|Print Preview (figura 5.18).
S-a creat un raport static care va afișa pentru toți anii, cota de piață. Raportul
poate fi tipărit, sau salvat ca fișier PDF, care se va genera la momentul în care
utilizatorul execută raportul, prin selectarea lui din meniul Reports. Raportul
depinde de selecțiile curente, sau se poate utiliza un bookmark definit anterior. Se
poate seta tipărirea pe o singură pagină/mai multe pagini, se poate adăuga numărul
paginii, data, ora, denumirea raportului, o imagine, etc.

Figura 5.18. Realizarea unui raport

Alte tipuri de grafice

60
Mihaela Muntean, Ana-Ramona Bologa
Business Intelligence. Teorie și practică, editura ASE, 2015,
ISBN 978-606-505-858-3
Graficul de tip Mekko este un grafic bidimensional care afișează datele sub
formă de segmente de diferite lățimi, dar cu aceeași înălțime, nu există spații între
segmente și segmentele la rândul lor sunt împărțite în alte segmente de diferite
înălțimi. Acest tip de grafic se utilizează în analiza de marketing. De exemplu,
avem trei categorii de produse: PC-uri, Laptop-uri și tablete și dorim să analizăm
contribuția procentuală a fiecărei categorii la vânzările totale. Se utilizează un
grafic de tip plăcintă sau de tip bare suprapuse/“stacked bar”. Să presupunem că în
fiecare categorie de produse avem trei mărci: Sony Vaio, Dell și HP. Dacă dorim să
vizualizăm contribuția procentuală a fiecărei mărci, din fiecare categorie, precum și
contribuția fiecărei categorii la vânzările totale, se poate utiliza un grafic de tip
mekko [Redmond, 2013], [Qlikview, 2010], [Qlikview, 2011b]. Următorul
exemplu va utiliza un grafic de tip mekko pentru a afișa contribuția procentuală a
fiecărei categorii de firme la total venituri operaționale. Lățimea unui segment este
determinată de raportul dintre veniturile operaționale la nivel de categorie și total
venituri operaționale, considerând prima dimensiune Categorie. Distribuția sub-
segmentelor în interiorul unui segment este determinată de raportul dintre
veniturile operaționale la nivel de regiuni și total venituri operaționale. Se
consideră a doua dimensiune Regiune. Se parcurg următorii pași:
1. Din meniu, se selectează opțiunea Layout|New Sheet Object|Chart;
2. În tab-ul General, se alege tipul de grafic mekko. Titlu ferestrei este
mekko chart;
3. Se bifează caseta Show title in chart și se introduce textul: Contribuția
procentuala la total venituri operaționale pe categorii si regiuni;
4. Se aleg ca dimensiuni, atributele Categorie și Regiune;
5. În tab-ul Expression, se introduce expresia sum(OP_VENITURI), eticheta
expresie este Venituri operaționale. Se bifează caseta Value on Data
points și caseta Relative (pentru a afișa procentual);
6. În tab-ul Presentation, se bifează caseta Plot values inside segments. Se
va afișa pentru fiecare segment, cât reprezintă procentual din total venituri;
7. În tab-ul Number, se stabilește pentru expresie, formatul Fixed to 2
decimals și se bifează caseta Show in percent (%);
8. În tab-ul Caption, se bifează caseta Show caption;
9. Click pe butonul OK.

Rezultatul:

61
Mihaela Muntean, Ana-Ramona Bologa
Business Intelligence. Teorie și practică, editura ASE, 2015,
ISBN 978-606-505-858-3

Se observă că cele mai mari venituri sunt obținute pentru zborurile interne.

Graficul de tip Grid poate conține trei dimensiuni diferite. În următorul


exemplu, s-au utilizat dimensiunile An, trimestru și regiune. Dimensiunea bulinei
reprezintă veniturile operaționale sum(OP_VENITURI).

Rezultatul:

62
Mihaela Muntean, Ana-Ramona Bologa
Business Intelligence. Teorie și practică, editura ASE, 2015,
ISBN 978-606-505-858-3
Se observă că cele mai mari venituri sunt în trimestrele 2, 3 anul 2011, respectiv
2012 și pentru zborurile interne.
Grafic de tip Trellis nu este un tip de grafic, ci o opțiune care există la toate
tipurile de grafice, cu excepția tabelelor pivot/”straight”. Se utilizează în cazul unui
grafic de tip linie, bară sau scatter. Se creează un grid în care, pentru fiecare
valoare distinctă a primei dimensiuni, se va crea un grafic separat. În următorul
exemplu, s-a creat un grafic de tip linie cu două dimensiuni Regiune și Trimestru și
expresia: sum(NETPROFIT)/sum(OP_VENITURI), eticheta Profit net marginal.
Optiunea Trellis poate fi setată în fereastra de proprietăți, tab-ul Dimensions.
Se selectează butonul Trellis pentru prima dimensiune și se deschide fereastra
Trellis Settings. Se setează opțiunile Number of columns, Fixed=2 și Number of
rows, Fixed=2. Fiecare grafic afișează profitul net marginal pe trimestre și regiuni,
pentru anul 2011.

Rezultatul:

Obiect de tip tabel (table box)


Coloanele unui tabel pot fi încărcate din diferite surse. Tabelul nu poate afișa
valori calculate. Pentru a crea un tabel se parcurg următorii pași:
1. Se selectează pagina Analiza financiara;
2. Click pe butonul Create table box din bara de butoane;
3. În fereastra de proprietăți, în tab-ul General, se precizează titlu Situație
financiara detaliata ;
4. Se aleg următoarele atribute: Regiune, Denumire, An, Trimestru,
NETPROFIT, OP_VENITURI, OP_CHELTUIELI, OP_PROFIT.
5. Se modifică, pentru toți indicatorii, separatorul pentru partea zecimală (,) și
pentru mii (.).

63
Mihaela Muntean, Ana-Ramona Bologa
Business Intelligence. Teorie și practică, editura ASE, 2015,
ISBN 978-606-505-858-3
Pentru a ajusta lățimea coloanelor, click cu butonul dreapta al mouse-ului pe
una dintre coloane, și se alege opțiunea Fit columns to data sau Equal Column
Width. Se poate alege coloana după care se face sortarea informațiilor (click cu
butonul dreapta al mouse-ului pe coloana dorită și se alege din meniul asociat
opțiunea Sort). Se pot exporta valorile din tabel. Se alege opțiunea Export din
meniul asociat butonului dreapta al mouse-ului. Se exportă într-un fișier (.qvo)
specific Qlikview care poate fi asociat cu orice program (inclusiv Excel).

Rezultatul:

Obiect de tip linie/săgeată


Acest obiect este utilizat pentru a împărți pagina în mai multe zone sau pentru a
vizualiza relațiile dintre diferite obiecte. De exemplu, se va utiliza o linie orizontală
pentru a îmbunătăți “layout-ul” paginii Dashboard:
1. În pagina Dashboard, click butonul Create Line|Arrow din bara de
butoane;
2. Se deschide fereastra de proprietăți și se fac următoarele setări:
a. În tab-ul General, în zona Orientation, se selectează butonul
Horizontal, culoarea liniei neagră, lățimea liniei (Line Weight =
4) și stilul (Line Style=linie continuă);
b. În tab-ul Layout, din zona Layer, se selectează butonul Bottom.

Lista multiplă (multi box)


Pentru a crea o listă multiplă se parcurg următorii pași:
1. Click pe butonul Create Multi box din bara de butoane sau se selectează
din meniu opțiunea Layout|New Sheet Object |Multi box;
2. În tab-ul General, se introduce titlul informații despre companii;

64
Mihaela Muntean, Ana-Ramona Bologa
Business Intelligence. Teorie și practică, editura ASE, 2015,
ISBN 978-606-505-858-3
3. Se selectează câmpurile Denumire, Categorie și Regiune din lista
Available Fields și se mută în lista Fields displayed in multibox;
4. Apoi click pe butonul OK.

65
Mihaela Muntean, Ana-Ramona Bologa
Business Intelligence. Teorie și practică, editura ASE, 2015,
ISBN 978-606-505-858-3
Rezultatul:

Dacă se selectează compania Asia Pacific, se observă că nu se afișează


regiunea. Compania își desfășoară activitatea în mai multe regiuni și anume
“Intern” și “International”.

Rezultatul:

Putem stabili criterii de căutare complexe. De exemplu, dorim să afișăm


informații numai despre companiile cu activitate în regiunea “Intern”, cu excepția
companiilor cu venituri mai mari de 1miliard $:
1. Click pe Denumire pentru a deschide lista de valori;
2. Click cu butonul dreapta al mouse-lui oriunde pe lista de valori și se
selectează opțiunea Advanced Search din meniul asociat;
3. În caseta Search Expression se introduce următoarea expresie:
= [Categorie] <> 'Companii aeriene mari(cu un venit anual> 1miliard $)'
and [Regiune] = 'Intern'
4. Click pe butonul Go pentru a se aplica selecția și apoi click pe butonul
Close pentru a închide fereastra Advanced search. Observăm în obiectul
de tip “selecție curentă”, expresia utilizată pentru selecție:

Rezultatul:

66
Mihaela Muntean, Ana-Ramona Bologa
Business Intelligence. Teorie și practică, editura ASE, 2015,
ISBN 978-606-505-858-3

Butoane
Butoanele se pot utiliza pentru a se executa diferite comenzi sau acțiuni: export
de date în fișiere, ștergerea selecțiilor, crearea unui bookmark, etc. Se va crea un
buton în pagina Dashboard:
1. Click pe butonul Create button din bara de butoane;
2. Se deschide fereastra de proprietăți;
3. În tab-ul General, se tastează în caseta Text următorul text: Anulează
selecții;
4. Din caseta Background se alege Aqua;
5. Click pe caseta Color și se alege culoarea verde din fereastra Color Area;
6. În tab-ul Actions, click pe butonul Add. Se deschide fereastra Add
Action. Se alege din lista Action type, opțiunea Selection și din lista
Action, opțiunea Clear All;
7. În tab-ul Font se alege culoarea roșie.

Rezultatul:

Dacă dorim să exportam date din anumite câmpuri într-un fișier (de exemplu,
Excel), vom utiliza ca acțiune (Action type: external, Action: export). Putem
lansa o aplicație utilizând ca acțiune (Action type:external, action:launch), apoi
se specifica aplicația (de exemplu, C:\Program Files\Microsoft
Office\Office12\EXCEL.EXE) .

Proprietățile unui document


Se pot modifica proprietățile tuturor obiectelor dintr-un document, utilizând
opțiunea Document Properties. De exemplu, se poate adăuga o imagine/sunet care
va fi afișată/executată atunci când documentul se deschide:

67
Mihaela Muntean, Ana-Ramona Bologa
Business Intelligence. Teorie și practică, editura ASE, 2015,
ISBN 978-606-505-858-3
1. Din meniu se alege opțiunea Setting|Document Properties, se selectează
tab-ul Opening;
2. Se bifează caseta Image și apoi click pe butonul Select;
3. Se alege fișierul harta_SUA.gif (sau orice alt fișier);
4. Se bifează caseta Close on mouse click, apoi click pe butonul OK;
5. Se salvează documentul, apoi se redeschide.
Qlikview utilizează o schemă implicită de culori pentru selecții și anume: verde
pentru valorile selectate, alb pentru valorile posibile și gri pentru valorile excluse.
Această schemă poate fi modificată astfel:
1. Din meniu se selectează opțiunea Setting|Document Properties|tab-ul
General;
2. În zona Selection Appearance, se alege din caseta Style:
 Qlikview classic (în mod implicit). Se poate alege o altă schemă de
culori/stil (caseta Color scheme);
 Windows checkboxes:

 Corner tag, LED/LED check boxes:

Variabile
Variabilele pot fi utilizate și în scripturi. De exemplu, dorim să utilizăm o
variabilă vDateToday care va seta data curentă în script: LET vDateToday =
Today(). Funcția TODAY() returnează data curentă.
Qlikview are două comenzi care pot fi utilizate pentru a asigna o valoare la o
variabilă: SET și LET. Diferența dintre cele două comenzi este că SET asignează
o valoare, în timp ce LET mai întâi evaluează expresia și rezultatul îl asignează
variabilei (set variablename = string sau let variable = expression) .

68
Mihaela Muntean, Ana-Ramona Bologa
Business Intelligence. Teorie și practică, editura ASE, 2015,
ISBN 978-606-505-858-3
Exemple:
valoarea variabilei vVariable
SET vVariable = 1; 1
LET vVariable = 3 + 4; 7

Variabilele în QlikView sunt utilizate pentru a stoca:


 o valoare constantă sau stabilită pe baza unei formule;
 definiția unei expresii care poate fi utilizată în grafice.
Pentru a crea/modifica o variabilă se utilizează fereastra Variable Overview
(combinația de taste CTRL+ALT+V, sau din meniu opțiunea Settings|Variable
Overview) (figura 5.19).

Figura 5.19. Opțiunea Variable Overview

Click pe butonul Add și se deschide fereastra New variable unde se tastează


denumirea noii variabile (Variable1 este denumirea implicită). Se modifică în
vTop. Click butonul OK. Se selectează variabila creată și în zona Definition se
tastează valoare 5. Apoi, în zona Comment se adaugă următorul comentariu:
Variabila utilizata pentru a modifica dinamic numărul de valori afișate in graficul
Top N. Se creează apoi un grafic de tip bară cu dimensiunea Denumire și ca
expresie Sum(OP_VENITURI). Din tab-ul Sort sortăm companiile după Y-Value
în ordine descrescătoare.

Rezultatul (selectăm anul 2011):

69
Mihaela Muntean, Ana-Ramona Bologa
Business Intelligence. Teorie și practică, editura ASE, 2015,
ISBN 978-606-505-858-3

Trebuie să limităm numărul de bare afișate și vom utiliza variabila vTop. Se


deschide fereastra de proprietăți pentru grafic. În tab-ul Dimension Limits se
bifează caseta de validare Restrict which values are displayed using the first
expression și se vor seta următoarele:
 se selectează butonul Show only;
 din casetă se va selecta Largest;
 în caseta Values se introduce $(vTop);
 caseta de validare Show Others nu este selectată.

Rezultatul:

70
Mihaela Muntean, Ana-Ramona Bologa
Business Intelligence. Teorie și practică, editura ASE, 2015,
ISBN 978-606-505-858-3

Există două moduri prin care valoarea unei variabile poate fi schimbată și
anume:
 utilizarea unei casete pentru introducere date (Input box);
 utilizarea unui obiect de tip slider.

Utilizarea unei casete pentru introducere date (Input box)


Pentru a crea un astfel de obiect, se parcurg următorii pași:
1. Se selectează din meniu, opțiunea Layout|New sheet Object|Input Box;
2. În tab-ul General, se stabilește titlu Introduce valoare;
3. Din lista de variabile Available Variables se va selecta variabila vTop și
se mută în lista Displayed Variables;
4. Se selectează eticheta (caseta Label) și se introduce textul Top valori;
Atunci când obiectul este creat, valoarea implicită este 5 (stabilită la definirea
variabilei). Se poate modifica această valoare.

Rezultatul :

Se poate modifica titlul graficului, și anume se va afișa Top n companii după


veniturile operaționale. Se va introduce următoarea expresie: ='Top ' & vTop&'
Companii după veniturile operaționale '

Rezultatul:

71
Mihaela Muntean, Ana-Ramona Bologa
Business Intelligence. Teorie și practică, editura ASE, 2015,
ISBN 978-606-505-858-3

Utilizarea unui obiect de tip slider


Se utilizează pentru a modifica valoarea unei variabile. Se parcurg următorii
pași:
1. Click cu butonul dreapta al mouse-lui pe pagina Analiza financiara și se
alege din meniul afișat opțiunea New Sheet Object|Slider\Calendar
object;
2. În tab-ul General, se selectează din caseta Input Style: Slider;
3. Din secțiunea Data se activează butonul Variables și se selectează
variabila vTop;
4. Se va seta Min value=3 și Max value=10 (șirul de valori ale obiectului de
tip slider);
5. Se bifează caseta de validare Static Step și se alege valoare 1. În obiectul
de tip slider sunt utilizate numai numere întregi;
6. Click pe butonul OK și se va crea un obiect de tip slider orizontal. Putem
să-i schimbăm modul de afișare (tab-ul Presentation).

Rezultatul:

72
Mihaela Muntean, Ana-Ramona Bologa
Business Intelligence. Teorie și practică, editura ASE, 2015,
ISBN 978-606-505-858-3

Utilizarea variabilelor pentru a stoca valoarea unei expresii/definiții de


expresii
Se parcurg următorii pași:
1. Se deschide fereastra Variable Overview, click butonul Add. Se va crea
variabila vTotal, click pe butonul OK;
2. Selectăm variabila și în zona Definition se introduce următoarea expresie:
=Sum(OP_VENITURI) – se va calcula venitul total pentru toate
companiile;
3. Click pe butonul OK pentru a închide fereastra;
4. Se va crea un grafic de tip “straight” cu dimensiunea Denumire și expresia:
Sum(OP_VENITURI) / (vTotal)
5. În tab-ul Number, se stabilește pentru expresie un format cu două
zecimale (Fixed to 2 decimals) și se specifică că va fi afișată procentual
(Show in percent(%)). Se va afișa pentru fiecare companie cât reprezintă
procentual veniturile sale din total venituri. Se va sorta descrescător după
valoarea procentuală.

Rezultatul:

73
Mihaela Muntean, Ana-Ramona Bologa
Business Intelligence. Teorie și practică, editura ASE, 2015,
ISBN 978-606-505-858-3
Se poate utiliza o variabilă pentru a stoca definiția unei expresii. În definiția
variabilei nu se specifică semnul (=). În acest caz expresia ($variabila) se va
calcula direct în grafic. Atunci când valoarea unei variabile este un șir de caractere,
$variabila va fi null sau valoare lipsă, deoarece o valoare text nu poate fi
interpretată numeric. De exemplu, variabila vUsername cu definiția:=OSUSER()
are ca rezultat Domain\Username. Atunci când se apelează variabila dintr-un
obiect (de exemplu, un obiect de tip text box) trebuie să utilizăm următorul cod:
='User Name: $(vUsername)' sau ='User Name: '& vUsername
Se pot crea variabile cu parametrii. Se parcurg următorii pași:
1. Se deschide fereastra Variable Overview și se creează o noua variabilă
eTotal;
2. Definiția variabilei este: Sum(OP_VENITURI) / $1
3. În caseta Comment se introduce textul Variabila pentru a calcula total
venituri, exprimat în unități diferite ;
Parametru este reprezentat de simbolul ($1) și va permite să utilizăm aceeași
variabilă pentru a calcula veniturile realizate în milioane (prin definirea
parametrului ca 1000000), mii (1000), etc. Pentru a utiliza această variabilă într-o
expresie, se va utiliza o tabelă de tip “straight” cu dimensiunea Denumire și
următoarele expresii:
1. Prima expresie este: $(eTotal(1000000)) și are eticheta Venituri(milioane);
2. A doua expresie este: $(eTotal(1000)) și are eticheta Venituri(mii);
3. A treia expresie este: $(eTotal(1)) și are eticheta Venituri;
4. Pentru toate expresiile, formatul este Fixed to 2 decimals și s-au modificat
separatorii pentru partea zecimală (,) și pentru mii (.).

Rezultatul:

O variabilă poate utiliza orice număr de parametrii $1, $2, $3,…. De exemplu,
$(VariableName(30, 20, 50)). De asemenea, cu ajutorul variabilelor se pot
schimba, în mod dinamic, indicatorii vizualizați într-un grafic/în mai multe grafice.
Se parcurg următorii pași:
1. Se deschide fereastra Variable Overview și se creează două variabile:
eCheltuieli cu definiția: sum(OP_CHELTUIELI) și eVenituri cu definiția:
sum(OP_VENITURI);
2. Se deschide fereastra Edit Script și se adaugă un nou tab Indicatori;

74
Mihaela Muntean, Ana-Ramona Bologa
Business Intelligence. Teorie și practică, editura ASE, 2015,
ISBN 978-606-505-858-3
3. În acest tab se adaugă o nouă tabelă utilizând opțiunea Insert|Load
Statement|Load Inline, din meniu. Se va genera următorul cod:

LOAD * INLINE [
Indicatori, eIndicator
Cheltuieli, eCheltuieli
Venituri, eVenituri];

4. Se salvează scriptul și apoi se execută. Se adaugă o nouă tabelă logică la


model;
5. Se va crea o listă Indicatori în pagina Analiza financiara;

Rezultatul:

6. În fereastra de proprietăți a listei, în tab-ul General se bifează caseta


Always one selected value. Pentru a se activa această opțiune, trebuie
selectată anterior o valoare din listă;
7. Se va crea un grafic de tip plăcintă a cărui expresie va fi modificată
dinamic, utilizând lista Indicatori. Se fac următoarele setări:
 Se stabilește titlul ferestrei Indicatori &' după Companie';
 Se dezactivează caseta de validare Show Title in chart;
 Se setează ca dimensiune a graficului atributul Denumire;
 Se stabilește ca expresie: $($(=eIndicator));
S-au utilizat două semne ($): primul (din interior) extrage valoarea din
tabela logică creată, după ce utilizatorul a selectat unul dintre
indicatorii, din lista Indicatori (adică specifică ce variabilă va fi
evaluată), al doilea ($) evaluează acea variabilă.
 În tab Presentation, se marchează caseta Limit Legend =20;
 În caseta Text in Chart se introduce textul Indicatori;
 În tab-ul Dimension Limits se limitează numai la primele 5 firme
după valoarea indicatorului selectat.

Rezultatul:

75
Mihaela Muntean, Ana-Ramona Bologa
Business Intelligence. Teorie și practică, editura ASE, 2015,
ISBN 978-606-505-858-3

Utilizarea clauzei TOTAL în funcțiile de agregare


Clauza TOTAL este utilizată în funcțiile de agregare pentru a realiza agregarea
setului de date curent selectat. Dacă apare clauza TOTAL înaintea unei expresii,
calculele vor fi făcute pentru toate valorile posibile date de selecțiile curente,
indiferent de dimensiunile graficului. Se consideră următorul exemplu:

Luna Grup Sum(valoare) Sum(TOTAL valoarea)


1 A 1 21
1 B 2 21
2 A 3 21
2 B 4 21
3 A 5 21
3 B 6 21

În coloana 4 se afișează totalul valorilor din coloana 3. Dacă se selectează


numai lunile 1 și 2, se obțin următoarele rezultate:

Luna Grup Sum(valoare) Sum(TOTAL valoarea)


1 A 1 10
1 B 2 10
2 A 3 10
2 B 4 10

Clauza TOTAL poate fi urmată de o listă de atribute puse între < >. Aceste
atribute trebuie să fie un subset al dimensiunilor graficului. În acest caz, agregarea
se va face pentru fiecare combinație de valori ale atributelor specificate în listă.
76
Mihaela Muntean, Ana-Ramona Bologa
Business Intelligence. Teorie și practică, editura ASE, 2015,
ISBN 978-606-505-858-3

77
Mihaela Muntean, Ana-Ramona Bologa
Business Intelligence. Teorie și practică, editura ASE, 2015,
ISBN 978-606-505-858-3
Luna Grup Sum(valoare) Sum Sum(TOTAL Sum(TOTAL
(TOTAL <Luna>valoare) <Grup>valoare)
valoarea) total calculat total calculat
pentru fiecare pentru fiecare
lună grup
1 A 1 21 3 9
1 B 2 21 3 12
2 A 3 21 7 9
2 B 4 21 7 12
3 A 5 21 11 9
3 B 6 21 11 12

Se va crea o tabelă pivot cu dimensiunile Regiune, Categorie și Denumire și


următoarele expresii:
 sum(OP_VENITURI) cu eticheta Venituri;
 sum(TOTAL <Categorie> OP_VENITURI) cu eticheta venituri pe
categorii;
 sum(TOTAL <Regiune> OP_VENITURI) cu eticheta venituri pe regiuni;
 sum(TOTAL OP_VENITURI) cu eticheta total venituri pentru selecția
curenta;
În tab-ul Number, se setează formatul Fixed to 2 decimals pentru toate expresiile.

Rezultatul:

78
Mihaela Muntean, Ana-Ramona Bologa
Business Intelligence. Teorie și practică, editura ASE, 2015,
ISBN 978-606-505-858-3

Prin utilizarea clauzei TOTAL s-au generat următoarele agregări: veniturile pe


categorii, pentru anul 2012, veniturile pe regiuni, pentru anul 2012, total venituri
pentru anul 2012 (adică selecția curentă).

5.1.2.4. Analiza complexă a datelor utilizând Qlikview


Set Analysis
Set Analysis se utilizează pentru:
 a compara rezultatele din două perioade de timp diferite (de exemplu, anul
curent versus anul anterior, luna curentă versus aceeași lună din anul
anterior, luna curentă versus luna anterioară, etc.). Comparațiile sunt
dinamice și se ține cont de selecțiile realizate de utilizatori. De exemplu,
dacă utilizatorul selectează octombrie 2010, atunci comparațiile vor fi: din
ianuarie până în octombrie 2010 versus ianuarie până octombrie 2009;
octombrie 2010 versus octombrie 2009; octombrie 2010 versus septembrie
2010, etc;
 a restricționa sau extinde setul de date utilizat în calcule;
 a ignora toate selecțiile;
 a utiliza un set de date returnat de un bookmark;
 a înlocui expresii care utilizează funcția IF() [Redmond, 2013], [Qlikview,
2010], [Qlikview, 2011b];
Set Analysis permite agregarea flexibilă a datelor. De regulă, agregarea
utilizează setul de date din selecția curentă. De multe ori, se cere agregarea unui set
de date care este independent de selecția curentă. De exemplu, selecția curentă

79
Mihaela Muntean, Ana-Ramona Bologa
Business Intelligence. Teorie și practică, editura ASE, 2015,
ISBN 978-606-505-858-3
poate fi anul 2001, dar utilizând Set Analysis se pot agrega datele pentru anul 2002
sau anii< > 2001.
Expresiile din Set Analysis includ o funcție de agregare (sum, count, max,
min, etc.) și trei elemente care trebuie definite: identificatorii, operatorii și
modificatorii setului de date.
Identificatorii sunt utilizați pentru a specifica în mod explicit setul de date
utilizat. Sunt similari clauzei FROM din SELECT-SQL. Identificatorii sunt incluși
între { }. De exemplu, Sum ({identificator} OP_VENITURI) și poate avea
următoarele valori:
1 = se ia în considerare tot setul de date asociat documentului, dar se ignoră
selecțiile curente;
$ = se ia în considerare numai setul de date asociat selecțiilor curente;
$1=se ia în considerare setul de date asociat selecției anterioare;
1-$= se iau în considerare, din tot setul de date, numai acele date care nu sunt
selectate în selecțiile curente;

Exemple:
Sum({1}OP_VENITURI) – total venituri pentru tot setul de date, cu excepția
selecțiilor curente;
Sum({$1} OP_VENITURI) – total venituri pentru setul de date asociat selecției
anterioare;
Sum ({Bookmark1} OP_VENITURI) – total venituri pentru setul de date definit de
bookmark1;

Modificatorii setului de date sunt similari clauzei WHERE din SELECT-SQL.


Sunt utilizați pentru a modifica setul de date stabilit de identificatori și apoi utilizat
în agregare. Se precizează de forma: Sum ( {identificator <modificatorii setului de
date>} OP_VENITURI) (figura 5.20).

Exemple:
Sum ({1 <AN = {2007}>} OP_VENITURI) – total venituri pentru anul 2007 (se
ignoră selecțiile curente);
Sum ({1 <AN = {2007, 2008}, Regiune = {‘Intern’}>} OP_VENITURI) – total
venituri pentru anii 2007 sau 2008 și regiunea “Intern” (se ignoră selecțiile
curente);

Expresia se pune între { }

=sum({1-$<An=2012>}OP_VENITURI)

80

identificator Modificatorii se pun între < >


Mihaela Muntean, Ana-Ramona Bologa
Business Intelligence. Teorie și practică, editura ASE, 2015,
ISBN 978-606-505-858-3

Figura 5.20. Definirea unei expresii utilizată de Set Analysis

În unele cazuri, setul de date selectat de utilizator trebuie modificat prin


adăugare sau ștergere de înregistrări. Sunt utilizați patru operatori de bază:
reuniune (+), excludere (-), intersecție (X) și diferență simetrică (/) - opusul
intersecției. Operatorii sunt utilizați pentru a “opera” pe unul sau mai mulți
identificatori:

81
Mihaela Muntean, Ana-Ramona Bologa
Business Intelligence. Teorie și practică, editura ASE, 2015,
ISBN 978-606-505-858-3
(+)- similar reuniunii din SQL (-) similar cu MINUS sau EXCEPT din SQL

(*) – similar cu INTERSECT din SQL (/ ) – similar cu XOR sau


diferența simetrică

Exemple:
Sum({$<AN+={2007,2008}>} OP_VENITURI) - total venituri pentru anii selectați
de utilizator și de asemenea, pentru anii 2007 și 2008, indiferent dacă au fost
selectați sau nu;
Sum({$<Regiune - = {‘Intern’}>} OP_VENITURI) - total venituri pentru regiunile
selectate de utilizator, dar se exclude regiunea “Intern”;
Pentru a înțelege mai bine Set Analysis se va utiliza următoarea sursă de date:

Companie An Venituri
A 2011 10000
B 2011 10000
C 2011 10000
A 2012 10000
B 2012 10000
C 2012 10000
D 2012 10000
E 2012 10000
A 2013 10000
B 2013 10000
C 2013 10000
D 2013 10000
E 2013 10000
F 2013 10000

82
Mihaela Muntean, Ana-Ramona Bologa
Business Intelligence. Teorie și practică, editura ASE, 2015,
ISBN 978-606-505-858-3
G 2013 10000
Pentru a realiza analize cu Set Analysis se parcurg următorii pași:
1. Se definește expresia de bază Sum (Venituri);
2. Se definește identificatorul care va stabili setul de date utilizat în analiză.
Între { } se definește identificatorul: Sum({$}Venituri);
3. Se definesc atributele care vor juca rolul de modificatori ai setului. Se
specifică astfel ce se adaugă/exclude din setul inițial de date. Exemple:
 DenumireCamp={valoare}, dacă valoarea este numerică;
 DenumireCamp ={‘valoare text’}, dacă valoarea este un șir de
caractere;
 DenumireCamp ={“criteriu de căutare”), dacă dorim să utilizăm un
criteriu de căutare;
Structura expresiei utilizată pentru stabilirea setului de date este de forma:
Sum ({$<Camp1={valoare1}, Camp2={valoare2}>}Venituri)
Se vor utiliza două liste: An și Companie și tabele pivot:

Selecția curentă:
An=2012
Funcția de agregare:
sum()
Expresia: sum(Venituri)

Selecția curentă: An=2012


Funcția de agregare: sum()
Expresia pentru anul curent: sum(Venituri)
Expresia pentru anul anterior: Sum({$<An={$(=Max(An)-1)}>}Venituri)

Selecția curentă Selecția curentă Tot setul de date Selecția anterioară


83
Mihaela Muntean, Ana-Ramona Bologa
Business Intelligence. Teorie și practică, editura ASE, 2015,
ISBN 978-606-505-858-3

Este exclusă selecția Setul de date comun


Selecția curentă
curentă selecției curente și
bookmark1
Selecția este stabilită de bookmark1 (adică numai pentru
companiile A,B, C) Setul de date care nu este
comun selecției curente și
bookmark1

84
Mihaela Muntean, Ana-Ramona Bologa
Business Intelligence. Teorie și practică, editura ASE, 2015,
ISBN 978-606-505-858-3

Sum({$<An = {2011}>} Venituri) - se va utiliza ca set de date, selecția curentă ($),


dar numai pentru anul 2011, chiar dacă utilizatorul selectează alte valori ale
atributului An;
Sum({$<An = {"20*"}>} Venituri) - se va utiliza ca set de date, selecția curentă
($), dar numai pentru anii care încep cu 20;
Sum({$<An = {">=2010"}>} Venituri) - se va utiliza ca set de date, selecția
curentă, unde An >= 2010;
Sum({$<Companie = {'A', 'B'}, An = {2011}>} Venituri) - se va utiliza ca set de
date selecția curentă, unde valorile câmpului Companie sunt “A/B” și An = 2011;
sum({$<Companie={'A'}>}Venituri) – veniturile companiei A pentru selecția
curentă;
sum({1<Companie={'A'}>}Venituri) - veniturile companiei A din tot setul de date,
indiferent de selecție;
sum({$<Companie={'A', 'B', }>}Venituri) - veniturile companiilor A și B pentru
selecția curentă;
sum({$<An={2012}, Companie={'A'}>}Venituri) - veniturile companiei A, în anul
2012;
sum({$<An=>}Venituri) - veniturile pentru toți cei trei ani;

În expresii se pot utiliza și variabile. Dacă, de exemplu, variabila conține un


număr, expresia utilizată pentru a stabili setul de date este: Sum({$<An =
{$(vAn)}>} Venituri).
Dacă variabila conține un text, expresia ar trebui să fie de forma:
Sum({$<Companie = {'$(vCompanie)'}>} Venituri).
Daca valoarea unei variabile este utilizată ca șir de căutare, expresia ar fi de
forma: Sum({$<Companie = {"$(vCompanie)"}>} Venituri).
Se poate modifica dinamic setul de date utilizat în analiză, ținând cont de
selecțiile curente ale utilizatorilor. Se pot include funcții în definiția setului de
valori ale unui câmp (din setul de date utilizat pentru analiză). De exemplu,
Sum({$<An={$(=Max(An))}>} Venituri). Simbolul ($) din $(=Max(An) se
utilizează pentru a evalua expresia inclusă între paranteze (adică se returnează
85
Mihaela Muntean, Ana-Ramona Bologa
Business Intelligence. Teorie și practică, editura ASE, 2015,
ISBN 978-606-505-858-3
ultimul an din selecția curentă). Dacă se dorește setul de date corespunzător anului
anterior, indiferent ce an selectează utilizatorul, se utilizează expresia:
Sum({$<An={$(=Max(An)-1)}>} Venituri).
Dacă utilizatorul modifică selecția (adică va selecta un alt an), se modifică
automat și setul de date utilizat în analiză (întotdeauna va fi pentru anul anterior).
Pentru a stabili setul de date analizat, se pot utiliza și două funcții:
 Funcția P() utilizează toate valorile posibile ale unui atribut;
 Funcția E() utilizează toate valorile excluse ale unui atribut;
De exemplu, dorim să afișăm vânzările curente ale companiilor care au avut
vânzări anul trecut. Se va utiliza următoarea expresie:
sum({<An={$(=Max(An))},Companie=P({<An={$(=Max(An)-1)}> } Companie )
> } Venituri )

86
Mihaela Muntean, Ana-Ramona Bologa
Business Intelligence. Teorie și practică, editura ASE, 2015,
ISBN 978-606-505-858-3
Rezultatul:

Revenim la fișierul analiza.qvw și vom utiliza Set Analysis pentru a afișa


creșterea/scăderea veniturilor față de anul anterior. În tab-ul Dashboard, se va crea
un obiect de tip text box cu titlu Creșterea veniturilor fata de anul anterior (figura
5.21). Se deschide fereastra de proprietăți, se selectează tab-ul General și în caseta
Text se introduce următoarea expresie:
=num((sum(OP_VENITURI)-Sum({$<AN={$(=Max(AN)-1)}>}
[OP_VENITURI]))/Sum({$<AN={$(=Max(AN)-1)}>} [OP_VENITURI]), '#.00%')

Figura 5.21. Utilizarea opțiunii Set Analysis

Dorim ca acest obiect să se afișeze, doar dacă se selectează un an din lista An. În
fereastra de proprietăți, în tab-ul Layout, zona Show, se selectează butonul
Conditional și se introduce în caseta alăturată, următoarea expresie: count(distinct
AN)=1 .

87
Mihaela Muntean, Ana-Ramona Bologa
Business Intelligence. Teorie și practică, editura ASE, 2015,
ISBN 978-606-505-858-3

88
Mihaela Muntean, Ana-Ramona Bologa
Business Intelligence. Teorie și practică, editura ASE, 2015,
ISBN 978-606-505-858-3
5.1.2.5. Crearea de scenarii comparative
Stările alternative permit utilizatorilor să realizeze comparații între două sau
mai multe seturi de date, fără a crea expresii Set Analysis complexe sau scripturi
de încărcare. Stările alternative sunt utile atunci când se fac selecții diferite,
utilizând aceeași dimensiune (atribut). Există două stări utilizate în mod implicit
într-un document QlikView și anume:
 Starea implicită. Un document Qlikview este întotdeauna în stare
implicită. Starea implicită este reprezentată de simbolul ($) într-o expresie.
Toate selecțiile făcute de utilizatori sunt în starea implicită;
 Starea moștenită. Un obiect poate moșteni o stare de la obiectul părinte
(pagină și container). Obiectele unei pagini sunt întotdeauna într-o stare
moștenită.
De exemplu, se poate realiza o analiză comparativă a veniturilor realizate în
regiunea „Intern” cu veniturile realizate în regiunea „America Latina”. Această
analiză se poate realiza și cu Set Analysis. Se parcurg următorii pași:
1. Se va crea o nouă pagină Analiza comparativa;
2. Se selectează din meniu, opțiunea Settings|Document Properties și se
activează tab-ul Generate al ferestrei Document Properties;
3. Click pe butonul Alternate States și apare următoarea fereastră (figura
5.22):

Figura 5.22. Fereastra Alternate States

4. Click pe butonul Add și se introduce Grupa A în fereastra New State


Name;
5. Apoi se va crea cealaltă stare și anume, Grupa B;
6. Aceste două stări vor fi utilizate pentru a salva două seturi de date diferite
pe care dorim să le analizăm;
7. Avem următoarele liste: Regiune, Denumire. Se va crea un container cu
aceste liste;

89
Mihaela Muntean, Ana-Ramona Bologa
Business Intelligence. Teorie și practică, editura ASE, 2015,
ISBN 978-606-505-858-3
8. Se deschide fereastra de proprietăți pentru container. Din tab-ul General,
se selectează Grupa A în caseta Alternate State. Această casetă este
valabilă, dacă facilitatea Alternate States a fost activată, prin definirea unei
stări alternative în fereastra Document Properties (figura 5.23);
9. Se introduce ca titlu al containerului Regiuni-Grupa A;
10. Se copiază containerul prin copierea lui în clipboard și apoi opțiunea Paste
Sheet Object;
11. Pentru containerul copie, titlul este Regiuni-Grupa B și starea alternativă:
Grupa B;
12. După aranjarea celor două containere, avem următorul rezultat (figura
5.24) ;

Figura 5.23. Fereastra Container Properties

Se va crea un grafic de tip bară pentru a vizualiza cele două seturi de date:
1. Se copiază listele AN, TRIMESTRU din pagina Dashboard în pagina
Analiza comparativa;
2. Se va crea graficul de tip bară, titlu graficului: Grupa A versus Grupa B.
Caseta Show Title in chart nu este selectată. Se alege dimensiunea AN;
3. Se vor crea două expresii:
 Expresia 1: sum({[Grupa A]*$}[OP_VENITURI]), eticheta Grupa A;
 Expresie 2: sum({[Grupa B]*$}[OP_VENITURI]), eticheta Grupa B;

90
Mihaela Muntean, Ana-Ramona Bologa
Business Intelligence. Teorie și practică, editura ASE, 2015,
ISBN 978-606-505-858-3
Se utilizează operatorul de intersecție a două seturi de date (*). Expresia
corespunzătoare grupului A este: Sum({[Grupa A]*$}[OP_VENITURI])
stabilește setul de date utilizat pentru calcule, și anume, selecțiile făcute de
starea alternativă Grupa A și selecțiile făcute de starea implicită.
4. În tab-ul Axes, se selectează butonul Primary Dimension Labels:
orientare pe diagonală;
5. În tab-ul Number, se setează pentru ambele expresii formatul: Fixed 2
decimals .

Figura 5.24. Cele doua containere

Utilizarea stărilor alternative poate crea confuzie utilizatorilor finali. De aceea,


este important de a eticheta corespunzător obiectele care utilizează stări alternative
și de a utiliza obiecte de tip “selecție curentă”. Se vor crea două obiecte de tip
“selecție curentă” pe care le vom asocia celor două stări. În fereastra de proprietăți,
tab-ul General, în caseta Alternate state se selectează: Grupa A sau Grupa B. În
figura de mai jos, se afișează comparativ veniturile obținute în regiunea “America
Latina” față de veniturile obținute în regiunea “Intern”, în 2010. Lista AN nu a fost
asociată stărilor alternative create. Selecția AN=2010 se aplică la ambele stări
alternative, deși observăm ca în obiectele de tip “selecție curentă” nu apare și
selecția AN=2010.
Când utilizăm operatorul de intersecție, trebuie să fim atenți să nu apară
conflicte între selecțiile făcute de starea implicită și selecțiile făcute de starea

91
Mihaela Muntean, Ana-Ramona Bologa
Business Intelligence. Teorie și practică, editura ASE, 2015,
ISBN 978-606-505-858-3
alternativă. În locul operatorului de intersecție putem utiliza funcția P(). Funcția P()
utilizează toate valorile posibile ale unui atribut.

Figura 5.25. Utilizarea stărilor alternative

92
Mihaela Muntean, Ana-Ramona Bologa
Business Intelligence. Teorie și practică, editura ASE, 2015,
ISBN 978-606-505-858-3
Figura 5.26. Utilizarea funcției P() cu stările alternative

Se va utiliza funcția P() în expresii:


Grupa A: sum({[Grupa A]<AN=p(AN), TRIMESTRU=p(TRIMESTRU)>}
[OP_VENITURI])
Grupa B: sum({[Grupa B]<AN=p(AN), TRIMESTRU=p(TRIMESTRU)>}
[OP_VENITURI])
Expresiile precedente vor lua în considerare numai selecțiile făcute pe atributele
AN și TRIMESTRU (starea implicită a documentului) și le adaugă la toate selecțiile
făcute de stările alternative. Selecțiile făcute pe celelalte câmpuri care nu apar în
stările alternative, nu sunt luate în considerare (figura 5.26).
Butonul Clear din bara de butoane se utilizează pentru a anula toate selecțiile.
Totuși este posibil de a anula selecțiile dintr-o anumită stare, fără a afecta alte stări,
prin utilizarea opțiunii Clear Specific State (figura 5.27).

Figura 5.27. Opțiunea Clear Specific State

5.1.2.6. Utilizarea funcției AGGR()


Funcția de agregare AGGR():
 permite agregarea datelor utilizând un set de dimensiuni;
 poate fi utilizată în expresii și dimensiuni;
93
Mihaela Muntean, Ana-Ramona Bologa
Business Intelligence. Teorie și practică, editura ASE, 2015,
ISBN 978-606-505-858-3
 poate fi utilizată cu alte funcții de agregare;
 poate fi utilizată pentru a defini o dimensiune calculată.
De exemplu, dacă dorim să afișăm veniturile după an, regiune și categorie,
utilizăm următoarea expresie: Aggr(sum(OP_VENITURI), AN, Regiune,
Categorie). Se va crea o tabelă de tip “straight” cu trei dimensiuni: AN, Regiune,
Categorie și următoarele expresii: sum(OP_VENITURI) și
Aggr(sum(OP_VENITURI), AN, Regiune, Categorie). Se observă că rezultatele
celor două expresii sunt similare. Funcția aggr() este similară cu clauza GROUP
BY a comenzii SELECT-SQL:
SELECT AN, Regiune , sum(OP_VENITURI) From tabela Group by AN, Regiune,
Categorie;

Rezultatul:

Pentru a afișa și veniturile totale obținute pe fiecare regiune, se va crea


următoarea expresie: aggr(sum(OP_VENITURI) ,AN,Regiune).
Pentru a afișa veniturile maxime obținute pe fiecare regiune, se va crea
următoarea expresie: max(total<AN, Regiune> aggr(sum(OP_VENITURI)
,AN,Regiune,Categorie)).
Observăm că se utilizează funcții de agregare “imbricate”. Rezultatul funcției
aggr() va fi utilizat de funcția max().

Rezultatul:

94
Mihaela Muntean, Ana-Ramona Bologa
Business Intelligence. Teorie și practică, editura ASE, 2015,
ISBN 978-606-505-858-3

Funcția aggr() se poate utiliza și pentru a defini o dimensiune calculată. De


exemplu, dorim să afișăm primele trei companii care contribuie cu mai mult de
10% la veniturile categoriei din care fac parte. Avem două liste: Regiune, An. Se va
crea o tabelă pivot cu două dimensiuni: Categorie și o dimensiune “calculată”,
precum și expresia sum (OP_VENITURI). Definiția dimensiunii calculate este
(figura 5.28) :
=AGGR (IF (Rank (sum (OP_VENITURI), 4) <=3 and sum (OP_VENITURI)
>0.1*sum (Total <Categorie> OP_VENITURI), Denumire), Categorie, Denumire)

unde expresia Sum(TOTAL<Categorie> OP_VENITURI) returnează veniturile


operaționale la nivel de categorie.

Rezultatul:

Se observă că se afișează primele trei companii care contribuie cu mai mult de


10% la veniturile categoriei din care fac parte, în anul 2012 (selecția curentă).

95
Mihaela Muntean, Ana-Ramona Bologa
Business Intelligence. Teorie și practică, editura ASE, 2015,
ISBN 978-606-505-858-3

Figura 5.28. Definirea unei dimensiuni calculate

5.1.2.7. Fișiere (qvt)


Un fișier (qvt)-(theme layout file) este un fișier XML care conține informații
despre proprietățile de formatare ale unui document/pagina/obiect și anume:
 Culorile (fundal, titlu, transparență, etc);
 Fonturi (culoare, tip, dimensiune, direcție, etc);
 Mod de prezentare (tip bordură, lățime bordură, lățime bară de defilare, tip
axe, etc);
 Proprietăți specifice graficelor.
Fișierul (qvt) conține secțiuni separate pentru fiecare document, pagină și
obiecte ale paginii. Pentru fiecare dintre aceste obiecte, sunt stocate proprietățile
specifice, precum și proprietăți de formatare a bordurilor, setări de tipărire, etc.
Figura 5.29. prezintă structura unui fișier (qvt). Se observă ca există o secțiune
separată pentru fiecare tip de obiect.
În folderul C:\Program Files\QlikView\Themes există deja create astfel de
fișiere care pot fi utilizate sau modificate. Pentru a asocia un astfel de fișier, unei
pagini, se parcurg următorii pași:

96
Mihaela Muntean, Ana-Ramona Bologa
Business Intelligence. Teorie și practică, editura ASE, 2015,
ISBN 978-606-505-858-3
1. Se selectează din meniu, opțiunea Settings|Sheet Properties și se alege
tab-ul General, din fereastra Sheet Properties;
2. Click pe butonul Apply Theme și se selectează fișierul clementine.qvt din
folderul C:\Program Files\QlikView\Themes;
3. Se vor modifica culorile, setările pentru titlu, fonturile (figura 5.30).

Secțiune Proprietăți
document document

Fișier (QVT) Secțiune Proprietăți


pagină pagină

Secțiune Proprietăți
obiecte obiecte

Proprietăți pentru
bordură/titlu

Proprietăți
pentru tipărire

Figura 5.29. Structura unui fișier (qvt)

Un fișier (qvt) este creat utilizând opțiunea Theme Maker Wizard și poate
conține setări pentru mai multe obiecte/un singur obiect/tot documentul. Un fișier
(qvt) se poate aplica:
 unui document (din meniu opțiunea Settings|Document properties, click
pe butonul Apply theme din tab-ul Layout);
 unui singur obiect (sau grup de obiecte, dacă sunt selectate). Click cu
butonul dreapta al mouse-ului pe obiect, se selectează opțiunea Properties
din meniul asociat, click pe butonul Apply Theme, din tab-ul Layout.

Crearea unui fișier (qvt) pentru un document implică mulți pași repetitivi. Se
parcurg următorii pași:
1. Se deschide fișierul Executive Dashboard.qvw din folderul C:\Program
Files\QlikView\examples/documents\ (figura 5.31);
2. Din meniu se selectează opțiunea Tools|Theme Maker Wizard;
3. Click pe butonul Next și se deschide fereastra Step 1-Select theme file;
4. Se selectează butonul radio New Theme si template=<None>;

97
Mihaela Muntean, Ana-Ramona Bologa
Business Intelligence. Teorie și practică, editura ASE, 2015,
ISBN 978-606-505-858-3
5. Click pe butonul Next. Se va deschide o fereastra de dialog pentru a salva
fișierul cu denumirea analiza.qvt;

Figura 5.30. Utilizarea unui fișier (qvt)

98
Mihaela Muntean, Ana-Ramona Bologa
Business Intelligence. Teorie și practică, editura ASE, 2015,
ISBN 978-606-505-858-3

Figura 5.31. Crearea unui fișier (qvt)


6. În fereastra Step 2-Source selection, se selectează din lista Source:
Document , apoi click butonul Next;
7. În fereastra Step 3a- Object Type specific properties, se vor bifa casetele
de validare: Color Map, Document Background, Tabrow, Custom
selection Color, Sheet Object style, Tabrow style (setări pentru fundalul
paginii, stilurile obiectelor din pagini, etc.);
8. În funcție de obiectul ales, fereastra va afișa proprietățile pe care le putem
exporta în fișier;
9. Click pe butonul Finish. Fișierul (qvt) creat poate fi aplicat documentului
curent sau tuturor documentelor nou create (fereastra step 5-Save theme)
(figura 5.32).

99
Mihaela Muntean, Ana-Ramona Bologa
Business Intelligence. Teorie și practică, editura ASE, 2015,
ISBN 978-606-505-858-3

Figura 5.32. Fereastra Save Theme

Se poate modifica fișierul (qvt) asociat documentului curent, prin selectarea din
meniu, a opțiunii Settings|Document Properties și în tab-ul Presentation, din
caseta Default Theme for New Objects se alege un alt fișier (qvt).
Se vor adăuga, în fișier, proprietățile paginii:
1. Se deschide fișierul analiza.qvw. Din meniu, se selectează opțiunea
Tools|Theme Maker Wizard;
2. Click pe butonul Next și se deschide fereastra Step 1 - Select Theme file.
Se selectează butonul radio Modify Existing Theme și se alege fișierul
analiza.qvt. Click pe butonul Next;
3. În fereastra Step 2-source selection, din caseta Source se selectează
pagina Dashboard (SH01-Dashboard). Click pe butonul Next;
4. În fereastra Step 3a-Object type specific properties, se bifează și casetele
Color Map și Sheet Zoom, apoi click pe butonul Next (figura 5.33);
5. Click pe butonul Finish.

100
Mihaela Muntean, Ana-Ramona Bologa
Business Intelligence. Teorie și practică, editura ASE, 2015,
ISBN 978-606-505-858-3

Figura 5.33. Fereastra Object Type specific properties

Se vor adăuga proprietățile obiectelor. Se va alege un singur obiect, de exemplu


lista AN:
1. Din meniu, se selectează opțiunea Tools|Theme Maker Wizard. Click pe
butonul Next;
2. În pagina Step 1-Select theme file, se selectează butonul radio Modify
Existing Theme și apoi se selectează fișierul analiza.qvt. Apoi click pe
butonul Next;
3. În pagina Step 2-Source selection, se selectează lista AN (Object
ID=LB02). Se bifează cele trei casete de validare: Object type specific,
Caption Border, Print settings. Click pe butonul Next;
4. În fereastra Step 3a-object type specific properties, se păstrează setările
implicite. Click pe butonul Next;
5. În fereastra Step 3b-Caption and border settings, se pot selecta
proprietățile pentru borduri/titlu. Se bifează și caseta Show Caption
(figura 5.34);
6. Click pe butonul Next, se deschide fereastra Step 3c-Printer settings. Nu
se modifică nimic;
7. Click pe butonul Next și se deschide fereastra Step 4-Insertion of the
properties in theme (figura 5.35). Se specifică și alte obiecte pentru care
dorim să aplicăm setările specificate în ferestrele Caption&Border
settings și Printing settings. În coloana Caption&Border se vor bifa, de
exemplu, casetele pentru: buton, obiect de tip linie/săgeată, slider/calendar,
container, grafic și obiect pentru căutare. Nici unul dintre aceste obiecte nu
utilizează în mod implicit un titlu (caption). În coloana Printing, se bifează
casetele pentru toate obiectele;
8. Apoi click pe butonul Next și apoi pe butonul Finish. Fișierul (qvt) creat îl
vom aplica paginii Dashboard.

101
Mihaela Muntean, Ana-Ramona Bologa
Business Intelligence. Teorie și practică, editura ASE, 2015,
ISBN 978-606-505-858-3

Figura 5.34. Fereastra Caption and border settings

Figura 5.35. Fereastra Insertion of properties in theme

5.1.2.8. Triggeri/declanșatori
Triggerii pot fi definiți la nivel de document, de câmp și de variabilă. Pentru a
defini un trigger se utilizează din meniu, opțiunea Settings|Document
102
Mihaela Muntean, Ana-Ramona Bologa
Business Intelligence. Teorie și practică, editura ASE, 2015,
ISBN 978-606-505-858-3
Properties|tab-ul Triggers (figura 5.36). De exemplu, se va crea un trigger care se
va declanșa la deschiderea documentului și va selecta din lista AN, anul 2012:
1. Din meniu se selectează opțiunea Settings|Document properties|tab-ul
Triggers;
2. Se selectează din lista Document Event triggers: On Open;
3. Click pe butonul Add action și se deschide fereastra Action. Click pe
butonul Add;
4. În fereastra Add Action se selectează din lista Action: Select in Field.
Apoi, click pe butonul OK;
5. În fereastra Action, se tastează în caseta Field: AN ;
6. În caseta Search string se tastează: 2012;
7. Click pe butonul OK. Se observă că triggerul On Open Document Event
are asociată o acțiune (<Has action(s)>). Click pe butonul OK pentru a
închide fereastra Document Properties;
8. În lista AN se selectează 2000;
9. Se salvează documentul, apoi se închide;
10. Se redeschide documentul.

Figura 5.36. Definirea unui trigger

103
Mihaela Muntean, Ana-Ramona Bologa
Business Intelligence. Teorie și practică, editura ASE, 2015,
ISBN 978-606-505-858-3
Triggerul OnOpen se declanșează la deschiderea documentului, se șterg toate
selecțiile și apoi se selectează anul 2012 (figura 5.37, figura 5.38). Se pot defini
triggeri la nivel de atribute și variabile (tabelul 5.4).

Tabelul 5.4. Tipuri de triggeri


Tip trigger Denumire trigger Este declanșat când:
La nivel de OnAnySelect se face o selecție
document OnOpen documentul este deschis.
OnPostReduceData comanda Reduce Data este folosită
OnPostReload documentul este reîncărcat
La nivel de OnSelect se face o selecție
câmp OnChange selecția curentă este modificată
OnLock câmpul este blocat
OnUnlock câmpul este deblocat
La nivel de OnInput se introduce o nouă valoare pentru
variabilă variabilă (de exemplu, într-o caseta
pentru introducere date)
OnChange valoarea variabilei este modificată
datorită unor modificări în alte
variabile sau a stării de selecție

104
Mihaela Muntean, Ana-Ramona Bologa
Business Intelligence. Teorie și practică, editura ASE, 2015,
ISBN 978-606-505-858-3
Figura 5.37. Selecțiile salvate în document

Figura 5.38. Redeschiderea documentului și declanșarea trigger-ului

Triggerii la nivel de pagină se pot defini cu ajutorul opțiunii Settings|Sheet


Properties|tab-ul Triggers. Se pot defini două evenimente (figura 5.39):
 OnActivateSheet: când pagina este activată;
 OnLeaveSheet : când pagina este dezactivată (altă pagină este selectată);

Figura 5.39. Fereastra Sheet properties|tab-ul Triggers

În figura 5.40 sunt afișate tipurile de acțiuni care pot fi asociate cu triggerii.

105
Mihaela Muntean, Ana-Ramona Bologa
Business Intelligence. Teorie și practică, editura ASE, 2015,
ISBN 978-606-505-858-3

Figura 5.40. Tipuri de acțiuni

Fiecare obiect are asociat un ID. Acest ID va fi utilizat atunci când se definesc
acțiuni. Tabelul 5.5 prezintă câteva exemple de categorii de acțiuni, precum și
acțiunile asociate fiecărei categorii.

Tabelul 5.5. Categorii de acțiuni


Categorie Acțiuni Descriere
acțiune
Selection Select in field Selectează valorile din câmpul specificat
Select excluded Selectează valorile excluse (culoarea gri) din
câmpul specificat
Select possible Selectează valorile posibile (culoarea albă) din
câmpul specificat
Clear field Anulează selecțiile din câmpul specificat
Clear all Anulează toate selecțiile
Layout Activate object Activează obiectul specificat
Activate sheet Activează pagina specificată
Activate next Activează pagina din dreapta paginii curente
sheet
Minimize Object Minimizează obiectul specificat
Maximize Maximizează obiectul specificat
Object
Restore Object
Restaurează obiectul specificat
Set state name
Asociază o anumită stare obiectului specificat
(atunci când sunt definite stări alternative)
Bookmark Apply bookmark Aplică bookmark-ul specificat
Create Creează un bookmark utilizând selecția curentă
bookmark
106
Mihaela Muntean, Ana-Ramona Bologa
Business Intelligence. Teorie și practică, editura ASE, 2015,
ISBN 978-606-505-858-3
Replace Înlocuiește bookmark-ul specificat cu selecția
bookmark curentă
External Export Bazându-se pe selecțiile curente, exportă date din
câmpurile specificate, într-un fișier/clipboard
Launch Lansează o aplicație
Open URL Deschide un URL în browserul Web implicit
Close this Închide documentul curent
document
Reload Reîncarcă documentul curent

5.1.2.9. Alerte
O alertă poate fi declanșată de trei evenimente: la deschiderea unui document, la
reîncărcarea datelor sau după utilizarea comenzii Reduce Data (elimină valorilor
excluse din document). Alertele pot afișa un mesaj sau pot trimite un e-mail la mai
multe adrese [Redmond, 2013], [Qlikview, 2010], [Qlikview, 2011b].
Se va crea o alertă care va afișa următorul mesaj: “Numărul de companii al
căror profit net anual este pozitiv:” și se vor afișa și denumirile acestor companii.
Se va combina căutarea complexă cu un bookmark și o alertă. Se parcurg următorii
pași:
1. Se selectează opțiunea Advanced Search pentru lista AN. Se introduce
următorul criteriu de căutare: =sum(TOTAL <Denumire, AN>
NETPROFIT)>0;
2. Se va crea un bookmark cu denumirea Companii cu profit anual>0 ;
3. Se selectează din meniu opțiunea Tools|Alerts;
4. Click pe butonul Add;
5. În caseta Description se introduce textul Alerta;
6. Se selectează din caseta Bookmark, bookmark-ul creat anterior;
7. În caseta Condition se introduce expresia: =Count(distinct Denumire) >0;
8. În caseta Message se introduce următorul text: ='Număr de companii al
căror profit anual >0= ' & Count(Distinct Denumire) & chr(13) &
'Companii: ' & Concat(Denumire, ', ') ;
9. Se activează evenimentele OnOpen, OnPostReload și On Post Reduce;
10. Click pe butonul OK pentru a închide fereastra;
11. Se salvează documentul, apoi se închide;
12. Se redeschide documentul (figura 5.41);
Fiecare alertă are un ID unic, o casetă de validare Enable/Disable, un câmp
Description (figura 5.42). Alertele pot fi adăugate sau șterse din listă, prin
utilizarea butoanelor Add/Remove. În caseta Condition se specifică condiția care
va fi testată. Implicit această condiție este testată pentru selecțiile curente. Se poate
testa pentru toate datele din document (se bifează caseta All Clear) sau se specifică
un bookmark creat anterior. Se poate stabili momentul declanșării unei alerte prin
selectarea din caseta Trigger level a opțiunilor: Always (alerta se declanșează
107
Mihaela Muntean, Ana-Ramona Bologa
Business Intelligence. Teorie și practică, editura ASE, 2015,
ISBN 978-606-505-858-3
atunci când condiția este îndeplinită), Message Changes (alerta se declanșează
atunci când mesajul sau subiectul(mail subject) este modificat), State Changes
(alerta este declanșată numai dacă își modifică starea). Figura 5.42 prezintă
momentul declanșării alertei.

Figura 5.41. Crearea unei alerte

Pagina Dashboard, în forma finală, este prezentata în figura 5.43. S-au făcut
următoarele modificări:
 Pentru listele AN și Trimestru, caseta Order by column (tab-ul
Presentation) nu este selectată;
 S-au creat și butoanele Back și Forward;
 S-a creat un obiect de tip text box și s-a încărcat în fundal o imagine
avion.png (butonul Image din tab-ul General);
 Pentru tabelele de tip pivot/”straight”, caseta Show Caption, din tab-ul
Caption, nu este selectată ;
 S-au schimbat simbolurile pentru partea zecimală (,) și pentru mii (.),
pentru toate obiectele. Pentru obiectele de tip text box, expresiile din caseta
Text, tab-ul General, s-au modificat astfel:
=num(avg(MGT), '##0,00')
=num(sum(NETPROFIT),'#.##0,00')
 Pentru lista Categorie, în tab-ul Presentation, s-a bifat caseta Wrap Cell
Text, Height=2;

108
Mihaela Muntean, Ana-Ramona Bologa
Business Intelligence. Teorie și practică, editura ASE, 2015,
ISBN 978-606-505-858-3

Figura 5.42. Declanșarea alertei

109
Mihaela Muntean, Ana-Ramona Bologa
Business Intelligence. Teorie și practică, editura ASE, 2015,
ISBN 978-606-505-858-3

Figura 5.43. Pagina Dashboard

5.1.2.10. Analiza datelor utilizând diferite perioade de


timp
Timpul este foarte important în analiză. De exemplu, în analiza vânzărilor,
dorim să comparăm [Garcia, 2012]:
 vânzările din luna curentă cu vânzările din luna anterioară;
 vânzările din anul curent cu vânzările din anul anterior;
 vânzările din trimestrul 1, anul curent, cu vânzările din trimestru 1, anul
anterior, etc.
Pentru a realiza aceste tipuri de analize, se va utiliza documentul exemplu.qvw.
Se va modifica scriptul pentru generarea tabelei logice Timp astfel:
 se va asigna pentru fiecare combinație An&Luna și An&Trimestru, un ID
unic utilizând funcția Autonumber();
 fiecare dată calendaristică va fi asociată cu un număr întreg, utilizând
funcția FLOOR();
Let varMinDate = Num(Peek('Data',0,'Vanzari'));
Let varMaxDate = Num(Peek('Data',-1,'Vanzari'));
TempTimp:
Load

110
Mihaela Muntean, Ana-Ramona Bologa
Business Intelligence. Teorie și practică, editura ASE, 2015,
ISBN 978-606-505-858-3
date($(varMinDate) + rowno()-1) As TempData
Autogenerate
$(varMaxDate)-$(varMinDate) + 1;
Timp:
LOAD *,
Floor(Data) as DataID,
autonumber(An&Luna, 'LunaID') as LunaID,
autonumber(An&Trimestru, 'TrimestruID') as TrimestruID;
Load
TempData As Data,
Week(TempData) As Saptamana,
Month(TempData) As Luna,
Year(TempData) As An,
Week (TempData) & '-'& Year(TempData)as SaptamanasiAn,
WeekDay(TempData) as denumire_zi,
WeekStart(TempData, 0, 0) AS prima_zi_sapt,
WeekEnd(TempData, 0, 0) AS ultima_zi_sapt,
Weekyear(TempData) as anul_pt_sapt,
Month(TempData) & '-' &Year(TempData) AS LunasiAn,
MonthStart(TempData) as prima_zi_luna,
MonthEnd(TempData) as ultima_zi_luna,
'Trim' &Ceil(Month(TempData)/3) AS Trimestru,
QuarterStart(TempData) as prima_zi_trim,
QuarterEnd(TempData) as ultima_zi_trim,
YearEnd(TempData) as ultima_zi_an,
DayNumberOfYear(TempData) as numartotalzile
resident TempTimp
ORDER BY TempData ASC;
DROP TABLE TempTimp;

Pentru a crea câmpurile DataID, TrimestruID și LunaID, s-a utilizat o comandă


“preceding” (precedent) LOAD care preia date din următoarea comandă
LOAD/SELECT din script. Este un fel de: LOAD FROM (LOAD FROM sursa)
și se utilizează frecvent în transformări și filtrări de date, simplificând și sintaxa
scriptului. De exemplu, în următorul script, comanda SELECT-SQL se execută
prima. Rezultatul cererii SQL va fi utilizat apoi, de comanda LOAD care precede
comanda SELECT. În acest caz, comanda LOAD nu utilizează clauza FROM
/RESIDENT:

Tabela:
LOAD Codclient, today (1) as LoadData;
SQL SELECT CodClient, NumeClient FROM `D:\qlikview\clienti.accdb`.Clienti;

111
Mihaela Muntean, Ana-Ramona Bologa
Business Intelligence. Teorie și practică, editura ASE, 2015,
ISBN 978-606-505-858-3
Se va utiliza Qlikview Set Analysis. Se vor crea trei liste: An, Trimestru, Luna
și o tabelă pivot cu dimensiunea Oras și expresia sum(Vanzarea).

Rezultatul:

Să presupunem că utilizatorul dorește să compare vânzările din: An=2013,


Trimestru=Trim2, Luna=Iunie cu vânzările din luna anterioară (în cazul nostru,
luna mai). Se va crea o nouă expresie de forma: sum({$<LunaID
={$(=max(LunaID)-1)}> } Vanzarea). Această expresie va returna 0, deoarece
valoarea pe care o dorim (adică luna mai) este exclusă din selecția curentă a
utilizatorului. Utilizatorul a selectat doar luna iunie. Din acest motiv, vom ignora
selecțiile făcute de utilizator pentru atributul Luna. Expresia se modifică astfel:
sum({$<LunaID ={$(=max(LunaID)-1)}, Luna=> } Vanzarea) și va avea eticheta
Luna anterioara, unde <Luna= > va returna setul de date pentru toate lunile
valabile, mai puțin cele excluse de altă selecție și apoi se va asigna valoarea dorită
(5) la câmpul LunaID, pentru a returna numai datele din luna mai.

Rezultatul:

112
Mihaela Muntean, Ana-Ramona Bologa
Business Intelligence. Teorie și practică, editura ASE, 2015,
ISBN 978-606-505-858-3

Dacă utilizatorul selectează An=2013, Trimestru=Trim2, Luna=Aprilie.


Expresia de mai sus returnează vânzările din luna martie? Răspunsul este nu.
Deoarece luna aprilie nu este selectată și nu face parte din trimestru 2, deci este
exclusă din selecții.

Rezultatul:

Expresia se va modifica astfel:


sum({$<LunaID ={$(=max(LunaID)-1)}, Trimestru=,Luna=> } Vanzarea)
unde <Trimestru=, Luna=> înseamnă toate trimestrele și toate lunile valabile

Rezultatul:

113
Mihaela Muntean, Ana-Ramona Bologa
Business Intelligence. Teorie și practică, editura ASE, 2015,
ISBN 978-606-505-858-3

Să presupunem că selecția curentă este: An=2013, Trimestru=Trim1,


Luna=Ianuarie. Dacă dorim să afișăm vânzările din luna anterioară (Decembrie
2012), expresia se modifică astfel:
sum({$<LunaID ={$(=max(LunaID)-1)}, An=, Trimestru=,Luna=> } Vanzarea)
Se vor ignora selecțiile din listele An, Trimestru și Luna. În tabela pivot se vor
adăuga următoarele expresii:

Vânzările de acum două luni


sum({$<LunaID ={$(=max(LunaID)-2)}, An=,Trimestru=,Luna=> } Vanzarea)

Vânzările din aceeași lună, anul anterior


sum({$<LunaID ={$(=max(LunaID)-12)}, An=,Trimestru=,Luna=> } Vanzarea)

Vânzările din luna curentă versus luna anterioară (se va afișa procentual)
=(sum(Vanzarea)-sum({$<LunaID ={$(=max(LunaID)-1)},
An=,Trimestru=,Luna=> } Vanzarea))/sum({$<LunaID ={$(=max(LunaID)-1)},
An=,Trimestru=,Luna=> } Vanzarea)

În tab-ul Presentation, se fac următoarele setări: se bifează caseta Show


Partial Sum pentru câmpul Oras; formatul pentru expresii este Fixed to 2
decimals, iar pentru ultima expresie se bifează și caseta Show in Percent (%). În
exemplu nostru, luna curentă este aprilie.

114
Mihaela Muntean, Ana-Ramona Bologa
Business Intelligence. Teorie și practică, editura ASE, 2015,
ISBN 978-606-505-858-3
Se pot utiliza și variabile cu parametri. Se deschide fereastra Variable
Overview și se creează o variabilă vSetLuna cu următoarea definiție:
LunaID ={$(=max(LunaID)-$1)}, An=,Trimestru=,Luna=
În definiția acestei variabile, s-a utilizat un parametru ($1) care va permite să
utilizăm aceeași variabilă pentru a afișa informații despre luna curentă
(parametru=0), luna anterioară (parametru=1), două luni anterioare (parametru=2),
etc.
Se va crea o tabelă de tip “straight” cu dimensiunea Oras și următoarele trei
expresii:
=sum({$<$(vSetLuna(0))>} Vanzarea), cu eticheta=Luna curentă
=sum({$<$(vSetLuna(1))>} Vanzarea), cu eticheta=Luna anterioară
=sum({$<$(vSetLuna(2))>} Vanzarea), cu eticheta=două luni anterioare

Rezultatul:

Următoarele expresii calculează vânzările pentru diferite perioade de timp


specificate:
YTD (Year To Date) este perioada cuprinsă între prima zi a anului curent și
data curentă. De exemplu, dorim să afișăm vânzările de la începutul anului 2012
până la 10.01.2012. Se vor crea listele: An, Trimestru, Luna și Data și o tabelă
pivot cu două dimensiuni: Oras și Data și expresia YTD:

115
Mihaela Muntean, Ana-Ramona Bologa
Business Intelligence. Teorie și practică, editura ASE, 2015,
ISBN 978-606-505-858-3
Sum({<An=, Luna=, Trimestru=, Data=,
DataID={">=$(=Num(YearStart(Max(DataID))))<=$(=Max(DataID))"}>}
Vanzarea)

sau
Sum({<An=, Luna=, Trimestru=,
Data={">=$(=YearStart(Max(Data)))<=$(=Max(Data))"}>} Vanzarea)

Funcția Yearstart() returnează prima zi din anul din care face parte data
specificată, în formatul implicit, precizat în scriptul de încărcare. În tab-ul
Presentation, din fereastra de proprietăți a tabelei pivot, se bifează caseta Show
Partial Sum pentru câmpurile Oras și Data. Formatul pentru expresie este Fixed
to 2 decimals. Dacă s-a selectat data 01/10/2012, atunci YTD este de la 01/01/2012
până la 01/10/2012. Se vor afișa vânzările detaliate pe zile, cu total pe orașe, pe zile
și pe perioada selectată.

Rezultatul:

116
Mihaela Muntean, Ana-Ramona Bologa
Business Intelligence. Teorie și practică, editura ASE, 2015,
ISBN 978-606-505-858-3

QTD (Quarter to Date) este perioada cuprinsă între prima zi a trimestrului


curent și data curentă. Înlocuim în expresie, funcția Yearstart() cu funcția
Quarterstart():
Sum({<An=, Luna=, Trimestru=,
Data={">=$(=QuarterStart(Max(Data)))<=$(=Max(Data))"}>} Vanzarea)

Rezultatul:

117
Mihaela Muntean, Ana-Ramona Bologa
Business Intelligence. Teorie și practică, editura ASE, 2015,
ISBN 978-606-505-858-3

În exemplul nostru, QTD este perioada de la 01/01/2012-02/10/2012. Dacă în


tabela pivot, înlocuim atributul Data cu atributul Luna, vânzările se vor afișa pe
luni, pentru perioada specificată.

Rezultatul:

MTD (Month to Date) este perioada cuprinsă între prima zi a lunii curente și
data curentă. Se utilizează expresia:
Sum({<An=, Luna=, Trimestru=, Data=,
DataID={">=$(=Num(MonthStart(Max(DataID))))<=$(=Max(DataID))"}>}
Vanzarea)
118
Mihaela Muntean, Ana-Ramona Bologa
Business Intelligence. Teorie și practică, editura ASE, 2015,
ISBN 978-606-505-858-3
sau:
Sum({<An=, Luna=, Trimestru=,
Data={">=$(=MonthStart(Max(Data)))<=$(=Max(Data))"}>} Vanzarea)

Rezultatul:

În exemplul nostru, MTD este perioada cuprinsă între 02/01/2012 și 02/10/2012.

119
Mihaela Muntean, Ana-Ramona Bologa
Business Intelligence. Teorie și practică, editura ASE, 2015,
ISBN 978-606-505-858-3
WTD (week to date) este perioada cuprinsă între prima zi a săptămânii curente
și data curentă. Se utilizează expresia:
Sum({<An=, Luna=, Trimestru=, Data=,
DataID={">=$(=Num(WeekStart(Max(DataID))))<=$(=Max(DataID))"}>}
Vanzarea)
sau:
Sum({<An=, Luna=, Trimestru=,
Data={">=$(=WeekStart(Max(DataID)))<=$(=Max(DataID))"}>} Vanzarea)

Rezultatul:

120
Mihaela Muntean, Ana-Ramona Bologa
Business Intelligence. Teorie și practică, editura ASE, 2015,
ISBN 978-606-505-858-3
Vânzările din trimestru anterior:
Sum({$<TrimestruID = {$(=Max(TrimestruID) – 1)}, An = , Trimestru =, Luna=
>} Vanzarea)
Vânzările din același trimestru, anul anterior:
sum({$<TrimestruID={$(=max(TrimestruID)-
4)},An=,Trimestru=,Luna=>}Vanzarea)

Rezultatul:

Vânzările din anul anterior versus anul selectat


Pentru anul curent selectat (adică pentru 2013):
Sum({<An= {$(=max(An))}, Trimestru=, Luna=>}Vanzarea)

121
Mihaela Muntean, Ana-Ramona Bologa
Business Intelligence. Teorie și practică, editura ASE, 2015,
ISBN 978-606-505-858-3
Pentru anul anterior (adică pentru 2012, indiferent de selecțiile din listele
Trimestru, Luna):
Sum({<An= {$(=max(An)-1)}, Trimestru=, Luna=>}Vanzarea)

Rezultatul:

Putem utiliza stările alternative pentru a compara două perioade de timp. Vom
crea două stări: Perioada A și Perioada B. De asemenea, vom crea două containere
ce includ listele An, Luna și Oras și care se vor asocia cu cele două stări. Vom crea
apoi, un grafic de tip combo box cu dimensiunea Luna și următoarele expresii la
care asociem cele două stări definite:
sum({[Perioada A]}Vanzarea) cu eticheta Perioada A
sum({[Perioada B]}Vanzarea) cu eticheta Perioada B
sum({[Perioada A]}Vanzarea) -sum({[Perioada B]}Vanzarea) cu eticheta
Diferența
Se deschide fereastra de proprietăți pentru grafic. În tab-ul Expression, se
bifează caseta Line pentru primele două expresii și pentru ultima expresie, caseta
Box și caseta Value on Data Points. În tab-ul Number, se bifează caseta Fixed to
2 decimals pentru toate expresiile. Se vor modifica și separatorii pentru partea
zecimală (,) și pentru mii (.). În figura de mai jos se afișează vânzările din lunile
122
Mihaela Muntean, Ana-Ramona Bologa
Business Intelligence. Teorie și practică, editura ASE, 2015,
ISBN 978-606-505-858-3
ianuarie, februarie și martie 2013 comparativ cu vânzările din anul 2012, aceleași
luni, dar numai pentru orașul Cluj, precum și diferența lunară. Rezultatele depind
numai de cele două stări alternative, fiind independente de starea implicită (figura
5.44). Daca nu se fac selecții în cele două containere, se va afișa o singură linie,
adică cele două grafice sunt suprapuse.
Sau se pot crea doua grafice de tip linie pentru care se vor face următoarele
setări:
 În tab-ul General, se bifează caseta Show title in chart și se selectează din
caseta Alternate State: Perioada A/Perioada B;
 Se stabilește titlul ferestrei (Window title): ='Analiza
comparativa:'&statename()
 Se alege ca dimensiune câmpul Luna;
 Expresia utilizată este sum(Vanzarea);

Rezultatul:

123
Mihaela Muntean, Ana-Ramona Bologa
Business Intelligence. Teorie și practică, editura ASE, 2015,
ISBN 978-606-505-858-3

Figura 5.44. Utilizarea stărilor alternative pentru a compara două perioade de timp

5.1.2.11. Formatul datelor


Qlikview acceptă numere, șiruri de caractere, date calendaristice, mărci de timp,
valute. Toate datele încărcate în documentul Qlikview sunt stocate ca șiruri de
caractere/numere:
 reprezentarea ca șiruri este utilizată în liste și alte obiecte;
 reprezentarea numerică este utilizată pentru toate calculele numerice și
pentru sortarea numerică.
124
Mihaela Muntean, Ana-Ramona Bologa
Business Intelligence. Teorie și practică, editura ASE, 2015,
ISBN 978-606-505-858-3

Încărcarea datelor cu formate implicite


Se consideră fișierul Data.csv:

Data,Valoare
3/31/14,690
5/26/14,999
7/11/14,759
8/14/14,759
10/6/14,759
11/14/14,859
12/13/14,700
1/14/13,810
2/10/13,"1,810"
3/14/13,810
4/20/13,"2,810"
5/17/13,"1,000"
7/30/13,"1,090"
Formatul implicit pentru data calendaristică este M/D/YYYY și se utilizează
separatorul (,) pentru mii. În scriptul de încărcare există următoarele setări
implicite:
SET ThousandSep=',';
SET DecimalSep='.';
SET MoneyThousandSep=',';
SET MoneyDecimalSep='.';
SET MoneyFormat='$#,##0.00;($#,##0.00)';
SET TimeFormat='h:mm:ss TT';
SET DateFormat='M/D/YYYY';
SET TimestampFormat='M/D/YYYY h:mm:ss[.fff] TT';
SET MonthNames='Jan;Feb;Mar;Apr;May;Jun;Jul;Aug;Sep;Oct;Nov;Dec';
SET DayNames='Mon;Tue;Wed;Thu;Fri;Sat;Sun';

Aceste setări sunt preluate din setările regionale ale calculatorului (de exemplu,
în Windows 7, opțiunea Control panel |Clock, Language and Region). Se vor
încărca datele din fișierul data.csv și apoi se va crea o listă pentru câmpul Data. Se
observă modul în care au fost încărcate datele calendaristice.
Rezultatul:

125
Mihaela Muntean, Ana-Ramona Bologa
Business Intelligence. Teorie și practică, editura ASE, 2015,
ISBN 978-606-505-858-3

Încărcarea datelor cu formate diferite


Se consideră următoarele date în fișierul data.csv:

Data,Valoare
31/03/14,690
26/05/14,999
11/07/14,759
14/08/14,759
14/11/14,859
13/12/14,700
20/04/14,"1,810"
17/05/14,"1,000"
Se consideră că valorile câmpului Data au formatul DD/MM/YYYY. Se vor
încărca datele în documentul QlikView. Observăm că unele date nu au fost
recunoscute ca fiind date valide (sunt aliniate stânga). Formatul implicit este
M/D/YYYY (SET DateFormat='M/D/YYYY';)

Rezultatul:

Putem schimba formatul de dată:


 din Control panel;
126
Mihaela Muntean, Ana-Ramona Bologa
Business Intelligence. Teorie și practică, editura ASE, 2015,
ISBN 978-606-505-858-3
 din script, utilizând comanda: SET DateFormat='DD/MM/YYYY';
 sau se utilizează funcția Date# și se modifică scriptul astfel:

Data:
LOAD date#(Data, 'DD/MM/YYYY') as Data, Valoare
FROM surse\data.csv (txt, codepage is 1252, embedded labels, delimiter is ',',
msq);

Rezultatul:

După ce QlikView a interpretat datele ca valide, se poate modifica formatul de


afișare din fereastra de proprietăți, tab-ul Number:
1. Se bifează caseta Override Document settings pentru a seta un format
diferit pentru listă;
2. Se schimbă formatul la Date;
3. În caseta Format apare formatul implicit al sistemului de operare. Poate fi
schimbat (de exemplu, YYYY-MM-DD);
4. Se șterge ce este în caseta Format Pattern și se introduce noul format,
apoi click pe butonul ISO. Noul format a fost aplicat listei Data.

Rezultatul:

Dacă sursa de date conține date formatate diferit, de exemplu date cu format
M/D/YY și altele cu format DD/MM/YY și dorim să revenim la forma inițială,
127
Mihaela Muntean, Ana-Ramona Bologa
Business Intelligence. Teorie și practică, editura ASE, 2015,
ISBN 978-606-505-858-3
atunci trebuie executat din nou scriptul, cu caseta Survise Reload neselectată (din
meniu, opțiunea Document properties|tab-ul Number). Butonul Default from
Input, din tab-ul Number este valabil numai pentru baze de date (conectare prin
ODBC).

128

S-ar putea să vă placă și