Description
Convertit une valeur de type date/heure en valeur de type date/heure du 21e siècle en fonction de la plage spécifiée.
Arguments
dateTime : accepte uniquement les champs date-heure valides, avec des années à 2 ou 4 chiffres.
Champ de base de données défini comme champ de type date/heure. Les options de Fichier|Options du rapport doivent être définies sur Convertir le champ de type date/heure en date. (Cette option est réservée aux sources de données ODBC sous 6.0.)
Fonction CDateTime (CDateTime(yyyy, MM,jj, hh, mm, ss) ). Une année à 4 chiffres est requise pour cette fonction. Si vous entrez deux chiffres, la valeur par défaut sera 00xx (par exemple, 98 apr. J.-C.).
Nombre : nombre de 0 à 99 correspondant à l'année commutable souhaitée.
Résultat
Champ de type date/heure comprenant une date à 4 chiffres.
Action
année à 2 chiffres (xx)
Si l'année est supérieure au nombre commutable, 19 est ajouté avant les 2 chiffres (19xx). Si l'année est inférieure ou égale au nombre commutable, 20 est ajouté (20xx).
année à 4 chiffres (19xx)
Si la valeur des deux derniers chiffres de l'année est supérieure au nombre commutable, l'année est conservée telle qu'elle apparaît dans le champ de date (19xx). Si la valeur des deux chiffres de l'année est inférieure ou égale au nombre commutable, les deux premiers chiffres sont remplacés par 20 (20xx). Si les deux premiers chiffres de l'année correspondent à 20, l'année du champ de date est conservée (20xx).
Remarque : Si l'année est inférieure ou égale à 1899 et supérieure ou égale à 100, la date ne sera pas modifiée.
Exemples
Ici, la valeur commutable est supérieure à l'année et sera remplacée par 20XX.
DateTimeTo2000(CDateTime(1998,12,12,3,2,1), 99)
renvoie 12/12/2098 03:02:01
Ici, la valeur commutable est inférieure à l'année et ne sera pas modifiée.
DateTimeTo2000(CDateTime(1995,1,2,3,2,1), 94)
renvoie 01/02/1995 03:02:01
Exemples supplémentaires
Les exemples ci-dessous concernent une date non modifiée par la fonction.
DateTimeTo2000(CDateTime(1899,12,12,5,6,7), 99)
renvoie 12/12/1899 05:06:07
DateTimeTo2000(CDateTime(999,12,12,5,6,7), 99)
renvoie 12/12/999 05:06:07
Certaines bases de données conservent l'année d'une date comme champ à 2 chiffres comme présenté dans les exemples suivants.
DateTimeTo2000(CDateTime (93,12,12,5,6,7), 96)
renvoie 12/12/2093 05:06:07
DateTimeTo2000(CDateTime (98,12,12,5,6,7), 50)
renvoie 12/12/1998 05:06:07
DateTimeTo2000(CDateTime (9,12,12,5,6,7), 10)
renvoie 12/12/2009 05:06:07
DateTimeTo2000(CDateTime (2,12,12,5,6,7), 1)
renvoie 12.12.02 05:06:07