Concepts de base : Paramètres, préférences, jours non travaillés et dates

1 - Paramètres

L'utilisateur peut choisir par les paramètres la hauteur de ligne dans les listes affichées, le pas pour l'affichage des heures (entre 1 heure et 1 minute), la zone mémoire étendue (publique ou privée) pour la sauvegarde des nouveaux projets, et les débuts des noms donnés par défaut lors de la création de projets, tâches, événements ou groupes.

2 - Préférences

Les préférences sont des informations choisies par l'utilisateur qui sont prises en compte lors de la création du projet. Leurs modifications n'ont pas d'impact sur les projets déjà créés, sauf si l'utilisateur fait une commande de réinitialisation. Elles contiennent des définitions de jours, dates ou périodes non travaillées et de dates travaillées par exception.

3 - Jours non travaillés

Les jours non travaillées sont des jours qui ne dépendent pas de l'année et sont en principe non travaillés tous les ans, ce peut être les jours de repos hebdomadaire, des fêtes légales, des coutumes de l'entreprise ou de l'utilisateur. Le programme permet de définir 4 types de jour :

    • jours de semaine, par exemple Samedi, Dimanche (on a aussi l'option Samedi+Dimanche),

    • jours annuels qui sont fixes tous les ans (par exemple le 25 décembre fête de Noël), avec une option de report, car selon les pays il peuvent être ou ne pas être reportés au lundi lorsqu'ils tombent un dimanche ou un samedi,

    • jour à rang, défini par un mois, un jour de semaine et un rang du jour dans le mois de 1 à 5, 5 indiquant dernier du mois (par exemple Thanksgiving dernier jeudi de novembre),

    • jour relatif à la fête de Pâques occidentale (par exemple Vendredi saint 2 jours avant Pâques).

Pour compléter on peut définir :

    • des dates non travaillées, dates qui ne sont pas travaillées une année définie,

    • des périodes non travaillées (date de début et durée) par exemple des périodes de vacances,

    • des dates exceptionnellement travaillées, dates qui correspondent à des jours non travaillés mais sont tout de même travaillés.

4- Défauts pour jours non travaillés

Pour faciliter la définition de ces dates j'ai introduit des défauts pour initialiser ces dates avec les fêtes légales qui ne sont pas un dimanche tous les ans. Malheureusement ces fêtes varient non seulement avec les pays mais aussi avec les régions ou états de ces pays...

Je me suis limité à 4 options : France, Grande Bretagne, Etats-Unis, autres.

La France est le pays qui pose le moins de problème : les fêtes légales sont les mêmes pour tout le monde : 8 jours annuels non reportés et 3 jours relatifs à Pâques.

En Grande Bretagne, le Royaume Uni a 8 jours nationaux (3 jours annuels reportés s'il tombent un Samedi ou un Dimanche, 2 jours relatifs à Pâques et 3 jours à rang), et des jours particuliers pour l'Ecosse, le Pays de Galles et l'Irlande du nord. Je me suis limité aux jours nationaux du Royaume Uni que l'utilisateur devra compléter ou modifier si besoin.

Aux Etats-Unis les jours dépendent de chaque état. Il existe cependant 10 jours de fête fédéraux pour certains services fédéraux et sont plus ou moins pris en compte par les états. Je fournis cette liste fédérale, et chaque utilisateur devra l'adapter en fonction de son Etat.

Pour les autres pays, je fournis une liste de 7 jours qui sont utilisés dans de nombreux pays. Chacun pourra y retrancher et ajouter des jours.

5- Dates

Le programme est prévu pour planifier des projets pour les mois suivants, c'est pourquoi les dates sont en général initialisées à la date du jour afin de simplifier leur modification.

Il n'est cependant pas interdit de remonter jusqu'au premier janvier 1970 (la date 0 des informaticiens !), mais je n'ai pas jugé utile de permettre d'aller au delà.

De même j'ai limité les dates au 31 décembre 2099, n'ayant pas pris en compte la particularité de l'année 2100.