QlikView - Funzione Peek
Il peek() in QlikView viene utilizzata per recuperare il valore di un campo da un record precedente e utilizzarlo nei calcoli.
Dati in ingresso
Consideriamo la cifra delle vendite mensili come mostrato di seguito. Salvare i dati con il nome file mensile_sales.csv.
Month,Sales Volume
March,2145
April,2458
May,1245
June,5124
July,7421
August,2584
September,5314
October,7846
November,6532
December,4625
January,8547
February,3265
Carica script
I dati precedenti vengono caricati nella memoria di QlikView utilizzando l'editor di script. Apri l'Editor di script dal menu File o premiControl+E. Scegli ilTable Filesopzione da per il file contenente i dati di cui sopra. Modificare lo script di caricamento per aggiungere il codice seguente. ClicOK e fare clic Control+R per caricare i dati nella memoria di QlikView.
LOAD Month,
[Sales Volume],
peek('Sales Volume') as Prevmonth
FROM
[C:\Qlikview\data\monthly_sales.csv]
(txt, codepage is 1252, embedded labels, delimiter is ',', msq);
Creazione dell'oggetto foglio
Creiamo un file Table Boxoggetto di lavoro per mostrare i dati generati dallo script precedente. Vai alla voce di menuLayout → New Sheet Object → Table Box. Appare la seguente finestra in cui citiamo il Titolo della tabella e selezioniamo i campi obbligatori da visualizzare. Facendo clic su OK vengono visualizzati i dati dal file csv nella casella tabella di QlikView come mostrato di seguito. Imposta anche l'ordinamento come mostrato di seguito per ottenere il risultato nello stesso ordine del campoMonth com'è nella sorgente.
Al completamento dei passaggi precedenti e facendo clic su Finish, otteniamo la casella Tabella che mostra i dati come indicato di seguito.
Utilizzo della funzione peek () nei calcoli
Il peek()può essere utilizzato nei calcoli che coinvolgono altre colonne. Visualizziamo la variazione percentuale del volume delle vendite per ogni mese. Il seguente script ottiene questo risultato.
LOAD
Month, [Sales Volume],
peek('Sales Volume') as Prevvolume,
(([Sales Volume]-peek('Sales Volume')))/peek('Sales Volume')*100 as Difference
FROM
[C:\Qlikview\data\monthly_sales.csv]
(txt, codepage is 1252, embedded labels, delimiter is ',', msq);
Creazione dell'oggetto foglio
Creiamo un file Table Boxoggetto di lavoro per mostrare i dati generati dallo script precedente. Vai alla voce di menuLayout → New Sheet Object → Table Box. Appare la seguente finestra in cui citiamo il Titolo della tabella e selezioniamo i campi obbligatori da visualizzare. Facendo clic su OK vengono visualizzati i dati dal file CSV nella casella della tabella di QlikView come mostrato di seguito.