

Introduction
Coder une date nécessite d’en comprendre le sens et le fonctionnement.
Principe
A quoi correspond une date et comment la calculer ?
Application
La norme s’applique sur la génération de calendrier, le calcul de date à la volée demande des conditions particulières.
Nommage
Le codage de la date est obtenu par le respect d’une liste de règles simples.
Formule
La formule générale est donnée à titre indicatif.
Unités temporelles
On appellera Unités temporelles les diverses subdivisions du temps.
Calendaire
Les principaux types calendaires sont le jour, la semaine, le mois, la saison, l’année, le siècle et l’ère.
Heures
Un jours peut être divisé en heure, minute, seconde et éventuellement en microseconde.
Ouvrés/Fériés
La notion de jours ouvrés induit l’utilisation d’une base contenant la liste de jours à supprimer.
Intervalles
Une unité temporelle est une division qui prend son sens dans un intervalle temporel périodique.
Dates
Les intervalles de dates permettent de situer une période dont l’unité minimale est le jour dans une période pouvant aller jusqu’à l’infini.
Heures
L’utilisation des heures est nécessaire lorsqu’on traite des périodes inférieures au jour.
Jours ouvrés
L’utilisation de jour ouvrés permet de définir des jours particuliers dans l’intervalle considéré.
Positionnement
Le positionnement spécifie les éléments à prendre en compte dans un intervalle.
Index
L’index permet d’identifier l’élément à traiter dans la l’intervalle courant, si l’information est omise on considère l’ensemble des éléments.
Listes
Les liste identifient une série d’éléments consécutifs ou non dans l’intervalle.
Période
Si l’index correspond à l’élément dans la période il est tout aussi possible d’identifier la période elle-même dans la période supérieure.
Unité fixe
Fixer une unité permet de simplifier l’écriture en supprimant l’indication d’intervalle.
Jours mixtes
Certains intervalles peuvent être bornés en fonction de jours ouvrés et calendaires, par exemple pour démarrer un nième jour ouvré et finir un nième jour calendaire du mois.
Regroupement
Regrouper des intervalles permet de définir des périodes plus larges.
tous les n jours
Considérer une date revenant tous les n jours revient à diviser une période en n jours.
"Mestres"
Diviser l’année en groupe égaux de mois permet de travailler avec des périodes comprises entre le mois et l’année.
Intervalles
Lorsque la période contient un nombre fixe d’élément, on peut la définir comme un regroupement de périodes inférieures.
Résolution graphique
Les regroupements peuvent être identifiés en récapitulant les éléments dans un tableau.
Décalage de date
Le décalage de dates permet d’ajouter un certain nombre d’unités à une liste de dates.
Périodes fixes
Ajouter des jours permet d’obtenir une nouvelle date dont l’écart avec la référence correspondant au nombre de jours.
Périodes variables
Décaler une période variables correspond à l’ajout des périodes sans dépassement de la dernière période.
Jours ouvrés
La différence avec le calcul de jour calendaire est la prise en compte de jours fériés dans la base de calcul.
Enchaînements
Chaîner des règles entre elles permet d’obtenir des règles complexes.
Sens
Le sens permet d’indiquer le déplacement dans l’intervalle courant.
Plage
La plage permet de définir un sous-période de l’intervalle courant.
Exemples
Exemples de règles avec Outlook.
Base calendaire
Calculer des jours ouvrés oblige a considérer les jours fériés ou chomés qui seront la base du calendrier.
Base de calcul
La base de calcul corrrespond à la liste de jours fériés du calendrier considéré.
Liste de jours
La base de calcul est une liste de jours à part entière, on peut donc s’en servir pour des calculs tels que les décalages.
Week-end
Les week-ends sont des jours fériés périodiques, il sont définis par le numéro du jour de la semaine.
Dates spéciales
Une date spéciale est une date fixe ou une date issue d’un calcul complexe.
Dates et heures fixes
Les dates fixes ne répondent à aucune règle, elles peuvent donc être écrites directement.
Appel de fonctions
L’appel de fonction permet de calculer les dates complexes ou dont le période est déphasée par rapport au calendrier.
Opérations
Les opérations consiste à appliquer sur une liste des opérations booléennes.
Négation (!)
La négation permet d’inverser un liste de jours ou le résultat d’un calcul.
Fonctions logiques
On applique un opérateur booléen sur chaque élément de deux listes de dates.
Application
Mise en oeuvre de la norme.
Contexte
La norme décrit une date correspand à un élément d’uné période, la date réelle dépend du contexte dans lequel on se trouve.
Optimisation
Quelques astuces pour réduire la taille du code.
Dates "à la volée" et Calendrier
Illustration des différences de calcul entre la génération des dates d’un calendrier et un date calculée à la volée.
Calendriers
Comprendre les différents calendriers permet de mieux comprendre les différents possibilités de calcul.
Calendrier grégorien
Calendrier musulman
Jours fériés
Coder les jours fériés du monde pour générer de nouvelles listes de dates.
Etats-Unis
La date anniversaires se calent sur les jours de la semaine.
France
Une partie des jours fériés français s’appuient sur le calcul de la date de Paques.



