Vai al contenuto principale

inyear - funzione dello script e del grafico

Questa funzione restituisce True se timestamp ricade all'interno dell'anno contenente base_date.

Sintassi:  

InYear (timestamp, base_date, period_no [, first_month_of_year])

Restituisce il tipo di dati: Booleano

Argomenti:  

Argomenti InYear
Argomento Descrizione
timestamp La data da confrontare con base_date.
base_date La data utilizzata per valutare l'anno.
period_no L'anno può essere differito di period_no. period_no è un numero intero, in cui il valore 0 indica l'anno che contiene base_date. I valori negativi di period_no indicano gli anni precedenti, mentre i valori positivi indicano gli anni successivi.
first_month_of_year Se si intende utilizzare anni (fiscali) che non iniziano a gennaio, indicare un valore compreso tra 2 e 12 in first_month_of_year.

Esempi e risultati:  

In questi esempi viene utilizzato il formato di data DD/MM/YYYY. Il formato della data viene specificato nell'istruzione SET DateFormat nella parte superiore dello script di caricamento. Modificare il formato negli esempi in base alle proprie esigenze.

Esempio 1:  

inyear ('25/01/2013', '01/01/2013', 0 )

Restituisce True

Esempio 2:  

inyear ('25/01/2012', '01/01/2013', 0)

Restituisce False

Esempio 3:  

inyear ('25/01/2013', '01/01/2013', -1)

Restituisce False

Esempio 4:  

inyear ('25/01/2012', '01/01/2013', -1 )

Restituisce True

Esempio 5:  

inyear ('25/01/2013', '01/01/2013', 0, 3)

Restituisce True

Esempio 6:  

inyear ('25/03/2013', '01/07/2013', 0, 3 )

Restituisce False. I valori di base_date e di first_month_of_year specificano che timestamp deve ricadere entro 01/03/2012 e 28/02/2013.

Esempio 7:  

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 verifica se la data di una fattura ricade nell'anno fiscale specificato dall'impostazione del valore di first_month_of_year su 4 e che ha base_date tra 1/4/2012 e 31/03/2013.

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

];

 

Verificare se InvDate ricade nell'anno finanziario tra il 1/04/2012 e il 31/03/2013:

InvoiceData:

LOAD *,

InYear(InvDate, '31/01/2013', 0, 4) AS FinYr1213

Resident TempTable;

Drop table TempTable;

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

Risultati esempio 7
InvDate FinYr1213
28/03/2012 0 (False)
10/12/2012 -1 (True)
5/2/2013 -1 (True)
31/3/2013 -1 (True)
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