Vai al contenuto principale

inlunarweek - funzione dello script e del grafico

Questa funzione restituisce true se timestamp ricade all'interno della settimana lunare contenente base_date. Le settimane lunari in QlikView vengono definite calcolando il 1° gennaio come primo giorno della settimana.

Sintassi:  

InLunarWeek (timestamp, base_date, period_no[, first_week_day])

Restituisce il tipo di dati: Booleano

Argomenti:  

Argomenti InLunarWeek
Argomento Descrizione
timestamp La data da confrontare con base_date.
base_date La data utilizzata per valutare la settimana lunare.
period_no La settimana lunare può essere differita mediante period_no. period_no è un numero intero, in cui il valore 0 indica la settimana lunare che contiene base_date. I valori negativi di period_no indicano le settimane lunari precedenti, mentre i valori positivi indicano le settimane lunari successive.
first_week_day Un differimento che può essere maggiore o minore di zero. Ciò modifica l'inizio dell'anno in base al numero specificato di giorni e/o frazioni di un giorno.

Esempio 1:  

inlunarweek('12/01/2013', '14/01/2013', 0)

Restituisce True. Perché il valore di timestamp, 12/01/2013 ricade nella parte della settimana da 08/01/2013 a 14/01/2013.

Esempio 2:  

inlunarweek('12/01/2013', '07/01/2013', 0)

Restituisce False. Perché base_date 07/01/2013 si trova nella settimana lunare definita come da 01/01/2013 a 07/01/2013.

Esempio 3:  

inlunarweek('12/01/2013', '14/01/2013', -1)

Restituisce False. Perché la specifica di un valore di period_no pari a -1 fa slittare la settimana a quella precedente, da 01/01/2013 a 07/01/2013.

Esempio 4:  

inlunarweek('07/01/2013', '14/01/2013', -1)

Restituisce True. In confronto con l'esempio precedente, la data si trova nella settimana dopo aver considerato lo slittamento all'indietro.

Esempio 5:  

inlunarweek('11/01/2006', '08/01/2006', 0, 3)

Restituisce False. Perché la specifica di una valore per first_week_day come 3 significa che l'inizio dell'anno viene calcolato da 04/01/2013, pertanto il valore di base_date ricade nella prima settimana e il valore di timestamp ricade nella settimana da 11/01/2013 a 17/01/2013.

Esempio 6:  

Aggiungere lo script di esempio al documento ed eseguirlo. Aggiungere quindi a un foglio del documento almeno i campi elencati nella colonna dei risultati per visualizzare il risultato.

Questo esempio consente di controllare se la data di una fattura ricade nella settimana che è slittata di quattro settimane dal valore di base_date.

TempTable:

LOAD RecNo() as InvID, * Inline [

InvDate

28/03/2012

10/12/2012

5/2/2013

31/3/2013

19/5/2013

15/9/2013

11/12/2013

2/3/2014

14/5/2014

13/6/2014

7/7/2014

4/8/2014

];

 

InvoiceData:

LOAD *,

InLunarWeek(InvDate, '11/01/2013', 4) AS InLWeekPlus4

Resident TempTable;

Drop table TempTable;

La tabella risultante contiene le date originali e una colonna con il valore restituito della funzione inlunarweek().

La funzione restituisce True per il valore di InvDate5/2/2013 perché il valore di base_date, 11/01/2013, è slittato di quattro settimane e pertanto ricade nella parte della settimana da 5/02/2013 a 11/02/2013.

Risultati esempio 6
InvDate InLWeekPlus4
28/03/2012 0 (False)
10/12/2012 0 (False)
5/2/2013 -1 (True)
31/3/2013 0 (False)
19/5/2013 0 (False)
15/9/2013 0 (False)
11/12/2013 0 (False)
2/3/2014 0 (False)
14/5/2014 0 (False)
13/6/2014 0 (False)
7/7/2014 0 (False)
4/8/2014 0 (False)

Hai trovato utile questa pagina?

Se riscontri problemi con questa pagina o con il suo contenuto – un errore di battitura, un passaggio mancante o un errore tecnico – facci sapere come possiamo migliorare!

Partecipa al programma Analytics Modernization

Remove banner from view

Modernizza senza compromettere le tue preziose app QlikView con il programma Analytics Modernization. Fare clic qui per maggiori informazioni o per contattarci: ampquestions@qlik.com