In Qlik Sense, il valore booleano vero è rappresentato da -1 e il valore falso è rappresentato da 0.
In altre parole, la funzione inquarter() divide l'anno in quattro trimestri uguali tra il 1° gennaio e il 31 dicembre. È possibile utilizzare l'argomento first_month_of_year per modificare il mese che viene considerato il primo nella propria app e i trimestri cambieranno in base a tale argomento. base_date, la funzione identifica quale trimestre deve essere utilizzato come comparatore per la funzione. Infine, la funzione restituisce un risultato booleano quando si confrontano i valori della data con il segmento del trimestre.
Casi di utilizzo
La funzione inquarter() restituisce un risultato booleano. In genere, questo tipo di funzione viene utilizzato come condizione in un file if expression. Ciò restituisce un'aggregazione o un calcolo che dipende dalla presenza di una data nel trimestre selezionato.
Ad esempio, la funzione inquarter() può essere utilizzata per identificare tutte le apparecchiature prodotte in un segmento trimestrale in base alle date di produzione delle apparecchiature.
Argomenti
Argomento
Descrizione
timestamp
La data da confrontare con base_date.
base_date
La data utilizzata per valutare il trimestre.
period_no
Il trimestre può essere differito mediante period_no. period_no è un numero intero, in cui il valore 0 indica il trimestre che contiene base_date. I valori negativi di period_no indicano i trimestri precedenti, mentre i valori positivi indicano i trimestri 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
inquarter ('01/25/2013', '01/01/2013', 0)
Restituisce TRUE
inquarter ('01/25/2013', '04/01/2013', 0)
Restituisce FALSE
inquarter ('01/25/2013', '01/01/2013', -1)
Restituisce FALSE
inquarter ('12/25/2012', '01/01/2013', -1)
Restituisce TRUE
inquarter ('01/25/2013', '03/01/2013', 0, 3)
Restituisce FALSE
inquarter ('03/25/2013', '03/01/2013', 0, 3)
Restituisce TRUE
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 per il 2022, caricato in una tabella denominata 'Transactions'.
Un caricamento precedente che contiene la funzione inquarter() impostata come campo 'in_quarter' e determina quali transazioni hanno avuto luogo nello stesso trimestre del 15 maggio 2022.
Caricare i dati e aprire un foglio. Creare una nuova tabella e aggiungere tali campi come dimensioni:
date
in_quarter
Tabella dei risultati
date
in_quarter
1/7/2022
0
1/19/2022
0
2/5/2022
0
2/28/2022
0
3/16/2022
0
4/1/2022
-1
5/7/2022
-1
5/16/2022
-1
6/15/2022
-1
6/26/2022
-1
7/9/2022
0
7/22/2022
0
7/23/2022
0
7/27/2022
0
8/2/2022
0
8/8/2022
0
8/19/2022
0
9/26/2022
0
10/14/2022
0
10/29/2022
0
Il campo 'in_quarter' viene creato nell'istruzione LOAD precedente utilizzando la funzione inquarter(). Il primo argomento identifica il campo da valutare. Il secondo argomento è una data codificata per il 15 maggio che identifica il trimestre da definire come comparatore. Un period_no di 0 è l'argomento finale e garantisce che la funzione inquarter() non confronti i trimestri precedenti o successivi al trimestre segmentato.
Qualsiasi transazione che si verifica tra il 1° aprile e la fine del 30 giugno restituisce un risultato booleano pari a TRUE.
Esempio 2 - period_no
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 per il 2022, caricato in una tabella denominata 'Transactions'.
Un caricamento precedente che contiene la funzione inquarter() impostata come campo 'previous_quarter' e determina quali transazioni hanno avuto luogo nello trimestre precedente quello del 15 maggio 2022.
Caricare i dati e aprire un foglio. Creare una nuova tabella e aggiungere tali campi come dimensioni:
date
previous_qtr
Tabella dei risultati
date
previous_qtr
1/7/2022
-1
1/19/2022
-1
2/5/2022
-1
2/28/2022
-1
3/16/2022
-1
4/1/2022
0
5/7/2022
0
5/16/2022
0
6/15/2022
0
6/26/2022
0
7/9/2022
0
7/22/2022
0
7/23/2022
0
7/27/2022
0
8/2/2022
0
8/8/2022
0
8/19/2022
0
9/26/2022
0
10/14/2022
0
10/29/2022
0
L'utilizzo di -1 come argomento period_no nella funzione inquarter() sposta i confini del trimestre del comparatore indietro di un intero trimestre. Il 15 maggio cade nel secondo trimestre dell'anno e quindi il segmento equivale inizialmente al trimestre dal 1° aprile al 30 giugno. period_no compensa questo segmento con un valore negativo di tre mesi e fa sì che i confini della data diventino dal 1° gennaio al 30 marzo.
Pertanto, qualsiasi transazione che si verifichi tra il 1° gennaio e il 30 marzo restituirà un risultato booleano di TRUE.
Esempio 3 - first_month_of_year
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 per il 2022, caricato in una tabella denominata 'Transactions'.
Un caricamento precedente che contiene la funzione inquarter() impostata come campo 'in_quarter' e determina quali transazioni hanno avuto luogo nello stesso trimestre del 15 maggio 2022.
Tuttavia, in questo esempio, il criterio organizzativo prevede che marzo sia il primo mese dell'anno finanziario.
Caricare i dati e aprire un foglio. Creare una nuova tabella e aggiungere tali campi come dimensioni:
date
previous_qtr
Tabella dei risultati
date
previous_qtr
1/7/2022
0
1/19/2022
0
2/5/2022
0
2/28/2022
0
3/16/2022
-1
4/1/2022
-1
5/7/2022
-1
5/16/2022
-1
6/15/2022
0
6/26/2022
0
7/9/2022
0
7/22/2022
0
7/23/2022
0
7/27/2022
0
8/2/2022
0
8/8/2022
0
8/19/2022
0
9/26/2022
0
10/14/2022
0
10/29/2022
0
Utilizzando 3 come argomento first_month_of_year nella funzione inquarter(), si imposta il 1° marzo come inizio dell'anno e poi si divide l'anno in trimestri. Pertanto, i segmenti trimestrali sono marzo-maggio, giugno-agosto, settembre-novembre, dicembre-febbraio. base_date del 15 maggio stabilisce il trimestre marzo-maggio come trimestre di confronto per la funzione.
Pertanto, qualsiasi transazione che si verifichi tra il 1° marzo e il 31 marzo restituirà un risultato booleano di TRUE.
Esempio 4 – Esempio di oggetto grafico
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 per il 2022, caricato in una tabella denominata 'Transactions'.
Un caricamento precedente che contiene la funzione inquarter() impostata come campo 'in_quarter' e determina quali transazioni hanno avuto luogo nello stesso trimestre del 15 maggio 2022.
Caricare i dati e aprire un foglio. Creare una nuova tabella e aggiungere questo campo come dimensione:
date
Creare la seguente misura per calcolare se le transazioni sono avvenute nello stesso trimestre del 15 maggio:
=inquarter(date,'05/15/2022', 0)
Tabella dei risultati
date
in_quarter
1/7/2022
0
1/19/2022
0
2/5/2022
0
2/28/2022
0
3/16/2022
0
4/1/2022
-1
5/7/2022
-1
5/16/2022
-1
6/15/2022
-1
6/26/2022
-1
7/9/2022
0
7/22/2022
0
7/23/2022
0
7/27/2022
0
8/2/2022
0
8/8/2022
0
8/19/2022
0
9/26/2022
0
10/14/2022
0
10/29/2022
0
La misura 'in_quarter' viene creata nell'oggetto grafico utilizzando la funzione inquarter(). Il primo argomento identifica il campo da valutare. Il secondo argomento è una data codificata per il 15 maggio che identifica il trimestre da definire come comparatore. Un period_no di 0 è l'argomento finale e garantisce che la funzione inquarter() non confronti i trimestri precedenti o successivi al trimestre segmentato.
Qualsiasi transazione che si verifica tra il 1° aprile e la fine del 30 giugno restituisce un risultato booleano pari a TRUE.
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 che viene caricato in una tabella chiamata 'Products'.
La tabella contiene i seguenti campi:
ID prodotto
tipo di prodotto
data di produzione
prezzo di costo
Si è determinato che, a causa di un errore delle apparecchiature, i prodotti fabbricati nella settimana nel trimestre del 15 maggio 2022 erano difettosi. L'utente finale vorrebbe un grafico che visualizzi, per nome del trimestre, lo stato dei prodotti fabbricati "difettosi" o "non difettosi" e il costo dei prodotti fabbricati in quel trimestre.
Caricare i dati e aprire un foglio. Creare una nuova tabella e aggiungere questo campo come dimensione:
=quartername(manufacture_date)
Creare le seguenti misure:
=if(only(InQuarter(manufacture_date,makedate(2022,05,15),0)),'Defective','Faultless'), per identificare quali prodotti sono difettosi e quali non lo sono utilizzando la funzione inquarter().
=sum(cost_price), per mostrare la somma dei costi di ciascun prodotto.
Procedere come indicato di seguito:
Impostare la misura Formattazione numero su Denaro.
La funzione inquarter() restituisce un valore booleano quando valuta le date di produzione di ciascun prodotto. Per qualsiasi prodotto fabbricato nel trimestre che contiene il 15 maggio, la funzione inquarter() restituisce un valore booleano di TRUE e contrassegna i prodotti come 'difettosi'. Qualsiasi prodotto che restituisce un valore di FALSE, e che quindi non è stato fabbricato nel trimestre, viene contrassegnato come "non difettoso".
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!