# inlunarweektodate - fonction de script et fonction de graphique

Cette fonction renvoie la valeur true si l'argument timestamp se trouve dans la partie de la semaine lunaire jusqu'à la dernière milliseconde spécifiée dans base\_date. Les semaines lunaires figurant dans QlikView sont définies en comptant le 1er janvier comme le premier jour de la semaine.

Syntaxe :

InLunarWeekToDate (timestamp, base\_date, period\_no [, first\_week\_day])

**Type de données renvoyé :** booléen

Arguments :

Arguments InLunarWeekToDate

| Argument | Description |
| --- | --- |
| timestamp | Date à comparer à base\_date. |
| base\_date | Date utilisée pour évaluer la semaine lunaire. |
| peroid\_no | Il est possible de décaler la semaine lunaire à l'aide de l'argument period\_no. period\_no est un entier, où la valeur 0 indique la semaine lunaire comprenant l'argument base\_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. |
| week\_start | 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é. |

Exemple 1:

`inlunarweektodate('12/01/2013', '13/01/2013',   0)`

Renvoie True. Car la valeur de timestamp, soit le 12/01/2013, tombe dans la partie de la semaine comprise entre le 08/01/2013 et le 13/01/2013.

Exemple 2:

`inlunarweektodate('12/01/2013', '11/01/2013',   0)`

Renvoie False. Car la valeur de timestamp est postérieure à la valeur de base\_date, même si les deux dates font partie de la même semaine lunaire, soit avant le 12/01/2012.

Exemple 3:

`inlunarweektodate('12/01/2006', '05/01/2006',   1)`

Renvoie True. La définition de la valeur 1 pour period\_no a pour effet de retarder la date de référence base\_date d'une semaine. De ce fait, la valeur de timestamp tombe dans la partie de la semaine lunaire.

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 vérifier si une date de facture tombe dans la partie de la semaine décalée par rapport à la valeur de base\_date de quatre semaines.

`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 *,` `InLunarWeekToDate(InvDate, '07/01/2013', 4) AS InLWeek2DPlus4` `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 inlunarweek().

La fonction renvoie True pour la valeur de InvDate 5/2/2013, car la valeur de base\_date, soit le 11/01/2013, est décalée de quatre semaines et tombe ainsi dans la partie de la semaine comprise entre le 5/02/2013 et le 07/02/2013.

Résultats de l'exemple 4

| InvDate | InLWeek2DPlus4 |
| --- | --- |
| 28/03/2012 | 0 (False) |
| 10/12/2012 | 0 (False) |
| 5/2/2013 | -1 (True) |
| 31/3/2013 | 0 (False) |
| 19/5/2013 | 0 (False) |
| 15/9/2013 | 0 (False) |
| 11/12/2013 | 0 (False) |
| 2/3/2014 | 0 (False) |
| 14/5/2014 | 0 (False) |
| 13/6/2014 | 0 (False) |
| 7/7/2014 | 0 (False) |
| 4/8/2014 | 0 (False) |