Nel post precedente, ho descritto la “soluzione” proposta da Qlik al problema della gestione delle date fino a febbraio 2015. Dopo questa data, con la versione 1.1 di QlikSense, è stata introdotto un nuovo modo di gestire i campi data, eliminando la necessità di creare il Master Calendar.
Fine di tutti i problemi connessi con le date? Non esattamente.
Capiamo per prima cosa come funziona la nuova gestione delle date.
Mediante la procedura guidata di importazione dei dati, tutti i campi riconosciuti come date vengono derivati, vengono cioè dotati di attributi che permettono una gestione più semplice, senza aggiungere ulteriori campi o tabelle.
Non è più necessario preoccuparsi dei buchi di calendario nel front-end, basterà utilizzare la scala continua (presente però solamente negli istogrammi!).
In questo modo, viene risolto il problema relativo alla riduzione dei dati.
Volendo riproporre l’esempio del post precedente, se le colonne della serie in figura fossero le vendite di viti e bulloni di un’azienda, selezionando solo le viti il grafico non “perde” il mese di Agosto.
Quindi sono stati risolti tutti i problemi? Non esattamente.
E’ molto comune voler confrontare dati di un periodo (es. anno corrente) con quelli del periodo precedente (es. anno precedente), a questo scopo si utilizzano set analysis e set expressions, vincolando i dati visualizzati al periodo corrente o a quello precedente, il risultato è il seguente:
I valori in blu sono vincolati al periodo corrente, mentre quelli in rosso al periodo precedente, questo si può ottenere tranquillamente sia con il vecchio Master Calendar che con la più recente derivazione dei campi.
Se il risultato è il medesimo, il modo per ottenerlo è completamente diverso:
1. Sum({<Year={$(=max(Year)-1)}>} Valore)
2. Sum({<[Date.autoCalendar.YearsAgo]={1}>} Valore)
La prima riga di codice riguarda il Master Calendar, la formula è flessibile e restuisce l’anno precedente rispetto al più recente anno selezionato, in pratica si adatta a qualsiasi selezione effettuata dinamicamente.
La seconda riga invece si riferisce alla soluzione implementata con la versione 1.1 e successive di QlikSense, non vi è alcuna flessibilità, la scelta degli anni passati è fissa rispetto all’anno più recente presente nella serie di dati caricati (se l’anno più recente è il 2017, la formula vincola i dati al 2016).
Per chi proviene da Qlikview, abituato ai selettori di anni, mesi, trimestri in bella vista sui cruscotti, non si tratta di una limitazione di poco conto.
Attendiamo le future versioni per vedere risolta questa frustrante limitazione.