
Si vous voulez stocker des informations de date dans une zone de base de données, vous avez le choix entre deux types :
- DATS archive la date telle qu'elle est traitée dans ABAP. Cela signifie que la date est enregistrée sous la forme d'un caractère de longueur 8 au format "AAAAMMJJ".
- DATN stocke les informations dans le type de date de la base de données. Lors de la lecture des informations de la base de données avec ABAP SQL, elles sont automatiquement reconverties au format à 8 chiffres.
La même différence existe entre les types TIMS et TIMN.
Si vous voulez enregistrer des informations d'horodatage dans une zone de base de données, vous avez le choix entre trois types :
- HORODATAGE stocke les informations sous forme de nombre sans décimales, les chiffres du nombre représentant l'année, le mois, le jour, les heures, les minutes et les secondes.
- TIMESTAMPL est le même que TIMESTAMP, mais stocke en plus jusqu'à 7 décimales ce qui correspond à une précision de 100 nanosecondes.
UTCLONG a la même précision que TIMESTAMPL.
Fonctions SQL pour date, heure et horodatage
ABAP SQL offre une grande variété de fonctions intégrées pour les informations de date, d'heure et d'horodatage. Il existe des fonctions pour vérifier si le contenu d'une zone est valide, des fonctions pour les calculs ou des fonctions pour extraire certaines informations d'un argument d'entrée. Certaines de ces fonctions sont répertoriées ici. Vous trouverez une liste complète dans la documentation ABAP.

Certaines fonctions sont spécifiques au type.
Les autres fonctions sont génériques. Ils peuvent gérer l'entrée de différents types. La fonction IS_VALID, par exemple, peut contrôler la validité d'une date, d'une date ou d'un horodatage. Il accepte les deux formats de date (DATS et DATN) et les deux formats d'heure (TIMS et TIMN). Cependant, pour les horodatages, seul le type UTCLONG est pris en charge.
Dans certains cas, vous pouvez choisir entre une fonction spécifique au type et une fonction générique. Pour une zone de type DATS, par exemple, vous pouvez utiliser DATS_IS_VALID( ) ou IS_VALID( ). Vous devez préférer les fonctions génériques les plus récentes.
Remarque

Voici un exemple d'utilisation de fonctions génériques avec des informations de type date. Comme la plupart des autres expressions SQL, vous pouvez également utiliser les fonctions de la clause WHERE-clause. Ici, nous limitons la sélection aux déplacements qui dépassent 10 jours.
Remarque



