Fonctions de conversion de date et d'heure

Les fonctions de conversion convertissent les intervalles de temps d'une unité de temps à une autre. Les intervalles de temps sont stockés comme le nombre de secondes dans l'intervalle ; les fonctions de conversion permettent de calculer des unités plus appropriées, par exemple, convertir des secondes en jours.

Chaque fonction de conversion se compose de la fonction CTIME suivie d'un point (.), de l'unité de temps cible et d'un argument. L'argument peut être constitué d'expressions, de noms de variables ou de constantes. L'argument doit déjà être un intervalle de temps. Pour plus d'informations, voir la rubrique Fonctions d'agrégation . Les conversions de temps produisent des résultats non entiers avec le format par défaut F8.2.

Etant donné que l'heure et les dates sont stockées en interne sous forme de secondes, une fonction qui se convertit en secondes n'est pas nécessaire.

CTIME.DAYS. CTIME.DAYS(valeurtemps). Numérique. Renvoie le nombre de jours, y compris les jours fractionnés, dans timevalue, qui doit être un nombre de secondes, une valeur temps, ou une expression au format de temps.

CTIME.HOURS. CTIME.HOURS(valeurtemps). Numérique. Renvoie le nombre d'heures, y compris les heures fractionnées, dans timevalue, qui doit être un nombre de secondes, une expression de temps ou une variable de format de temps.

CTIME.MINUTES. CTIME.MINUTES(valeurtemps). Numérique. Renvoie le nombre de minutes, y compris les minutes fractionnées, dans timevalue, qui doit être un nombre de secondes, une expression de temps ou une variable de format de temps.

CTIME.SECONDS. CTIME.SECONDS(valeurtemps). Numérique. Renvoie le nombre de secondes, y compris les secondes fractionnées, dans timevalue, qui doit être un nombre de secondes, une expression de temps ou une variable de format de temps.

Exemple

DATA LIST FREE (",") 
  /StartDate (ADATE12) EndDate (ADATE12)
  StartDateTime(DATETIME20) EndDateTime(DATETIME20)
  StartTime (TIME10) EndTime (TIME10).
BEGIN DATA
3/01/2003, 4/10/2003
01-MAR-2003 12:00, 02-MAR-2003 12:00
09:30, 10:15
END DATA.
COMPUTE days = CTIME.DAYS(EndDate-StartDate).
COMPUTE hours = CTIME.HOURS(EndDateTime-StartDateTime).
COMPUTE minutes = CTIME.MINUTES(EndTime-StartTime).
  • CTIME.DAYS calcule la différence entre EndDate et StartDate en jours-dans cet exemple, 40 jours.
  • CTIME.HOURS calcule la différence entre EndDateTime et StartDateTime en heures - dans cet exemple, 24 heures.
  • CTIME.MINUTES calcule la différence entre EndTime et StartTime en minutes-dans cet exemple, 45 minutes.