Concept : formules avec fonction Day(this) et calendriers personnalisés
Suite à l'introduction de la modélisation flexible des temps dans la version 2017.2, l'utilisation de
day(this)
dans les formules est interprété différemment selon que votre instance utilise un calendrier classique ou un calendrier personnalisé. Les calendriers existants sont des calendriers créés avant la version 2017.2 qui n'ont pas été modifiés dans la zone d'administration des temps. Voir Étapes : modifier les calendriers.Le moyen le plus facile de déterminer si votre calendrier est existant est de regarder la barre d'outils d'Administration des temps. Seuls les calendriers existants offrent des boutons d'extension vers le passé et le futur.
Barre d'outils Administration des temps pour les calendriers existants | Barre d'outils Administration des temps pour les calendriers personnalisés |
|---|---|
|
|
Les calendriers classiques interprètent
day(this)
fonctionnel comme nombre 15.Si vous modifiez votre calendrier classique en l'allongeant, en changeant ses libellés ou en ajoutant/retirant des strates de temps, il devient un calendrier personnalisé. Toutes les instances créées après la version 2017.2 opèrent automatiquement comme des calendriers personnalisés par défaut, même si elles sont mensuelles. alors que les calendriers classiques donnent toujours le nombre 15 pour
day(this),
calendriers personnalisés interprètesday(this)
comme nombre entier du jour de la première date de la période dont elle fait partie.day(this) dans un calendrier classique | day(this) dans un calendrier personnalisé |
|---|---|
|
|
Valeur renvoyée pour janvier 2016 = 15 | Valeur renvoyée pour janvier 2016 = 1 |
Par exemple, dans un calendrier personnalisé configuré en semaines, si la semaine 1 d'une année commence le 1er janvier, en utilisant :
day(this)
à la semaine 2, renvoie le nombre 8. Le 8 janvier est le premier jour de la semaine 2.
Comment
(this) s'interprète dans une comparaison au sein d'un IF instruction
Pour les calendriers classiques, le terme ((this)
s'interprète dans une comparaison au sein d'un IF
instruction this
) dans une formule peut représenter le 15e jour de n'importe quel mois lorsqu'elle est utilisée comme comparaison dans une IF
relevé.Dans un calendrier personnalisé
(this)
représente la date de début d'une période.Par exemple, la formule
IF(this>toDate(2016,1,1),1,0)
renverra un 1 dans un calendrier classique qui commence en janvier 2016. Dans un calendrier personnalisé, elle donnera le même résultat, mais à partir de février 2016.En janvier 2016 d'un calendrier classique :
this)
signifie 15/01/2016 et dans un calendrier personnalisé (this)
signifie 01/01/2016.IF(this>toDate(2016,1,1),1,0) | Janvier 2016 | Février 2016 |
|---|---|---|
Classique | résultat = 1 | résultat = 1 |
Personnalisé | résultat = 0 | résultat = 0 |
Comment modifier day
(this)
Formules provenant de calendriers classiques à utiliser dans de nouveaux calendriers
Pour que vos formules donnent les résultats escomptés, il faut suivre deux étapes quand vous les utilisez dans des calendriers personnalisés ou des instances créées après la version 2017.2. day
(this)
Formules provenant de calendriers classiques à utiliser dans de nouveaux calendriers- Dans toutes les formules, remplacez toutes les instances deday(this)dans un calendrier classique avec le nombre 15.
- Dans unIFl'instruction dans un calendrier classique remplace le mot(this)avectoDate(this.year,this.month,15).