Questa funzione restituisce un valore corrispondente a un indicatore temporale recante l'ultimo millisecondo dell'ultimo giorno dell'anno contenente date. Il formato di output predefinito sarà il formato DateFormat impostato nello script.
In altre parole, la funzione yearend() determina in quale anno cade la data. Quindi, restituisce data e ora, nel formato data, per l'ultimo millisecondo di quell'anno. Il primo mese dell'anno è, per impostazione predefinita, gennaio. Tuttavia, è possibile modificare il mese da impostare come primo utilizzando l'argomento first_month_of_year nella funzione yearend().
Nota informatica La funzione yearend() non considera la variabile di sistema FirstMonthOfYear. L'anno inizia il 1 gennaio a condizione che l'argomento first_month_of_year non venga utilizzato per modificarlo.
Casi di utilizzo
La funzione yearend() viene utilizzata come parte di un'espressione quando si desidera che il calcolo utilizzi la frazione dell'anno non ancora trascorso. Ad esempio, se si vuole calcolare l'interesse totale non ancora maturato durante l'anno.
Tipo di dati restituiti: duale
Argomenti
Argomento
Descrizione
date
La data o la data e ora da valutare.
period_no
period_no è un numero intero, in cui il valore 0 indica l'anno che contiene 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.
È possibile utilizzare i seguenti valori per impostare il primo mese dell'anno nell'argomento first_month_of_year:
valori first_month_of_year
Month
Valore
Febbraio
2
March
3
April
4
May
5
June
6
July
7
August
8
September
9
October
10
Novembre
11
December
12
Impostazioni locali
Se non diversamente specificato, gli esempi di questo argomento utilizzano il seguente formato di data: MM/GG/AAAA. Il formato della data viene specificato nell'istruzione SET DateFormat nello script di caricamento dei dati. La formattazione predefinita della data potrebbe essere diversa nel proprio sistema, a causa delle impostazioni regionali e di altri fattori. È possibile modificare i formati degli esempi seguenti in base alle proprie esigenze. In alternativa, è possibile modificare i formati nel proprio script di caricamento per adattarli a questi esempi.
Le impostazioni regionali predefinite delle app si basano sulle impostazioni regionali del sistema del computer o del server in cui risulta installato Qlik Sense. Se il server Qlik Sense a cui si accede è impostato in Svezia, l'editor caricamento dati utilizzerà le impostazioni regionali svedesi per date, ora e valuta. Queste impostazioni di formato regionale non riguardano la lingua visualizzata nell'interfaccia utente Qlik Sense. Qlik Sense verrà visualizzato nella stessa lingua del browser utilizzato.
Esempi di funzioni
Esempio
Risultato
yearend('10/19/2001')
Restituisce 12/31/2001 23:59:59.
yearend('10/19/2001', -1)
Restituisce 12/31/2000 23:59:59.
yearend('10/19/2001', 0, 4)
Restituisce 03/31/2002 23:59:59.
Esempio 1 - Nessun argomento aggiuntivo
Panoramica
Aprire l'editor caricamento dati e aggiungere lo script di caricamento sotto in una nuova scheda.
Lo script di caricamento contiene:
Un set di dati contenente un insieme di transazioni tra il 2020 e il 2022 viene caricato in una tabella denominata 'Transactions'.
Il campo della data è stato fornito nel formato della variabile di sistema DateFormat, ossia (MM/DD/YYYY).
Un'istruzione di caricamento precedente che contiene quanto segue:
yearend() funzione che è impostata come campo year_end.
Timestamp() funzione che è impostata come campo year_end_timestamp.
Caricare i dati e aprire un foglio. Creare una nuova tabella e aggiungere tali campi come dimensioni:
id
date
year_end
year_end_timestamp
Tabella dei risultati
id
data
year_end
year_end_timestamp
8188
01/13/2020
12/31/2020
12/31/2020 11:59:59 PM
8189
02/26/2020
12/31/2020
12/31/2020 11:59:59 PM
8190
03/27/2020
12/31/2020
12/31/2020 11:59:59 PM
8191
04/16/2020
12/31/2020
12/31/2020 11:59:59 PM
8192
05/21/2020
12/31/2020
12/31/2020 11:59:59 PM
8193
08/14/2020
12/31/2020
12/31/2020 11:59:59 PM
8194
10/07/2020
12/31/2020
12/31/2020 11:59:59 PM
8195
12/05/2020
12/31/2020
12/31/2020 11:59:59 PM
8196
01/22/2021
12/31/2021
12/31/2021 11:59:59 PM
8197
02/03/2021
12/31/2021
12/31/2021 11:59:59 PM
8198
03/17/2021
12/31/2021
12/31/2021 11:59:59 PM
8199
04/23/2021
12/31/2021
12/31/2021 11:59:59 PM
8200
05/04/2021
12/31/2021
12/31/2021 11:59:59 PM
8201
06/30/2021
12/31/2021
12/31/2021 11:59:59 PM
8202
07/26/2021
12/31/2021
12/31/2021 11:59:59 PM
8203
12/27/2021
12/31/2021
12/31/2021 11:59:59 PM
8204
06/06/2022
12/31/2022
12/31/2022 11:59:59 PM
8205
07/18/2022
12/31/2022
12/31/2022 11:59:59 PM
8206
11/14/2022
12/31/2022
12/31/2022 11:59:59 PM
8207
12/12/2022
12/31/2022
12/31/2022 11:59:59 PM
Il campo 'year_end' viene creato nell'istruzione di caricamento precedente mediante l'uso della funzione yearend() e trasferendo il campo data come argomento della funzione.
La funzione yearend() inizialmente identifica in quale anno rientra il valore della data e restituisce data e ora per l'ultimo millisecondo di quell'anno.
La transazione 8199 è avvenuta il 23 aprile 2021. La funzione yearend() restituisce l'ultimo millisecondo di quell'anno, ovvero il 31 dicembre alle ore 11:59:59 PM.
Esempio 2 – period_no
Panoramica
Vengono utilizzati lo stesso set di dati e lo stesso scenario del primo esempio.
Tuttavia, in questo esempio, l'attività consiste nel creare un campo, 'previous_year_end', che restituisce data e ora di fine dell'anno precedente all'anno in cui ha avuto luogo la transazione.
Caricare i dati e aprire un foglio. Creare una nuova tabella e aggiungere tali campi come dimensioni:
id
date
previous_year_end
previous_ year_end_timestamp
Tabella dei risultati
id
data
previous_year_end
previous_year_end_timestamp
8188
01/13/2020
12/31/2019
12/31/2019 11:59:59 PM
8189
02/26/2020
12/31/2019
12/31/2019 11:59:59 PM
8190
03/27/2020
12/31/2019
12/31/2019 11:59:59 PM
8191
04/16/2020
12/31/2019
12/31/2019 11:59:59 PM
8192
05/21/2020
12/31/2019
12/31/2019 11:59:59 PM
8193
08/14/2020
12/31/2019
12/31/2019 11:59:59 PM
8194
10/07/2020
12/31/2019
12/31/2019 11:59:59 PM
8195
12/05/2020
12/31/2019
12/31/2019 11:59:59 PM
8196
01/22/2021
12/31/2020
12/31/2020 11:59:59 PM
8197
02/03/2021
12/31/2020
12/31/2020 11:59:59 PM
8198
03/17/2021
12/31/2020
12/31/2020 11:59:59 PM
8199
04/23/2021
12/31/2020
12/31/2020 11:59:59 PM
8200
05/04/2021
12/31/2020
12/31/2020 11:59:59 PM
8201
06/30/2021
12/31/2020
12/31/2020 11:59:59 PM
8202
07/26/2021
12/31/2020
12/31/2020 11:59:59 PM
8203
12/27/2021
12/31/2020
12/31/2020 11:59:59 PM
8204
06/06/2022
12/31/2021
12/31/2021 11:59:59 PM
8205
07/18/2022
12/31/2021
12/31/2021 11:59:59 PM
8206
11/14/2022
12/31/2021
12/31/2021 11:59:59 PM
8207
12/12/2022
12/31/2021
12/31/2021 11:59:59 PM
Poiché il valore period_no di -1 è stato utilizzato come argomento offset nella funzione yearend(), la funzione per prima cosa identifica l'anno in cui avvengono le transazioni. Quindi, cerca l'anno precedente e identifica il primo millisecondo di quell'anno.
La transazione 8199 avviene il 23 aprile 2021. La funzione yearend() restituisce l'ultimo millisecondo dell'anno precendente, ovvero il 31 dicembre 2020 alle ore 11:59:59 PM, per il campo 'previous_year_end'.
Esempio 3 – first_month_of_year
Panoramica
Vengono utilizzati lo stesso set di dati e lo stesso scenario del primo esempio.
Tuttavia, in questo esempio, la politica aziendale prevede che l'anno inizi il 1 aprile.
Caricare i dati e aprire un foglio. Creare una nuova tabella e aggiungere tali campi come dimensioni:
id
date
year_end
year_end_timestamp
Tabella dei risultati
id
data
year_end
year_end_timestamp
8188
01/13/2020
03/31/2020
3/31/2020 11:59:59 PM
8189
02/26/2020
03/31/2020
3/31/2020 11:59:59 PM
8190
03/27/2020
03/31/2020
3/31/2020 11:59:59 PM
8191
04/16/2020
03/31/2021
3/31/2021 11:59:59 PM
8192
05/21/2020
03/31/2021
3/31/2021 11:59:59 PM
8193
08/14/2020
03/31/2021
3/31/2021 11:59:59 PM
8194
10/07/2020
03/31/2021
3/31/2021 11:59:59 PM
8195
12/05/2020
03/31/2021
3/31/2021 11:59:59 PM
8196
01/22/2021
03/31/2021
3/31/2021 11:59:59 PM
8197
02/03/2021
03/31/2021
3/31/2021 11:59:59 PM
8198
03/17/2021
03/31/2021
3/31/2021 11:59:59 PM
8199
04/23/2021
03/31/2022
3/31/2022 11:59:59 PM
8200
05/04/2021
03/31/2022
3/31/2022 11:59:59 PM
8201
06/30/2021
03/31/2022
3/31/2022 11:59:59 PM
8202
07/26/2021
03/31/2022
3/31/2022 11:59:59 PM
8203
12/27/2021
03/31/2022
3/31/2022 11:59:59 PM
8204
06/06/2022
03/31/2023
3/31/2023 11:59:59 PM
8205
07/18/2022
03/31/2023
3/31/2023 11:59:59 PM
8206
11/14/2022
03/31/2023
3/31/2023 11:59:59 PM
8207
12/12/2022
03/31/2023
3/31/2023 11:59:59 PM
Poiché l'argomento first_month_of_year di 4 viene utilizzato nella funzione yearend(), imposta il primo giorno dell'anno come il 1 aprile e l'ultimo giorno dell'anno come il 31 marzo.
La transazione 8199 avviene il 23 aprile 2021. Poiché la funzione yearend() imposta l'inizio dell'anno sul 1 aprile, restituisce il 31 marzo 2022 come valore 'year_end' per la transazione.
Esempio 4 - Esempio di oggetto grafico
Panoramica
Vengono utilizzati lo stesso set di dati e lo stesso scenario del primo esempio.
Tuttavia, in questo esempio, il set di dati è invariato e viene caricato nell'applicazione. Il calcolo che restituisce data e ora della data di fine per l'anno in cui è avvenuta una transazione viene creato come misura in un oggetto grafico dell'applicazione.
Caricare i dati e aprire un foglio. Creare una nuova tabella e aggiungere tali campi come dimensioni:
id
date
Per calcolare in quale anno è avvenuta una transazione, creare le seguenti misure:
=yearend(date)
=timestamp(yearend(date))
Tabella dei risultati
id
data
=yearend(date)
=timestamp(yearend(date))
8188
01/13/2020
12/31/2020
12/31/2020 11:59:59 PM
8189
02/26/2020
12/31/2020
12/31/2020 11:59:59 PM
8190
03/27/2020
12/31/2020
12/31/2020 11:59:59 PM
8191
04/16/2020
12/31/2020
12/31/2020 11:59:59 PM
8192
05/21/2020
12/31/2020
12/31/2020 11:59:59 PM
8193
08/14/2020
12/31/2020
12/31/2020 11:59:59 PM
8194
10/07/2020
12/31/2020
12/31/2020 11:59:59 PM
8195
12/05/2020
12/31/2020
12/31/2020 11:59:59 PM
8196
01/22/2021
12/31/2021
12/31/2021 11:59:59 PM
8197
02/03/2021
12/31/2021
12/31/2021 11:59:59 PM
8198
03/17/2021
12/31/2021
12/31/2021 11:59:59 PM
8199
04/23/2021
12/31/2021
12/31/2021 11:59:59 PM
8200
05/04/2021
12/31/2021
12/31/2021 11:59:59 PM
8201
06/30/2021
12/31/2021
12/31/2021 11:59:59 PM
8202
07/26/2021
12/31/2021
12/31/2021 11:59:59 PM
8203
12/27/2021
12/31/2021
12/31/2021 11:59:59 PM
8204
06/06/2022
12/31/2022
12/31/2022 11:59:59 PM
8205
07/18/2022
12/31/2022
12/31/2022 11:59:59 PM
8206
11/14/2022
12/31/2022
12/31/2022 11:59:59 PM
8207
12/12/2022
12/31/2022
12/31/2022 11:59:59 PM
La misura 'end_of_year' viene creata nell'oggetto grafico mediante l'utilizzo della funzione yearend() e trasferendo il campo data come argomento della funzione.
La funzione yearend() inizialmente identifica in quale anno rientra il valore della data, restituendo data e ora per l'ultimo millisecondo di quell'anno.
La transazione 8199 avviene il 23 aprile 2021. La funzione yearend() restituisce l'ultimo millisecondo di quell'anno, ovvero il 31 dicembre alle ore 11:59:59 PM
Esempio 5 – Scenario
Panoramica
Aprire l'editor caricamento dati e aggiungere lo script di caricamento sotto in una nuova scheda.
Lo script di caricamento contiene:
Un set di dati caricato in una tabella denominata 'Employee_Expenses'. La tabella contiene i seguenti campi:
ID dipendenti
nome dipendenti
media delle richieste di rimborso spese giornaliero di ciascun dipendente
L'utente finale desidera un oggetto grafico che visualizzi, in base all'ID dipendente e al nome del dipendente, le richieste di rimborso spese stimate ancora da sostenere per il resto dell'anno. L'esercizio finanziario inizia a gennaio.
Caricare i dati e aprire un foglio. Creare una nuova tabella e aggiungere tali campi come dimensioni:
employee_id
employee_name
Per calcolare una proiezione delle richieste di rimborso spese, creare la seguente misura:
=(yearend(today(1))-today(1))*avg_daily_claim
Impostare la misura Number Formatting su Money.
Tabella dei risultati
employee_id
employee_name
=(yearend(today(1))-today(1))*avg_daily_claim
182
Contrassegno
$3240.00
183
Deryck
$2700.00
184
Dexter
$2700.00
185
Sydney
$5832.00
186
Agatha
$3888.00
Utilizzando la data odierna come unico argomento, la funzione yearend() restituisce la data di fine dell'anno corrente. Quindi, sottraendo la data odierna dalla data di fine dell'anno, l'espressione restituisce il numero di giorni rimanenti per l'anno corrente.
Questo valore viene quindi moltiplicato per la media delle richieste di rimborso spese giornaliere di ciascun dipendente per calcolare il valore stimato delle richieste che ogni dipendente dovrebbe presentare durante il periodo rimanente dell'anno.
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!