# lunarweekname Funzione per script e grafici

Questa funzione restituisce un valore di visualizzazione che mostra l'anno e il numero della settimana lunare corrispondente a un indicatore temporale del primo millisecondo del primo giorno della settimana lunare contenente date. Le settimane lunari in Qlik Sense sono definite contando il 1° gennaio come primo giorno della settimana e, a parte l'ultima settimana dell'anno, conterranno esattamente sette giorni.

Sintassi:

LunarWeekName(date [, period\_no[, first\_week\_day]])

Tipo di dati restituiti: duale

Schema esemplificativo della funzione `lunarweekname()`

Schema esemplificativo della funzione `lunarweekname()`

Schema esemplificativo della funzione `lunarweekname()`lunarweekname() ![Schema di esempio che mostra come la funzione lunarweekname converte una data in ingresso in un valore che mostra una combinazione di anno e numero di settimana lunare.](https://help.qlik.com/it-IT/cloud-services/Subsystems/Hub/Content/Resources/Images/scripting-functions-lunarweekname-general.png)

La funzione `lunarweekname()` determina in quale settimana lunare cade la data, iniziando il conteggio delle settimane dal 1° gennaio. Restituisce quindi un valore composto da `year/weekcount`.

Argomenti

| Argomento | Descrizione |
| --- | --- |
| date | La data o la data e ora da valutare. |
| period\_no | period\_no è un numero intero o un'espressione la cui risoluzione è un numero intero, in cui il valore 0 indica la settimana lunare che contiene il valore date. I valori negativi di period\_no indicano le settimane lunari precedenti, mentre i valori positivi indicano le settimane lunari successive. |
| first\_week\_day | Un differimento che può essere maggiore o minore di zero. Ciò modifica l'inizio dell'anno in base al numero specificato di giorni e/o frazioni di un giorno. |

## Quando usare lunarweekname

La funzione `lunarweekname()` è utile quando si desidera confrontare le aggregazioni per settimane lunari. Ad esempio, la funzione potrebbe essere utilizzata per determinare le vendite totali dei prodotti per settimana lunare. Le settimane lunari sono utili quando si vuole garantire che tutti i valori contenuti nella prima settimana dell'anno contengano solo valori a partire dal 1° gennaio.

È possibile creare queste dimensioni nello script di caricamento utilizzando la funzione che consente di creare un campo in una tabella Calendario principale. La funzione può anche essere utilizzata direttamente in un grafico come dimensione calcolata.

Esempi di funzioni

| Esempio | Risultato |
| --- | --- |
| `lunarweekname('01/12/2013')` | Restituisce 2006/02. |
| `lunarweekname('01/12/2013', -1)` | Restituisce 2006/01. |
| `lunarweekname('01/12/2013', 0, 1)` | Restituisce 2006/02. |

## 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. Per ulteriori informazioni, vedere [Modifica delle impostazioni internazionali per applicazioni e script](https://help.qlik.com/it-IT/cloud-services/Subsystems/Hub/Content/Sense_Hub/Apps/regional-settings-in-apps.htm).

Le impostazioni regionali predefinite nelle applicazioni si basano sul profilo utente. Queste impostazioni di formato regionale non riguardano la lingua visualizzata nell'interfaccia utente Qlik Cloud. Qlik Cloud verrà visualizzato nella stessa lingua del browser utilizzato.

Se si è un creatore di applicazioni, è possibile impostare la regione predefinita per le applicazioni che si creano. Per ulteriori informazioni, vedere [Regolazione delle impostazioni internazionali preferite per la creazione di app e script in Qlik Cloud Analytics](https://help.qlik.com/it-IT/cloud-services/Subsystems/Hub/Content/Sense_Hub/UserInterface/Languages.htm#Setting).

## Esempio 1 – data senza alcun argomento aggiuntivo

[](https://help.qlik.com/en-US/cloud-services/Subsystems/Hub/Content/Sense_Hub/Scripting/DateAndTimeFunctions/lunarweekname.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 il 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, `  lunar_week_name `, che restituisce l'anno e il numero della settimana lunare in cui sono avvenute le transazioni.

Script di caricamento

```
SET DateFormat='MM/DD/YYYY';

Transactions:
    Load
        *,
        lunarweekname(date) as lunar_week_name
        ;
Load
*
Inline 
[
id,date,amount
8188,1/7/2022,17.17
8189,1/19/2022,37.23
8190,2/28/2022,88.27
8191,2/5/2022,57.42
8192,3/16/2022,53.80
8193,4/1/2022,82.06
8194,5/7/2022,40.39
8195,5/16/2022,87.21
8196,6/15/2022,95.93
8197,6/26/2022,45.89
8198,7/9/2022,36.23
8199,7/22/2022,25.66
8200,7/23/2022,82.77
8201,7/27/2022,69.98
8202,8/2/2022,76.11
8203,8/8/2022,25.12
8204,8/19/2022,46.23
8205,9/26/2022,84.21
8206,10/14/2022,96.24
8207,10/29/2022,67.67
];
```

Risultati

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

* `date`

* `lunar_week_name`

Tabella dei risultati

| date | nome della settimana lunare |
| --- | --- |
| 1/7/2022 | 2022/01 |
| 1/19/2022 | 2022/03 |
| 2/5/2022 | 2022/06 |
| 2/28/2022 | 2022/09 |
| 3/16/2022 | 2022/11 |
| 4/1/2022 | 2022/13 |
| 5/7/2022 | 2022/19 |
| 5/16/2022 | 2022/20 |
| 6/15/2022 | 2022/24 |
| 6/26/2022 | 2022/26 |
| 7/9/2022 | 2022/28 |
| 7/22/2022 | 2022/29 |
| 7/23/2022 | 2022/30 |
| 7/27/2022 | 2022/30 |
| 8/2/2022 | 2022/31 |
| 8/8/2022 | 2022/32 |
| 8/19/2022 | 2022/33 |
| 9/26/2022 | 2022/39 |
| 10/14/2022 | 2022/41 |
| 10/29/2022 | 2022/44 |

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

La funzione `lunarweekname()` identifica la settimana lunare in cui cade il valore della data, restituendo l'anno e il numero della settimana di quella data.

Schema della funzione `lunarweekname()`, esempio senza argomenti aggiuntivi

Schema della funzione `lunarweekname()`, esempio senza argomenti aggiuntivi

Schema della funzione `lunarweekname()`lunarweekname(), esempio senza argomenti aggiuntivi ![Schema che mostra come la funzione lunarweekname converte una data in ingresso in un valore che mostra una combinazione di anno e numero di settimana lunare.](https://help.qlik.com/it-IT/cloud-services/Subsystems/Hub/Content/Resources/Images/scripting-functions-lunarweekname-examples-no-add-arg.png)

La transazione 8189 è avvenuta il 19 gennaio. La funzione `lunarweekname()` identifica che questa data cade nella settimana lunare che inizia il 15 gennaio; si tratta della terza settimana lunare dell'anno. Pertanto, il valore `lunar_week_name` restituito per tale transazione è 2022/03.

## Esempio 2 - data con argomento period\_no

[](https://help.qlik.com/en-US/cloud-services/Subsystems/Hub/Content/Sense_Hub/Scripting/DateAndTimeFunctions/lunarweekname.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 primo esempio.

* La creazione di un campo, `previous_lunar_week_name`, che restituisce l'anno e il numero di settimana per la settimana lunare prima di quella in cui sono avvenute le transazioni.

Script di caricamento

```
SET DateFormat='MM/DD/YYYY';

Transactions:
    Load
        *,
        lunarweekname(date,-1) as previous_lunar_week_name
        ;
Load
*
Inline 
[
id,date,amount
8188,1/7/2022,17.17
8189,1/19/2022,37.23
8190,2/28/2022,88.27
8191,2/5/2022,57.42
8192,3/16/2022,53.80
8193,4/1/2022,82.06
8194,5/7/2022,40.39
8195,5/16/2022,87.21
8196,6/15/2022,95.93
8197,6/26/2022,45.89
8198,7/9/2022,36.23
8199,7/22/2022,25.66
8200,7/23/2022,82.77
8201,7/27/2022,69.98
8202,8/2/2022,76.11
8203,8/8/2022,25.12
8204,8/19/2022,46.23
8205,9/26/2022,84.21
8206,10/14/2022,96.24
8207,10/29/2022,67.67
];
```

Risultati

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

* `date`

* `previous_lunar_week_name`

Tabella dei risultati

| date | Nome settimana lunare precedente |
| --- | --- |
| 1/7/2022 | 2021/52 |
| 1/19/2022 | 2022/02 |
| 2/5/2022 | 2022/05 |
| 2/28/2022 | 2022/08 |
| 3/16/2022 | 2022/10 |
| 4/1/2022 | 2022/12 |
| 5/7/2022 | 2022/18 |
| 5/16/2022 | 2022/19 |
| 6/15/2022 | 2022/23 |
| 6/26/2022 | 2022/25 |
| 7/9/2022 | 2022/27 |
| 7/22/2022 | 2022/28 |
| 7/23/2022 | 2022/29 |
| 7/27/2022 | 2022/29 |
| 8/2/2022 | 2022/30 |
| 8/8/2022 | 2022/31 |
| 8/19/2022 | 2022/32 |
| 9/26/2022 | 2022/38 |
| 10/14/2022 | 2022/40 |
| 10/29/2022 | 2022/43 |

In questo caso, poiché è stato utilizzato un valore `period_no` di -1 come argomento di offset nella funzione `lunarweekname()`, la funzione identifica innanzitutto la settimana lunare in cui sono avvenute le transazioni. Quindi restituisce l'anno e il numero di una settimana prima.

Schema della funzione `lunarweekname()`, esempio di period\_no

Schema della funzione `lunarweekname()`, esempio di period\_no

Schema della funzione `lunarweekname()`lunarweekname(), esempio di period\_no ![Schema che mostra come la funzione lunarweekname converta la data inserita per una transazione in un valore combinato che mostra l'anno e il numero della settimana lunare in cui è avvenuta la transazione.](https://help.qlik.com/it-IT/cloud-services/Subsystems/Hub/Content/Resources/Images/scripting-functions-lunarweekname-examples-period-no.png)

La transazione 8189 è avvenuta il 19 gennaio. La funzione `lunarweekname()` identifica che questa transazione è avvenuta nella terza settimana lunare dell'anno, quindi restituisce l'anno e il valore di una settimana prima, 2022/02, per il campo `previous_lunar_week_name`.

## Esempio 3 – data con argomento first\_week\_day

[](https://help.qlik.com/en-US/cloud-services/Subsystems/Hub/Content/Sense_Hub/Scripting/DateAndTimeFunctions/lunarweekname.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, abbiamo impostato che le settimane lunari inizino il 5 gennaio.

Script di caricamento

```
SET DateFormat='MM/DD/YYYY';

Transactions:
    Load
        *,
        lunarweekname(date,0,4) as lunar_week_name
        ;
Load
*
Inline 
[
id,date,amount
8188,1/7/2022,17.17
8189,1/19/2022,37.23
8190,2/28/2022,88.27
8191,2/5/2022,57.42
8192,3/16/2022,53.80
8193,4/1/2022,82.06
8194,5/7/2022,40.39
8195,5/16/2022,87.21
8196,6/15/2022,95.93
8197,6/26/2022,45.89
8198,7/9/2022,36.23
8199,7/22/2022,25.66
8200,7/23/2022,82.77
8201,7/27/2022,69.98
8202,8/2/2022,76.11
8203,8/8/2022,25.12
8204,8/19/2022,46.23
8205,9/26/2022,84.21
8206,10/14/2022,96.24
8207,10/29/2022,67.67
];
```

Risultati

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

* `date`

* `lunar_week_name`

Tabella dei risultati

| date | nome della settimana lunare |
| --- | --- |
| 1/7/2022 | 2022/01 |
| 1/19/2022 | 2022/03 |
| 2/5/2022 | 2022/05 |
| 2/28/2022 | 2022/08 |
| 3/16/2022 | 2022/11 |
| 4/1/2022 | 2022/13 |
| 5/7/2022 | 2022/18 |
| 5/16/2022 | 2022/19 |
| 6/15/2022 | 2022/24 |
| 6/26/2022 | 2022/25 |
| 7/9/2022 | 2022/27 |
| 7/22/2022 | 2022/29 |
| 7/23/2022 | 2022/29 |
| 7/27/2022 | 2022/30 |
| 8/2/2022 | 2022/30 |
| 8/8/2022 | 2022/31 |
| 8/19/2022 | 2022/33 |
| 9/26/2022 | 2022/38 |
| 10/14/2022 | 2022/41 |
| 10/29/2022 | 2022/43 |

Schema della funzione `lunarweekname()`, esempio first\_week\_day

Schema della funzione `lunarweekname()`, esempio first\_week\_day

Schema della funzione `lunarweekname()`lunarweekname(), esempio first\_week\_day ![Schema che mostra come la funzione lunarweekname converte la data inserita per ogni transazione in un valore combinato che mostra l'anno e il numero della settimana lunare.](https://help.qlik.com/it-IT/cloud-services/Subsystems/Hub/Content/Resources/Images/scripting-functions-lunarweekname-examples-first-week-day.png)

In questo caso, poiché nella funzione ` lunarweekname()  ` viene utilizzato l'argomento `first_week_date` di 4, si sposta l'inizio delle settimane lunari dal 1° gennaio al 5 gennaio.

La transazione 8188 è avvenuta il 7 gennaio. Poiché le settimane lunari iniziano il 5 gennaio, la funzione `lunarweekname()` identifica che la settimana lunare contenente il 7 gennaio è la prima settimana lunare dell'anno. Pertanto, il valore `lunar_week_name` restituito per quella transazione è 2022/01.

## Esempio 4 - Esempio di oggetto grafico

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

#### Script di caricamento ed espressione del grafico

Panoramica

Aprire l'editor 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 lunare e l'anno in cui sono avvenute le transazioni viene creato come misura in un oggetto grafico dell'applicazione.

Script di caricamento

```
Transactions:
Load
*
Inline 
[
id,date,amount
8188,1/7/2022,17.17
8189,1/19/2022,37.23
8190,2/28/2022,88.27
8191,2/5/2022,57.42
8192,3/16/2022,53.80
8193,4/1/2022,82.06
8194,5/7/2022,40.39
8195,5/16/2022,87.21
8196,6/15/2022,95.93
8197,6/26/2022,45.89
8198,7/9/2022,36.23
8199,7/22/2022,25.66
8200,7/23/2022,82.77
8201,7/27/2022,69.98
8202,8/2/2022,76.11
8203,8/8/2022,25.12
8204,8/19/2022,46.23
8205,9/26/2022,84.21
8206,10/14/2022,96.24
8207,10/29/2022,67.67
];
```

Risultati

Caricare i dati e aprire un foglio. Creare una nuova tabella e aggiungere questo campo come dimensione: date.

Per calcolare la data di inizio della settimana lunare in cui avviene una transazione, creare la seguente misura:

=lunarweekname(date)

Tabella dei risultati

| date | =lunarweekname(date) |
| --- | --- |
| 1/7/2022 | 2022/01 |
| 1/19/2022 | 2022/03 |
| 2/5/2022 | 2022/06 |
| 2/28/2022 | 2022/09 |
| 3/16/2022 | 2022/11 |
| 4/1/2022 | 2022/13 |
| 5/7/2022 | 2022/19 |
| 5/16/2022 | 2022/20 |
| 6/15/2022 | 2022/24 |
| 6/26/2022 | 2022/26 |
| 7/9/2022 | 2022/28 |
| 7/22/2022 | 2022/29 |
| 7/23/2022 | 2022/30 |
| 7/27/2022 | 2022/30 |
| 8/2/2022 | 2022/31 |
| 8/8/2022 | 2022/32 |
| 8/19/2022 | 2022/33 |
| 9/26/2022 | 2022/39 |
| 10/14/2022 | 2022/41 |
| 10/29/2022 | 2022/44 |

La misura lunar\_week\_name viene creata nell'oggetto grafico mediante l'utilizzo della funzione lunarweekname() e trasferendo il campo date come argomento della funzione.

La funzione lunarweekname() identifica la settimana lunare in cui cade il valore della data, restituendo l'anno e il numero della settimana di quella data.

Schema della funzione lunarweekname(), esempio di oggetto grafico

Schema della funzione lunarweekname(), esempio di oggetto grafico

Schema della funzione lunarweekname()lunarweekname(), esempio di oggetto grafico ![Schema che mostra come la funzione lunarweekname converte una data in ingresso in un valore che mostra una combinazione di anno e numero di settimana lunare.](https://help.qlik.com/it-IT/cloud-services/Subsystems/Hub/Content/Resources/Images/scripting-functions-lunarweekname-examples-chart-object.png)

La transazione 8189 è avvenuta il 19 gennaio. La funzione lunarweekname() identifica che questa data cade nella settimana lunare che inizia il 15 gennaio; si tratta della terza settimana lunare dell'anno. Pertanto, il valore lunar\_week\_name per tale transazione è 2022/03.

## Esempio 5 – Scenario

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

#### Script di caricamento 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 il 2022, caricato in una tabella denominata Transactions.

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

L'utente finale desidera un oggetto grafico che presenti le vendite totali per settimana per l'anno in corso. La settimana 1, con una durata di sette giorni, dovrebbe iniziare il 1° gennaio. È possibile ottenere questo risultato anche quando questa dimensione non è disponibile nel modello di dati, utilizzando la funzione lunarweekname() come dimensione calcolata nel grafico.

Script di caricamento

```
SET DateFormat='MM/DD/YYYY';

Transactions:
Load
*
Inline 
[
id,date,amount
8188,1/7/2022,17.17
8189,1/19/2022,37.23
8190,2/28/2022,88.27
8191,2/5/2022,57.42
8192,3/16/2022,53.80
8193,4/1/2022,82.06
8194,5/7/2022,40.39
8195,5/16/2022,87.21
8196,6/15/2022,95.93
8197,6/26/2022,45.89
8198,7/9/2022,36.23
8199,7/22/2022,25.66
8200,7/23/2022,82.77
8201,7/27/2022,69.98
8202,8/2/2022,76.11
8203,8/8/2022,25.12
8204,8/19/2022,46.23
8205,9/26/2022,84.21
8206,10/14/2022,96.24
8207,10/29/2022,67.67
];
```

Risultati

Procedere come indicato di seguito:

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

2. Creare una dimensione calcolata utilizzando la seguente espressione:

   =lunarweekname(date)

3. Calcolare le vendite totali utilizzando la seguente misura di aggregazione:

   =sum(amount)

4. Impostare la Formattazione numero della misura su Denaro.

Tabella dei risultati

| =lunarweekname(date) | sum(amount) |
| --- | --- |
| 2022/01 | $17.17 |
| 2022/03 | $37.23 |
| 2022/06 | $57.42 |
| 2022/09 | $88.27 |
| 2022/11 | $53.80 |
| 2022/13 | $82.06 |
| 2022/19 | $40.39 |
| 2022/20 | $87.21 |
| 2022/24 | $95.93 |
| 2022/26 | $45.89 |
| 2022/28 | $36.23 |
| 2022/29 | $25.66 |
| 2022/30 | $152.75 |
| 2022/31 | $76.11 |
| 2022/32 | $25.12 |
| 2022/33 | $46.23 |
| 2022/39 | $84.21 |
| 2022/41 | $96.24 |
| 2022/44 | $67.67 |