Analyse et test du code
Utilisation correcte des types de données et des conversions de types
Traitement des zones de caractères
Utilisation du Pushdown de code dans ABAP SQL
Amélioration de la performance des tables internes
Implémentation des contrôles des autorisations
Conception d'un code orienté objet efficace
Définition et utilisation des classes d'exception
Ajout de documentation au code ABAP

Classification des types de données techniques dans ABAP

Objective

After completing this lesson, you will be able to classifiez les types de données techniques dans ABAP.

Types de données dans ABAP

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.