Guide du Designer Crystal Reports pour Rational Application Developer

DateDiff

Exemples
Utilisez DateDiff avec le paramètre de type intervalle "d" ou "y" pour calculer le nombre de jours entre deux dates :
DateDiff ("d", #10/7/1999#, #10/10/1999#)
Renvoie 3.
Utilisez DateDiff avec le paramètre de type intervalle "yyyy" pour calculer le nombre d'années entre deux dates. L'utilisation de DateDiff correspond à la différence qui existe entre l'année de "dateHeureFin" et l'année de "dateHeureDébut".
DateDiff ("yyyy", #10/7/1999#, #2/10/2005#)
Renvoie 6.
DateDiff ("yyyy", #12/31/1999#, #1/1/2000#)
Renvoie 1 (une différence d'un an), même s'il existe une différence d'un jour seulement entre les dates.
DateDiff ("yyyy", #1/1/1999#, #12/31/1999#)
Renvoie 0 (une différence de 0 an), même s'il existe une différence de 364 jours entre les dates.
Supposons, dans les exemples ci-dessus, que la première date soit celle où vous achetez un fonds commun de placement et la seconde, celle où vous le revendez. La société qui gère ce fonds commun de placement doit vous envoyer un rapport annuel pour chacune des années où vous possédez des parts dans le fonds commun. Ainsi, vous obtenez respectivement 7, 2 et 1 rapports annuels dans les cas mentionnés ci-dessus.
Utilisez DateDiff avec le paramètre "q" pour calculer le nombre de trimestres (période de 3 mois) entre deux dates.
DateDiff ("q", #10/6/1999#, #5/20/2003#)
Renvoie 14.
DateDiff ("q", #3/31/1999#, #4/1/1999#)
Renvoie 1. Les deux dates se trouvent dans des trimestres adjacents.
DateDiff ("q", #1/1/1999#, #3/31/1999#)
Renvoie 0. Les deux dates se trouvent dans le même trimestre.
Supposons que la société, dans l'exemple "yyyy", vous fournissez des rapports trimestriels. Dans les cas mentionnés ci-dessus, elle devrait alors vous envoyer respectivement 15, 2 et 1 rapports trimestriels.
Utilisez DateDiff avec le paramètre "m" pour calculer le nombre de mois entre deux dates.
DateDiff ("m", #3/15/1999#, #7/13/1999#)
Renvoie 4.
Utilisez DateDiff avec le paramètre "w" pour calculer le nombre de semaines entre deux dates. Par exemple, si "dateHeureDébut" tombe un mardi, DateDiff calcule le nombre de mardis entre "dateHeureDébut" et "dateHeureFin" en excluant le mardi initial de "dateHeureDébut". Notez, toutefois, que si "dateHeureFin" tombe un mardi, cet argument sera inclus.
DateDiff ("w", #10/19/1999#, #10/25/1999#)
Renvoie 0.
DateDiff ("w", #10/19/1999#, #10/26/1999#)
Renvoie 1.
Utilisez DateDiff avec le paramètre "ww" pour calculer le nombre de "premierJourSemaine" entre deux dates. Pour la fonction DateDiff, le paramètre "ww" est le seul qui utilise l'argument "premierJourSemaine". Il est ignoré avec tous les autres paramètres de type intervalle. Par exemple, si "premierJourSemaine" est crWednesday, il calcule le nombre de mercredis entre "dateHeureDébut" et "dateHeureFin". Il n'inclut pas startDateTime même si "dateHeureDébut" tombe un mercredi, mais si "dateHeureFin" tombe un mercredi, cet argument sera inclus. Dans les exemples utilisés, notez que les dates 6, 13, 20 et 27 octobre tombent toutes un mercredi en 1999.
DateDiff ("ww", #10/5/1999#, #10/29/1999#, crWednesday)
Renvoie 4.
DateDiff ("ww", #10/6/1999#, #10/29/1999#, crWednesday)
Renvoie 3.
DateDiff ("ww", #10/5/1999#, #10/27/1999#, crWednesday)
Renvoie 4.
Supposons, par exemple, que vous vouliez calculer le nombre de jours entre la date d'une commande et la date de la livraison, en excluant les samedis et les dimanches :
Local DateTimeVar d1 := {Orders.Order Date};
Local DateTimeVar d2 := {Orders.Ship Date};
DateDiff ("d", d1, d2) -
DateDiff ("ww", d1, d2, crSaturday) -
DateDiff ("ww", d1, d2, crSunday)



Business Objects, une société du groupe SAP
http://www.france.businessobjects.com/
Services de support technique
http://www.businessobjects.com/services/support/
Documentation des produits sur le Web
http://support.businessobjects.com/documentation/