Altair® Monarch®

 

Fonction JulianToDate

Description

Convertit une chaîne de date ordinale en date.

Syntaxe

JulianToDate(chaîne)

Arguments

chaîne est une chaîne de date ordinale : 02105, par exemple. La chaîne de date ordinale ne doit être composée que de chiffres et peut avoir une longueur de 3, 4, 5 ou 7 chiffres. Dans tous les cas, les 3 derniers chiffres spécifient le jour de l'année (001=1er janvier, 002=2 janvier, 031=31 janvier, 032=1er février, et ainsi de suite).

Valeur renvoyée

Cette fonction renvoie une date.

Si la chaîne de date ordinale compte 7 chiffres, les 4 premiers désignent indubitablement l'année. Si la chaîne compte 5 chiffres, les 2 premiers sont interprétés comme la formule d'année à 2 chiffres et résolus en valeur d'année complète selon le mécanisme d'année pivot ordinaire. Si la chaîne ne compte que 4 chiffres, le premier est interprété comme représentant le chiffre le moins significatif de l'année. Pour la résolution en valeur d'année complète, JulianToDate considère une année comprise dans les 10 dernières années. Exemple : la chaîne « 2105 » serait interprétée comme représentant le 15.4.2002 (105e jour de l'année 2002), alors que « 3105 » renverrait la date du 15.4.1993 (105e jour de l'année 1993). Pour remplacer cette approche, l'utilisateur est invité à préfixer ses données des chiffres désirés. Ainsi, pour que la chaîne « 3105 » soit interprétée comme représentant le 15.4.2003, on donnera aux dates ordinales à 4 chiffres le préfixe « 200 ». Si la chaîne de date ordinale ne compte que 3 chiffres, la fonction JulianToDate considère qu'il s'agit d'une date de l'année en cours. Ainsi, la chaîne « 105 » est interprétée comme désignant le 15.4.2003. Ici encore, on préfixera au besoin les données des 4 chiffres de l'année voulue.

La fonction renvoie la valeur NULL si la chaîne donnée ne peut pas être interprétée comme date ordinale.

Exemple dans une expression de champ calculé

Si le champ DateOrdinale contient la valeur 2105, l'expression suivante renvoie 15.4.2002 : JulianToDate(DateOrdinale)