Récapitulatif - Certains types ABAP prédéfinis
Récapitulons rapidement les types ABAP prédéfinis que vous avez appris plus tôt dans votre Learning Journey. Nous examinerons également certains types de données supplémentaires complets et incomplets.

La figure ci-dessus illustre les types de données abordés dans le cours Programmation ABAP de base. Les types STRING, I, D et T sont appelés types complets car vous ne pouvez pas modifier leur longueur. Les types C, N et P sont appelés types incomplets. Lorsque vous déclarez une variable avec l'un de ces types, vous devez indiquer la longueur et, dans le cas du type P, le nombre de décimales.

Outre les quatre types de données complets que vous avez déjà rencontrés (STRING, I, D et T), il en existe six autres :
- INT8 - Entier à 8 octets
- DECFLOAT16 - Nombre décimal en virgule flottante à 16 chiffres
- DECFLOAT34 - Nombre décimal en virgule flottante à 34 chiffres
- F - Nombre binaire en virgule flottante
- XSTRING - Séquence d'octets de n'importe quelle longueur
- UTCLONG - Horodatage

En plus des types C, N et P, ABAP dispose également d'un type X intégré pour les séquences d'octets. Le type X est incomplet, ce qui signifie que vous devez indiquer une longueur lorsque vous déclarez des variables à l'aide de ce type.
Classification des types de données
En plus de faire la distinction entre les types de données complets et incomplets, nous pouvons classer les types de données ABAP intégrés comme alphanumérique, numérique, type octet et date et heure. Cette distinction est importante car certaines opérations ne sont autorisées que pour les zones alphanumériques et d'autres uniquement pour les zones numériques. Vous ne pouvez pas mélanger des champs de caractères et d'octets en une seule opération.

Lorsque vous sélectionnez des types numériques, vous devez utiliser le type I si vous avez besoin de nombres entiers et le type P pour les nombres avec décimales. Vous pouvez utiliser le type INT8 si la plage de type I est trop petite. De même, utilisez l'un des types DECFLOAT si la plage ou la précision du type P est insuffisante. Un nombre condensé peut comporter jusqu'à 14 décimales. Les types de données DECFLOAT, en particulier DECFLOAT34, prennent en charge une précision nettement plus élevée.
Le type F est destiné aux nombres binaires en virgule flottante. Comme des erreurs d'arrondi peuvent survenir lors de la reconversion des nombres binaires dans le système décimal, évitez d'utiliser le type F pour les calculs dans vos programmes. Cependant, les nombres en virgule flottante apparaissent en évidence lorsque vous lisez des données à partir de la base de données à l'aide de SQL.
Pour les zones de date et d'heure, vous pouvez utiliser les types D et T. Le type D utilise le format AAAAMMJJ et le type T le format HHMMSS. Le type T n'est précis qu'à la seconde - si vous avez besoin d'une précision plus élevée, vous pouvez utiliser le type UTCLONG. Il s'agit d'un horodatage comprenant à la fois la date et l'heure et est précis à 100 nanosecondes.