AXOPEN

Guide utilisateur (Planisware Pro / Intranet) : réaliser une formule de comparaison entre des dates ou des durées

Introduction :

Il arrive fréquemment que l’on ait besoin de réaliser une comparaison entre 2 dates ou 2 durées (dans une formule nommée, un filtre etc…). Si les comparaisons entre les chaînes de caractères ou les nombres sont plutôt intuitives, celles sur les dates où les durées nécessitent de connaître quelques fonctions Planisware de base.

Comparaison de dates :

Prenons l’exemple d’un filtre sur les activités dont la date de fin est inférieure (stricte) au 01/07/2012. Dans le filtre d’une formule nommée on entrera la formule suivante :

DF < DATE("01/07/2012","JJ/MM/AAAA")

Ici le champ « DF » (date de fin de l’activité) est comparé au résultat de la fonction « DATE(date,format) » avec 2 arguments :

Argument

Description

Type

Valeur dans l’exemple

date
Chaîne représentant une date
CHAINE
"01/07/2012"
format
Nom du format
CHAINE
"JJ/MM/AAAA"

 

La fonction DATE va renvoyer un objet de type « date » que l’on va pouvoir comparer à un autre objet du même type avec les opérateurs habituels : >, <, <=, >=, <> et =.

Ainsi la formule donnée en exemple renverra « VRAI » si et seulement si « DF » est inférieure stricte au 1er juillet 2012.

 Comparaison de durées :

Le principe est le même pour la comparaison entre des durées. Dans ce cas on utilisera la fonction « DUREE(durée) » avec 1 argument :

Argument

Description

Type

Valeur dans l’exemple

durée
Chaîne représentant une durée
CHAINE
"3J"

 

La fonction DUREE va renvoyer un objet de type « durée » que l’on va pouvoir comparer à un autre objet du même type avec les opérateurs habituels : >, <, <=, >=, <> et =.

 Exemple :

DU < DUREE("3J")

Ainsi la formule donnée en exemple renverra « VRAI » si et seulement si « DU » est inférieure stricte à 3 jours.

Erreurs fréquentes :

Les erreurs les plus fréquentes sont les formules du type suivant :

DU < "01/01/2012"

Dans ce cas cela signifie que l’on demande à P5 de comparer une date (« DU ») avec une chaîne de caractères « 01/01/2012 ». Cela n’a donc aucun sens pour P5.