Questa funzione restituisce una data calcolata dall'anno YYYY, dal mese MM e dal giorno DD.
Sintassi:
MakeDate(YYYY [ , MM [ , DD ] ])
Tipo di dati restituiti: duale
Argomenti
Argomento
Descrizione
YYYY
L'anno è un numero intero.
MM
Il mese è un numero intero. Se non si indica il mese, verrà utilizzato come valore 1 (gennaio).
DD
Il giorno è un numero intero. Se non si indica un giorno, verrà utilizzato come valore 1 (primo giorno).
Casi di utilizzo
La funzione makedate() viene comunemente utilizzata nello script per la generazione dei dati per generare un calendario. Ciò potrebbe essere usato anche quando il campo data non è direttamente disponibile come data, ma necessita di alcune trasformazioni per estrarre i componenti di anno, mese e giorno.
In questi esempi viene utilizzato il formato della data (MM/GG/AAAA). Il formato della data viene specificato nell'istruzione SET DateFormat sopra lo script di caricamento dei dati. Modificare il formato negli esempi in base ai propri requisiti.
Esempi di funzioni
Esempio
Risultato
makedate(2012)
Restituisce 01/01/2012.
makedate(12)
Restituisce 01/01/2012.
makedate(2012,12)
Restituisce 12/01/2012.
makedate(2012,2,14)
Restituisce 02/14/2012.
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.
Esempio 1 – Esempio di base
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 2018, caricato in una tabella denominata Transactions.
Il campo della data fornito nel formato della variabile di sistema DateFormat (MM/GG/AAAA).
La creazione di un campo, transaction_date, che restituisce una data nel formato MM/GG/AAAA.
Caricare i dati e aprire un foglio. Creare una nuova tabella e aggiungere tali campi come dimensioni:
transaction_year
transaction_month
transaction_day
transaction_date
Tabella dei risultati
transaction_year
transaction_month
transaction_day
transaction_date
2018
08
30
08/30/2018
2018
09
07
09/07/2018
2018
09
16
09/16/2018
2018
09
22
09/22/2018
2018
09
23
09/23/2018
Il campo transaction_date viene creato nell'istruzione di caricamento precedente utilizzando la funzione makedate() e passando i campi anno, mese e giorno come argomenti della funzione.
La funzione combina e converte questi valori in un campo data, restituendo i risultati nel formato della variabile di sistema DateFormat.
Esempio 2 – DateFormat modificato
Panoramica
Aprire l'editor caricamento dati e aggiungere lo script di caricamento sotto in una nuova scheda.
Lo script di caricamento contiene:
Vengono utilizzati lo stesso set di dati e lo stesso scenario del primo esempio.
La creazione di un campo, transaction_date, nel formato GG/MM/AAAA senza modificare la variabile di sistema DateFormat.
Caricare i dati e aprire un foglio. Creare una nuova tabella e aggiungere tali campi come dimensioni:
transaction_year
transaction_month
transaction_day
transaction_date
Tabella dei risultati
transaction_year
transaction_month
transaction_day
transaction_date
2018
08
30
30/08/2018
2018
09
07
07/09/2018
2018
09
16
16/09/2018
2018
09
22
22/09/2018
2018
09
23
23/09/2018
In questo caso, la funzione makedate() è nidificata all'interno della funzione date(). Il secondo argomento della funzione date() imposta il formato dei risultati della funzione makedate() come GG/MM/AAAA.
Esempio 3 - 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 2018, caricato in una tabella denominata Transactions.
Le date delle transazioni sono fornite in due campi: year e month.
Creare una misura dell'oggetto grafico, transaction_date, che restituisca una data nel formato MM/GG/AAAA.
Caricare i dati e aprire un foglio. Creare una nuova tabella e aggiungere tali campi come dimensioni:
year
month
Per determinare il valore transaction_date, creare questa misura:
=makedate(transaction_year,transaction_month)
Tabella dei risultati
transaction_year
transaction_month
transaction_date
2018
08
08/01/2018
2018
09
09/01/2018
La misura transaction_date viene creata nell'oggetto grafico utilizzando la funzione makedate() e passando i campi anno e mese come argomenti della funzione.
La funzione combina quindi questi valori e il valore presunto del giorno, pari a 01. Questi valori vengono poi convertiti in un campo data, restituendo i risultati nel formato della variabile di sistema DateFormat.
Esempio 4 – Scenario
Panoramica
Creare un set di dati di calendario per l'anno solare 2022.
Script di caricamento
SET DateFormat='MM/DD/YYYY';
Calendar:
load
*
where year(date)=2022;
load
date(recno()+makedate(2021,12,31)) as date
AutoGenerate 400;
Risultati
Tabella dei risultati
date
01/01/2022
01/02/2022
01/03/2022
01/04/2022
01/05/2022
01/06/2022
01/07/2022
01/08/2022
01/09/2022
01/10/2022
01/11/2022
01/12/2022
01/13/2022
01/14/2022
01/15/2022
01/16/2022
01/17/2022
01/18/2022
01/19/2022
01/20/2022
01/21/2022
01/22/2022
01/23/2022
01/24/2022
01/25/2022
+ 340 ulteriori righe
La funzione makedate() crea un valore di data per il 31 dicembre 2021. La funzione recno() fornisce il numero di record del record correntemente caricato nella tabella, a partire da 1. Pertanto, il primo record ha la data del 1° gennaio 2022. A ogni valore recno() successivo, la data viene incrementata di 1. Questa espressione è racchiusa in una funzione date() che converte il valore in una data. Questo processo viene ripetuto 400 volte dalla funzione autogenerate. Infine, sfruttando un caricamento precedente, è possibile utilizzare una condizione where per caricare solo le date a partire dall'anno 2022. Questo script genera un calendario contenente tutte le date del 2022.
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!