# lunarweekend - fonction de script et fonction de graphique

Cette fonction renvoie une valeur correspondant à un horodatage de la dernière milliseconde de la semaine lunaire contenant l'argument date. Les semaines lunaires figurant dans QlikView sont définies en comptant le 1er janvier comme le premier jour de la semaine.

Syntaxe :

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

**Type de données renvoyé :** double

Arguments :

Arguments LunarweekEnd

| Argument | Description |
| --- | --- |
| date | Date à évaluer. |
| period\_no | period\_no est un entier ou une expression qui aboutit à un entier, où la valeur 0 indique la semaine lunaire contenant l'argument date. Les valeurs négatives spécifiées pour period\_no indiquent les semaines lunaires passées tandis que les valeurs positives désignent les semaines lunaires à venir. |
| first\_week\_day | Décalage pouvant être supérieur ou inférieur à zéro. Il modifie le début de l'année du nombre de jours et/ou de fractions de jour spécifié. |

Exemples et résultats :

Ces exemples utilisent le format de date DD/MM/YYYY. Le format de date est indiqué dans l'instruction SET DateFormat située en haut de votre script de chargement. Modifiez le format utilisé dans les exemples en fonction de vos exigences.

Exemple 1:

`lunarweekend('12/01/2013')`

Renvoie 14/01/2013 23:59:59.

Exemple 2:

`lunarweekend('12/01/2013', -1)`

Renvoie 7/01/2013 23:59:59.

Exemple 3:

`lunarweekend('12/01/2013', 0, 1)`

Renvoie 15/01/2013 23:59:59.

Exemple 4:

Ajoutez l'exemple de script à votre document et exécutez-le. Ensuite, ajoutez au moins les champs répertoriés dans la colonne des résultats à une feuille de votre document afin de visualiser le résultat.

Cet exemple permet de rechercher le dernier jour de la semaine lunaire de chaque date de facture dans la table, où la date est décalée d'une semaine lorsque period\_no est défini sur 1.

`TempTable:` `LOAD RecNo() as InvID, * Inline [` `InvDate` `28/03/2012` `10/12/2012` `5/2/2013` `31/3/2013` `19/5/2013` `15/9/2013` `11/12/2013` `2/3/2014` `14/5/2014` `13/6/2014` `7/7/2014` `4/8/2014` `];` ` ` `InvoiceData:` `LOAD *,` `LunarWeekEnd(InvDate, 1) AS LWkEnd` `Resident TempTable;`

`Drop table TempTable;`

La table résultante présente les dates initiales et une colonne contenant la valeur de retour de la fonction lunarweekend(). Vous pouvez afficher l'horodatage complet en spécifiant le formatage dans les propriétés du graphique.

Résultats de l'exemple 4

| InvDate | LWkEnd |
| --- | --- |
| 28/03/2012 | 07/04/2012 |
| 10/12/2012 | 22/12/2012 |
| 5/2/2013 | 18/02/2013 |
| 31/3/2013 | 08/04/2013 |
| 19/5/2013 | 27/05/2013 |
| 15/9/2013 | 23/09/2013 |
| 11/12/2013 | 23/12/2013 |
| 2/3/2014 | 11/03/2014 |
| 14/5/2014 | 27/05/2014 |
| 13/6/2014 | 24/06/2014 |
| 7/7/2014 | 15/07/2014 |
| 4/8/2014 | 12/08/2014 |