La funzione networkdays restituisce il numero di giorni lavorativi (dal lunedì al venerdì) compresi tra e inclusi in start_date e end_date, tenendo in considerazione qualsiasi eventuale valore di festività holiday nel calendario.
Sintassi:
networkdays
(start_date, end_date [, holiday])
Tipo di dati restituiti: numero intero
La funzione networkdays presenta le seguenti limitazioni:
Non esiste un metodo per modificare i giorni lavorativi. In altre parole, non c'è modo di modificare la funzione per le regioni o le situazioni che comportano un lavoro diverso dal lunedì al venerdì.
Il parametro holiday deve essere una costante stringa. Le espressioni non sono accettate.
Argomenti
Argomento
Descrizione
start_date
La data di inizio da valutare.
end_date
La data di fine da valutare.
holiday
Periodi di vacanza da escludere dai giorni lavorativi. Una vacanza è definita come una stringa di data costante. È possibile specificare più periodi di vacanza, separati da virgole.
La funzione networkdays() viene comunemente utilizzata come parte di un'espressione quando l'utente desidera che il calcolo utilizzi il numero di giorni lavorativi che intercorrono tra due date. Ad esempio, se un utente desidera calcolare il salario totale che verrà percepito da un dipendente con contratto PAYE (pay-as-you-earn).
Esempi di funzioni
Esempio
Risultato
networkdays ('12/19/2013', '01/07/2014')
Restituisce 14. In questo esempio, le festività non vengono prese in considerazione.
Restituisce 10. In questo esempio, vengono presi in considerazione due periodi di festività.
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 gli ID dei progetti, le date di inizio e di fine. Queste informazioni vengono caricate in una tabella denominata Projects.
Il campo della data fornito nel formato della variabile di sistema DateFormat (MM/GG/AAAA).
La creazione di un campo aggiuntivo, net_work_days, per calcolare il numero di giorni lavorativi coinvolti in ogni progetto.
Caricare i dati e aprire un foglio. Creare una nuova tabella e aggiungere tali campi come dimensioni:
id
start_date
end_date
net_work_days
Tabella dei risultati
id
start_date
end_date
net_work_days
1
01/01/2022
01/18/2022
12
2
02/10/2022
02/17/2022
6
3
05/17/2022
07/05/2022
36
4
06/01/2022
06/12/2022
8
5
08/10/2022
08/26/2022
13
Poiché non ci sono festività programmate (che sarebbero state presenti nel terzo argomento della funzione networkdays()), la funzione sottrae il valore start_date da end_date, così come tutti i fine settimana, per calcolare il numero di giorni lavorativi tra le due date.
Il calendario qui sopra illustra visivamente il progetto con un valore id di 5. Il progetto 5 inizia mercoledì 10 agosto 2022 e termina il 26 agosto 2022. Ignorando tutti i sabati e le domeniche, sono presenti 13 giorni lavorativi tra queste due date.
Esempio 2 – Singolo giorno festivo
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 ricavati dal precedente esempio.
Il campo della data fornito nel formato della variabile di sistema DateFormat (MM/GG/AAAA).
La creazione di un campo aggiuntivo, net_work_days, per calcolare il numero di giorni lavorativi coinvolti in ogni progetto.
In questo esempio, il 19 agosto 2022 è previsto un giorno di vacanza.
Caricare i dati e aprire un foglio. Creare una nuova tabella e aggiungere tali campi come dimensioni:
id
start_date
end_date
net_work_days
Tabella dei risultati
id
start_date
end_date
net_work_days
1
01/01/2022
01/18/2022
12
2
02/10/2022
02/17/2022
6
3
05/17/2022
07/05/2022
36
4
06/01/2022
06/12/2022
8
5
08/10/2022
08/26/2022
12
La singola vacanza programmata viene inserita come terzo argomento della funzione networkdays().
Il calendario qui sopra illustra visivamente il progetto 5, dimostrando questo adattamento per includere il giorno di vacanza. Questa vacanza si verifica durante il progetto 5, venerdì 19 agosto 2022. Di conseguenza, il valore net_work_days totale del progetto 5 diminuisce di un giorno, passando da 13 a 12 giorni.
Esempio 3 – Vacanze multiple
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 ricavato dal primo esempio.
Il campo della data fornito nel formato della variabile di sistema DateFormat (MM/GG/AAAA).
La creazione di un campo aggiuntivo, net_work_days, per calcolare il numero di giorni lavorativi coinvolti in ogni progetto.
Tuttavia, in questo esempio sono previsti quattro giorni di vacanza, dal 18 al 21 agosto 2022.
Caricare i dati e aprire un foglio. Creare una nuova tabella e aggiungere tali campi come dimensioni:
id
start_date
end_date
net_work_days
Tabella dei risultati
id
start_date
end_date
net_work_days
1
01/01/2022
01/18/2022
12
2
02/10/2022
02/17/2022
6
3
05/17/2022
07/05/2022
36
4
06/01/2022
06/12/2022
8
5
08/10/2022
08/26/2022
11
I quattro giorni di vacanza programmati vengono inseriti come elenco separato da virgole, a partire dal terzo argomento della funzione networkdays().
Il calendario qui sopra illustra visivamente il progetto 5, dimostrando questo adattamento per includere i giorni di vacanza. Questo periodo di ferie programmate si verifica durante il progetto 5, con due giorni di giovedì e venerdì. Di conseguenza, il valore totale net_work_days del progetto 5 diminuisce da 13 a 11 giorni.
Esempio 4 – Singolo giorno di vacanza
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 ricavato dal primo esempio.
Il campo della data fornito nel formato della variabile di sistema DateFormat (MM/GG/AAAA).
Il 19 agosto 2022 è previsto un giorno di vacanza.
Tuttavia, in questo esempio, il set di dati invariato viene caricato nell'applicazione. Il campo net_work_days viene calcolato come misura in un oggetto grafico.
Caricare i dati e aprire un foglio. Creare una nuova tabella e aggiungere tali campi come dimensioni:
id
start_date
end_date
Creare la seguente misura:
= networkdays(start_date,end_date,’08/19/2022’)
Tabella dei risultati
id
start_date
end_date
net_work_days
1
01/01/2022
01/18/2022
12
2
02/10/2022
02/17/2022
6
3
05/17/2022
07/05/2022
36
4
06/01/2022
06/12/2022
8
5
08/10/2022
08/26/2022
12
La singola vacanza programmata viene inserita come terzo argomento della funzione networkdays().
Il calendario qui sopra illustra visivamente il progetto 5, dimostrando questo adattamento per includere il giorno di vacanza. Questa vacanza si verifica durante il progetto 5, venerdì 19 agosto 2022. Di conseguenza, il valore net_work_days totale del progetto 5 diminuisce di un giorno, passando da 13 a 12 giorni.
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!