# week Funzione per script e grafici

Questa funzione restituisce un numero intero che rappresenta il numero della settimana corrispondente alla data inserita.

week(timestamp [, first\_week\_day [, broken\_weeks [, reference\_day]]])

Tipo di dati restituiti: Numero intero

Argomenti

| Argomento | Descrizione |
| --- | --- |
| timestamp | La data o la data e ora da valutare. |
| first\_week\_day | Specifica il giorno di inizio della settimana. Se omesso, viene utilizzato il valore della variabileFirstWeekDay.<br><br>I valori possibili per first\_week\_day sono 0 per lunedì, 1 per martedì, 2 per mercoledì, 3 per giovedì, 4 per venerdì, 5 per sabato e 6 per domenica.<br><br><br>Per maggiori informazioni sulle variabili di sistema, vedere [FirstWeekDay](https://help.qlik.com/it-IT/sense/May2026/Subsystems/Hub/Content/Sense_Hub/Scripting/NumberInterpretationVariables/FirstWeekDay.htm). |
| broken\_weeks | Se non si specificabroken\_weeks, il valore della variabile BrokenWeeks verrà utilizzato per definire se le settimane sono interrotte o meno.<br><br><br>Per maggiori informazioni sulla variabile di sistema, vedere [BrokenWeeks](https://help.qlik.com/it-IT/sense/May2026/Subsystems/Hub/Content/Sense_Hub/Scripting/NumberInterpretationVariables/BrokenWeeks.htm) |
| reference\_day | Se non si specifica reference\_day, il valore della variabile ReferenceDay verrà utilizzato per definire quale giorno di gennaio impostare come giorno di riferimento per definire la settimana 1. Per impostazione predefinita, le funzioni di Qlik Sense utilizzano 4 come giorno di riferimento. Questo significa che la settimana 1 deve contenere il 4 gennaio, vale a dire che la settimana 1 deve sempre contenere 4 quattro giorni di gennaio.<br><br><br>Per maggiori informazioni sulla variabile di sistema, vedere [ReferenceDay](https://help.qlik.com/it-IT/sense/May2026/Subsystems/Hub/Content/Sense_Hub/Scripting/NumberInterpretationVariables/ReferenceDay.htm) |

La funzione `week()` determina la settimana in cui cade la data e restituisce il numero della settimana.

In Qlik Sense, le impostazioni regionali vengono recuperate alla creazione dell'applicazione e le impostazioni corrispondenti vengono memorizzate nello script come variabili d'ambiente. Queste vengono utilizzate per determinare il numero della settimana.

Ciò significa che la maggior parte degli sviluppatori di applicazioni europei ottiene le seguenti variabili d'ambiente, corrispondenti alla definizione ISO 8601:

```
Set FirstWeekDay =0;    // Monday as first week day
Set BrokenWeeks  =0;    // Use unbroken weeks
Set ReferenceDay =4;    // Jan 4th is always in week 1
```

Uno sviluppatore di applicazioni nordamericano ottiene spesso le seguenti variabili d'ambiente:

```
Set FirstWeekDay =6;    // Sunday as first week day
Set BrokenWeeks  =1;    // Use broken weeks
Set ReferenceDay =1;    // Jan 1st is always in week 1
```

Il primo giorno della settimana è determinato dalla variabile di sistema `FirstWeekDay`. È possibile anche modificare il primo giorno della settimana utilizzando l'argomento `first_week_day` nella funzione `week()`.

Se l'applicazione utilizza settimane interrotte, il conteggio del numero di settimane inizia il 1° gennaio e termina il giorno precedente alla variabile di sistema `FirstWeekDay`, indipendentemente dal numero di giorni trascorsi.

Se l'applicazione utilizza settimane ininterrotte, la settimana 1 può iniziare nell'anno precedente o nei primi giorni di gennaio. Dipende da come si utilizzano le variabili di ambiente `FirstWeekDay` e `ReferenceDay`.

## Casi di utilizzo

La funzione `The week()` è utile per confrontare le aggregazioni per settimane. Ad esempio, potrebbe essere usata se si desidera visualizzare le vendite totali dei prodotti in base alla settimana. La funzione `week()` viene preferita a `weekname()` quando l'utente desidera che il calcolo non utilizzi necessariamente le variabili di sistema `BrokenWeeks`, `FirstWeekDay` o `ReferenceDay` dell'applicazione.

Ad esempio, può essere usata se si desidera visualizzare le vendite totali dei prodotti in base alla settimana.

Se l'applicazione utilizza settimane ininterrotte, la settimana 1 può contenere date di dicembre dell'anno precedente o escludere date di gennaio dell'anno in corso. Se l'applicazione utilizza settimane interrotte, la settimana 1 può contenere meno di sette giorni.

## Impostazioni locali

Se non diversamente specificato, gli esempi di questo argomento utilizzano il seguente formato di data: MM/DD/YYYY. 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 nelle applicazioni 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'Qlik Sense interfaccia utente. Qlik Sense verrà visualizzato nella stessa lingua del browser che stai utilizzando.

Gli esempi riportati di seguito presuppongono

```
Set DateFormat= 'MM/DD/YYYY';  
Set FirstWeekDay=0;  
Set BrokenWeeks=0;   
Set ReferenceDay=4;
```

Esempi di funzioni

| Esempio | Risultato |
| --- | --- |
| week('12/28/2021') | Restituisce 52. |
| week(44614) | Restituisce 8, poiché questo è il numero di serie del 22/02/2022. |
| week('01/03/2021') | Restituisce 53. |
| week('01/03/2021',6) | Restituisce 1. |

## Esempio 1 - Variabili di sistema predefinite

[](https://help.qlik.com/en-US/sense/Subsystems/Hub/Content/Sense_Hub/Scripting/DateAndTimeFunctions/week.htm)

#### Script di caricamento e risultati

Panoramica

Aprire l'Editor caricamento dati e aggiungere lo script di caricamento sotto in una nuova sezione.

Lo script di caricamento contiene:

* Un set di dati contenente un insieme di transazioni per l'ultima settimana del 2021 e le prime due settimane del 2022 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, week\_number, che restituisce l'anno e il numero di settimana in cui sono avvenute le transazioni.

* La creazione di un campo chiamato week\_day, che mostra il valore del giorno della settimana per ogni data di transazione.

Script di caricamento

```
SET DateFormat='MM/DD/YYYY';
SET FirstWeekDay=6;
SET BrokenWeeks=1;
SET ReferenceDay=0;

Transactions:
    Load
        *,
        WeekDay(date) as week_day,
        Week(date) as week_number
        ;
Load
*
Inline 
[
id,date,amount
8183,12/27/2021,58.27
8184,12/28/2021,67.42
8185,12/29/2021,23.80
8186,12/30/2021,82.06
8187,12/31/2021,40.56
8188,01/01/2022,37.23
8189,01/02/2022,17.17
8190,01/03/2022,88.27
8191,01/04/2022,57.42
8192,01/05/2022,53.80
8193,01/06/2022,82.06
8194,01/07/2022,40.56
8195,01/08/2022,53.67
8196,01/09/2022,26.63
8197,01/10/2022,72.48
8198,01/11/2022,18.37
8199,01/12/2022,45.26
8200,01/13/2022,58.23
8201,01/14/2022,18.52
];
```

Risultati

Caricare i dati e aprire un foglio. Creare una nuova tabella e aggiungere tali campi come dimensioni:

* id

* date

* week\_day

* week\_number

Tabella dei risultati

| id | date | week\_day | numero\_settimana |
| --- | --- | --- | --- |
| 8183 | 12/27/2021 | Mon | 53 |
| 8184 | 28/12/2021 | Tue | 53 |
| 8185 | 29/12/2021 | Wed | 53 |
| 8186 | 30/12/2021 | Thu | 53 |
| 8187 | 12/31/2021 | Ven | 53 |
| 8188 | 01/01/2022 | Sat | 1 |
| 8189 | 01/02/2022 | Sun | 2 |
| 8190 | 01/03/2022 | Mon | 2 |
| 8191 | 01/04/2022 | Tue | 2 |
| 8192 | 01/05/2022 | Wed | 2 |
| 8193 | 01/06/2022 | Thu | 2 |
| 8194 | 01/07/2022 | Ven | 2 |
| 8195 | 01/08/2022 | Sat | 2 |
| 8196 | 09/01/2022 | Sun | 3 |
| 8197 | 10/01/2022 | Mon | 3 |
| 8198 | 01/11/2022 | Tue | 3 |
| 8199 | 12/01/2022 | Wed | 3 |
| 8200 | 13/01/2022 | Thu | 3 |
| 8201 | 01/14/2022 | Ven | 3 |

Il campo week\_number viene creato nell'istruzione di caricamento precedente mediante l'uso della funzione week() e trasferendo il campo date come argomento della funzione.

Non vengono passati altri parametri alla funzione e quindi sono attive le seguenti variabili predefinite che influenzano la funzione week():

* BrokenWeeks: il conteggio delle settimane inizia il 1 gennaio

* FirstWeekDay: il primo giorno della settimana è la domenica

Schema della funzione week(), utilizzando le variabili di sistema predefinite

Schema della funzione week(), utilizzando le variabili di sistema predefinite

Schema della funzione week()week(), utilizzando le variabili di sistema predefinite ![Diagram displaying how the week function breaks up the dates of year into corresponding week numbers. Here, default system variables lead week 1 to begin on January 1, with week 2 starting on January 2.](https://help.qlik.com/it-IT/sense/May2026/Subsystems/Hub/Content/Resources/Images/scripting-functions-week-examples-def-sys-variables.png)

Poiché l'applicazione utilizza la variabile di sistema predefinita BrokenWeeks, la settimana 1 inizia il 1° gennaio, un sabato.

A causa della variabile di sistema FirstWeekDay predefinita, le settimane iniziano di domenica. La prima domenica dopo il 1° gennaio è il 2 gennaio, quando inizia la seconda settimana.

## Esempio 2 – first\_week\_day

[](https://help.qlik.com/en-US/sense/Subsystems/Hub/Content/Sense_Hub/Scripting/DateAndTimeFunctions/week.htm)

#### Script di caricamento e risultati

Panoramica

Aprire l'Editor caricamento dati e aggiungere lo script di caricamento sotto in una nuova sezione.

Lo script di caricamento contiene:

* La creazione di un campo, week\_number, che restituisce l'anno e il numero di settimana in cui sono avvenute le transazioni.

* La creazione di un campo chiamato week\_day, che mostra il valore del giorno della settimana per ogni data di transazione.

In questo esempio, vogliamo impostare l'inizio della settimana lavorativa al martedì.

Script di caricamento

```
SET DateFormat='MM/DD/YYYY';
SET FirstWeekDay=6;
SET BrokenWeeks=1;
SET ReferenceDay=0;

Transactions:
    Load
        *,
        WeekDay(date) as week_day,
        Week(date,1) as week_number
        ;
Load
*
Inline 
[
id,date,amount
8183,12/27/2022,58.27
8184,12/28/2022,67.42
8185,12/29/2022,23.80
8186,12/30/2022,82.06
8187,12/31/2021,40.56
8188,01/01/2022,37.23
8189,01/02/2022,17.17
8190,01/03/2022,88.27
8191,01/04/2022,57.42
8192,01/05/2022,53.80
8193,01/06/2022,82.06
8194,01/07/2022,40.56
8195,01/08/2022,53.67
8196,01/09/2022,26.63
8197,01/10/2022,72.48
8198,01/11/2022,18.37
8199,01/12/2022,45.26
8200,01/13/2022,58.23
8201,01/14/2022,18.52
];
```

Risultati

Caricare i dati e aprire un foglio. Creare una nuova tabella e aggiungere tali campi come dimensioni:

* id

* date

* week\_day

* week\_number

Tabella dei risultati

| id | date | week\_day | numero\_settimana |
| --- | --- | --- | --- |
| 8183 | 12/27/2021 | Mon | 52 |
| 8184 | 28/12/2021 | Tue | 53 |
| 8185 | 29/12/2021 | Wed | 53 |
| 8186 | 30/12/2021 | Thu | 53 |
| 8187 | 12/31/2021 | Ven | 53 |
| 8188 | 01/01/2022 | Sat | 1 |
| 8189 | 01/02/2022 | Sun | 1 |
| 8190 | 01/03/2022 | Mon | 1 |
| 8191 | 01/04/2022 | Tue | 2 |
| 8192 | 01/05/2022 | Wed | 2 |
| 8193 | 01/06/2022 | Thu | 2 |
| 8194 | 01/07/2022 | Ven | 2 |
| 8195 | 01/08/2022 | Sat | 2 |
| 8196 | 09/01/2022 | Sun | 2 |
| 8197 | 10/01/2022 | Mon | 2 |
| 8198 | 01/11/2022 | Tue | 3 |
| 8199 | 12/01/2022 | Wed | 3 |
| 8200 | 13/01/2022 | Thu | 3 |
| 8201 | 01/14/2022 | Ven | 3 |

L'applicazione utilizza ancora le settimane parziali. Tuttavia, l'argomento first\_week\_day è stato impostato a 1 nella funzione week(). In questo modo si imposta il primo giorno della settimana come martedì.

Schema della funzione week(), esempio first\_week\_day

Schema della funzione week(), esempio first\_week\_day

Schema della funzione week()week(), esempio first\_week\_day ![Diagram displaying how the week function breaks up the dates of year into corresponding week numbers. Here, with weeks beginning on Jaunary 2, week 1 of the year starts on January 1 and week 2 starts on January 4.](https://help.qlik.com/it-IT/sense/May2026/Subsystems/Hub/Content/Resources/Images/scripting-functions-week-examples-first-week-day.png)

L'applicazione utilizza la variabile di sistema predefinita BrokenWeeks, la settimana 1 inizia il 1° gennaio, un sabato.

L'argomento first\_week\_day della funzione week() imposta il primo giorno della settimana a un martedì. Pertanto, la settimana 53 inizia il 28 dicembre 2021.

Tuttavia, poiché la funzione utilizza ancora le settimane parziali, la settimana 1 sarà di soli due giorni, poiché il primo martedì dopo il 1° gennaio è il 3 gennaio.

## Esempio 3 – unbroken\_weeks

[](https://help.qlik.com/en-US/sense/Subsystems/Hub/Content/Sense_Hub/Scripting/DateAndTimeFunctions/week.htm)

#### Script di caricamento e risultati

Panoramica

Aprire l'Editor di caricamento dati e aggiungere lo script di caricamento sotto in una nuova scheda.

Lo script di caricamento contiene lo stesso set di dati e lo stesso scenario del primo esempio.

In questo esempio, utilizziamo settimane intere.

Script di caricamento

```
SET DateFormat='MM/DD/YYYY';
SET FirstWeekDay=6;
SET BrokenWeeks=1;
SET ReferenceDay=0;

Transactions:
    Load
        *,
        WeekDay(date) as week_day,
        Week(date,6,0) as week_number
        ;
Load
*
Inline 
[
id,date,amount
8183,12/27/2022,58.27
8184,12/28/2022,67.42
8185,12/29/2022,23.80
8186,12/30/2022,82.06
8187,12/31/2021,40.56
8188,01/01/2022,37.23
8189,01/02/2022,17.17
8190,01/03/2022,88.27
8191,01/04/2022,57.42
8192,01/05/2022,53.80
8193,01/06/2022,82.06
8194,01/07/2022,40.56
8195,01/08/2022,53.67
8196,01/09/2022,26.63
8197,01/10/2022,72.48
8198,01/11/2022,18.37
8199,01/12/2022,45.26
8200,01/13/2022,58.23
8201,01/14/2022,18.52
];
```

Risultati

Caricare i dati e aprire un foglio. Creare una nuova tabella e aggiungere tali campi come dimensioni:

* id

* date

* week\_day

* week\_number

Schema della funzione week(), esempio di oggetto grafico

Schema della funzione week(), esempio di oggetto grafico

Schema della funzione week()week(), esempio di oggetto grafico ![ADD ALT TEXT HERE.....!!!!!!](https://help.qlik.com/it-IT/sense/May2026/Subsystems/Hub/Content/Resources/Images/scripting-functions-week-examples-chart-object.png)

Tabella dei risultati

| id | date | week\_day | numero\_settimana |
| --- | --- | --- | --- |
| 8183 | 12/27/2021 | Mon | 52 |
| 8184 | 28/12/2021 | Tue | 52 |
| 8185 | 29/12/2021 | Wed | 52 |
| 8186 | 30/12/2021 | Thu | 52 |
| 8187 | 12/31/2021 | Ven | 52 |
| 8188 | 01/01/2022 | Sat | 52 |
| 8189 | 01/02/2022 | Sun | 1 |
| 8190 | 01/03/2022 | Mon | 1 |
| 8191 | 01/04/2022 | Tue | 1 |
| 8192 | 01/05/2022 | Wed | 1 |
| 8193 | 01/06/2022 | Thu | 1 |
| 8194 | 01/07/2022 | Ven | 1 |
| 8195 | 01/08/2022 | Sat | 1 |
| 8196 | 09/01/2022 | Sun | 2 |
| 8197 | 10/01/2022 | Mon | 2 |
| 8198 | 01/11/2022 | Tue | 2 |
| 8199 | 12/01/2022 | Wed | 2 |
| 8200 | 13/01/2022 | Thu | 2 |
| 8201 | 01/14/2022 | Ven | 2 |

Il parametro first\_week\_date è impostato su 1, rendendo il martedì il primo giorno della settimana. Il parametro broken\_weeks viene impostato a 0, forzando la funzione a utilizzare settimane intere. Infine, il terzo parametro imposta il reference\_day su 2.

Il parametro first\_week\_date è impostato su 6, rendendo la domenica il primo giorno della settimana. Il parametro broken\_weeks è impostato su 0, obbligando la funzione a utilizzare settimane intere.

Schema della funzione week(), esempio di utilizzo di settimane intere

Schema della funzione week(), esempio di utilizzo di settimane intere

Schema della funzione week(), esempio di utilizzo di settimane intere ![Diagram displaying how the week function breaks up the dates of year into corresponding week numbers. Here, since we use unbroken weeks, week 1 of the year starts on January 2, a Sunday.](https://help.qlik.com/it-IT/sense/May2026/Subsystems/Hub/Content/Resources/Images/scripting-functions-week-examples-unbroken-weeks.png)

Utilizzando le settimane intere, la settimana 1 non inizia necessariamente il 1° gennaio, ma deve avere un minimo di quattro giorni. Pertanto, nel set di dati, la settimana 52 si conclude sabato 1° gennaio 2022. La settimana 1 inizia con la variabile di sistema FirstWeekDay, che è domenica 2 gennaio. Questa settimana si concluderà il sabato successivo, l'8 gennaio.

## Esempio 4 – reference\_day

[](https://help.qlik.com/en-US/sense/Subsystems/Hub/Content/Sense_Hub/Scripting/DateAndTimeFunctions/week.htm)

#### Script di caricamento e risultati

Panoramica

Aprire l'Editor caricamento dati e aggiungere lo script di caricamento sotto in una nuova sezione.

Lo script di caricamento contiene:

* Vengono utilizzati lo stesso set di dati e lo stesso scenario del terzo esempio.

* La creazione di un campo, week\_number, che restituisce l'anno e il numero di settimana in cui sono avvenute le transazioni.

* La creazione di un campo chiamato week\_day, che mostra il valore del giorno della settimana per ogni data di transazione.

Inoltre, devono essere soddisfatte le seguenti condizioni:

* La settimana lavorativa inizia di martedì.

* L'azienda utilizza settimane intere.

* Il reference\_day valore è 2. In altre parole, il numero minimo di giorni a gennaio nella settimana 1 sarà 2.

Script di caricamento

```
SET DateFormat='MM/DD/YYYY';
SET FirstWeekDay=6;
SET BrokenWeeks=1;
SET ReferenceDay=0;

Transactions:
    Load
        *,
        WeekDay(date) as week_day,
        Week(date,1,0,2) as week_number
        ;
Load
*
Inline 
[
id,date,amount
8183,12/27/2022,58.27
8184,12/28/2022,67.42
8185,12/29/2022,23.80
8186,12/30/2022,82.06
8187,12/31/2021,40.56
8188,01/01/2022,37.23
8189,01/02/2022,17.17
8190,01/03/2022,88.27
8191,01/04/2022,57.42
8192,01/05/2022,53.80
8193,01/06/2022,82.06
8194,01/07/2022,40.56
8195,01/08/2022,53.67
8196,01/09/2022,26.63
8197,01/10/2022,72.48
8198,01/11/2022,18.37
8199,01/12/2022,45.26
8200,01/13/2022,58.23
8201,01/14/2022,18.52
];
```

Risultati

Caricare i dati e aprire un foglio. Creare una nuova tabella e aggiungere tali campi come dimensioni:

* id

* date

* week\_day

* week\_number

Tabella dei risultati

| id | date | week\_day | numero\_settimana |
| --- | --- | --- | --- |
| 8183 | 12/27/2021 | Mon | 52 |
| 8184 | 28/12/2021 | Tue | 1 |
| 8185 | 29/12/2021 | Wed | 1 |
| 8186 | 30/12/2021 | Thu | 1 |
| 8187 | 12/31/2021 | Ven | 1 |
| 8188 | 01/01/2022 | Sat | 1 |
| 8189 | 01/02/2022 | Sun | 1 |
| 8190 | 01/03/2022 | Mon | 1 |
| 8191 | 01/04/2022 | Tue | 2 |
| 8192 | 01/05/2022 | Wed | 2 |
| 8193 | 01/06/2022 | Thu | 2 |
| 8194 | 01/07/2022 | Ven | 2 |
| 8195 | 01/08/2022 | Sat | 2 |
| 8196 | 09/01/2022 | Sun | 2 |
| 8197 | 10/01/2022 | Mon | 2 |
| 8198 | 01/11/2022 | Tue | 3 |
| 8199 | 12/01/2022 | Wed | 3 |
| 8200 | 13/01/2022 | Thu | 3 |
| 8201 | 01/14/2022 | Ven | 3 |

Il parametro first\_week\_date è impostato su 1, rendendo il martedì il primo giorno della settimana. Il parametro broken\_weeks è impostato su 0, obbligando la funzione a utilizzare settimane intere. Infine, il terzo parametro imposta il parametro reference\_day a 2.

Schema della funzione week(), esempio reference\_day

Schema della funzione week(), esempio reference\_day

Schema della funzione week()week(), esempio reference\_day ![Diagram displaying how the week function breaks up the dates of year into corresponding week numbers. Here, week 1 begins on December 28, 2021, and concludes on Monday, January 3, 2022.](https://help.qlik.com/it-IT/sense/May2026/Subsystems/Hub/Content/Resources/Images/scripting-functions-week-examples-reference-day.png)

Con la funzione che utilizza settimane intere e un valore reference\_day di 2 come parametro, la settimana 1 deve includere solo due giorni di gennaio. Poiché il primo giorno feriale è il martedì, la settimana 1 inizia il 28 dicembre 2021 e si conclude lunedì 3 gennaio 2022.

## Esempio 5 – Esempio di oggetto grafico

[](https://help.qlik.com/en-US/sense/Subsystems/Hub/Content/Sense_Hub/Scripting/DateAndTimeFunctions/week.htm)

#### Carica script ed espressione del grafico

Panoramica

Aprire l'Editor di caricamento dati e aggiungere lo script di caricamento sotto in una nuova scheda.

Lo script di caricamento contiene lo stesso set di dati e lo stesso scenario del primo esempio.

Tuttavia, in questo esempio, il set di dati invariato viene caricato nell'applicazione. Il calcolo che restituisce il numero della settimana viene creato come misura in un oggetto grafico.

Script di caricamento

```
Transactions:
Load
*
Inline 
[
id,date,amount
8183,12/27/2022,58.27
8184,12/28/2022,67.42
8185,12/29/2022,23.80
8186,12/30/2022,82.06
8187,12/31/2021,40.56
8188,01/01/2022,37.23
8189,01/02/2022,17.17
8190,01/03/2022,88.27
8191,01/04/2022,57.42
8192,01/05/2022,53.80
8193,01/06/2022,82.06
8194,01/07/2022,40.56
8195,01/08/2022,53.67
8196,01/09/2022,26.63
8197,01/10/2022,72.48
8198,01/11/2022,18.37
8199,01/12/2022,45.26
8200,01/13/2022,58.23
8201,01/14/2022,18.52
];
```

Risultati

Procedere come indicato di seguito:

1. Caricare i dati e aprire un foglio. Creare una nuova tabella.

2. Aggiungere i seguenti campi come dimensioni:

   * id

   * date

3. Quindi, creare la seguente misura:

   =week (date)

4. Creare una misura , week\_day che mostri il valore del giorno della settimana per ogni data di transazione:

   =weekday(date)

Tabella dei risultati

| id | date | =settimana(data) | =weekday(date) |
| --- | --- | --- | --- |
| 8183 | 12/27/2021 | 53 | Mon |
| 8184 | 28/12/2021 | 53 | Tue |
| 8185 | 29/12/2021 | 53 | Wed |
| 8186 | 30/12/2021 | 53 | Thu |
| 8187 | 12/31/2021 | 53 | Ven |
| 8188 | 01/01/2022 | 1 | Sat |
| 8189 | 01/02/2022 | 2 | Sun |
| 8190 | 01/03/2022 | 2 | Mon |
| 8191 | 01/04/2022 | 2 | Tue |
| 8192 | 01/05/2022 | 2 | Wed |
| 8193 | 01/06/2022 | 2 | Thu |
| 8194 | 01/07/2022 | 2 | Ven |
| 8195 | 01/08/2022 | 2 | Sat |
| 8196 | 09/01/2022 | 3 | Sun |
| 8197 | 10/01/2022 | 3 | Mon |
| 8198 | 01/11/2022 | 3 | Tue |
| 8199 | 12/01/2022 | 3 | Wed |
| 8200 | 13/01/2022 | 3 | Thu |
| 8201 | 01/14/2022 | 3 | Ven |

Il campo week\_number viene creato nell'istruzione di caricamento precedente mediante l'uso della funzione week() e trasferendo il campo date come argomento della funzione.

Non vengono passati altri parametri alla funzione e quindi sono attive le seguenti variabili predefinite che influenzano la funzione week():

* BrokenWeeks: il conteggio delle settimane inizia il 1 gennaio

* FirstWeekDay: il primo giorno della settimana è la domenica

Schema della funzione week(), esempio di oggetto grafico

Schema della funzione week(), esempio di oggetto grafico

Schema della funzione week()week(), esempio di oggetto grafico ![Diagram displaying how the week function breaks up the dates of year into corresponding week numbers. Here, week 1 begins on January 1, with week 2 starting on January 2.](https://help.qlik.com/it-IT/sense/May2026/Subsystems/Hub/Content/Resources/Images/scripting-functions-week-examples-def-sys-variables.png)

Poiché l'applicazione utilizza la variabile di sistema predefinita BrokenWeeks, la settimana 1 inizia il 1° gennaio, un sabato.

A causa della variabile di sistema FirstWeekDay predefinita, le settimane iniziano di domenica. La prima domenica dopo il 1° gennaio è il 2 gennaio, quando inizia la seconda settimana.

## Esempio 6 – Scenario

[](https://help.qlik.com/en-US/sense/Subsystems/Hub/Content/Sense_Hub/Scripting/DateAndTimeFunctions/week.htm)

#### Carica script ed espressione del grafico

Panoramica

Aprire l'Editor caricamento dati e aggiungere lo script di caricamento sotto in una nuova sezione.

Lo script di caricamento contiene:

* Un set di dati contenente un insieme di transazioni per l'ultima settimana del 2019 e le prime due settimane del 2020 caricato in una tabella denominata Transactions.

* Il campo della data fornito nel formato della variabile di sistema DateFormat (MM/GG/AAAA).

L'applicazione utilizza principalmente le settimane parziali nel suo dashboard. Tuttavia, l'utente finale desidera un oggetto grafico che presenti il totale delle vendite per settimana utilizzando settimane intere. Il giorno di riferimento dovrebbe essere il 2 gennaio, con le settimane che iniziano di martedì. Questo può essere ottenuto anche quando la dimensione non è disponibile nel modello dati, utilizzando la funzione week() come dimensione calcolata nel grafico.

Script di caricamento

```
SET BrokenWeeks=1;
SET ReferenceDay=0;
SET DateFormat='MM/DD/YYYY';

Transactions:
Load
*
Inline 
[
id,date,amount
8183,12/27/2019,58.27
8184,12/28/2019,67.42
8185,12/29/2019,23.80
8186,12/30/2019,82.06
8187,12/31/2019,40.56
8188,01/01/2020,37.23
8189,01/02/2020,17.17
8190,01/03/2020,88.27
8191,01/04/2020,57.42
8192,01/05/2020,53.80
8193,01/06/2020,82.06
8194,01/07/2020,40.56
8195,01/08/2020,53.67
8196,01/09/2020,26.63
8197,01/10/2020,72.48
8198,01/11/2020,18.37
8199,01/12/2020,45.26
8200,01/13/2020,58.23
8201,01/14/2020,18.52
];
```

Risultati

Procedere come indicato di seguito:

1. Caricare i dati e aprire un foglio. Creare una nuova tabella.

2. Creare la seguente dimensione calcolata:

   =week(date)

3. Quindi, creare la seguente aggregazione misura:

   =sum(amount)

4. Impostare la Formattazione numero della misura su Denaro.

5. Selezionare il menu Ordinamento e, per la dimensione calcolata, rimuovere l'ordinamento personalizzato.

6. Deselezionare le opzioni Ordina per numero e Ordina alfabeticamente.

Tabella dei risultati

| settimana(data) | sum(amount) |
| --- | --- |
| 52 | $125.69 |
| 53 | $146.42 |
| 1 | $200.09 |
| 2 | $347.57 |
| 3 | $122.01 |