Choisissez votre localisation
Europe
Asie
Amérique
Afrique
Retour

Introduction aux vues SAP CDS

Introduction

Avec l’arrivée de SAP HANA, l’introduction du concept de la base en mémoire et les tables en colonnes, SAP a introduit un changement en ce qui concerne le développement des couches de gestion à partir des tables de l’ERP.  

Effectivement, le traitement des données étant optimisé, la nouvelle recommandation est d’être le plus près possible de la base de données (l’approche code-to-data). L’objectif est de transférer la logique du serveur d’applications vers la base de données afin d’obtenir la meilleure performance. 

Quelles sont les fonctionnalités des vues CDS ?

Les vues CDS permettent d’intégrer la logique utilisée dans les applications SAP ABAP dans la perspective de la base de données. Elles sont créées et maintenues en utilisant le langage de définition de données (DDL). Elles possèdent également les fonctionnalités suivantes : 

  • Entités – tables structurées avec types définis sur mesure. 
  • Associations – création des jointures à la demande, c’est-à-dire que la jointure est exécutée uniquement lorsque les données de la table associée sont nécessaires. 
  • Expressions – utilisé pour créer des champs calculés. 
  • Annotations – utilisé pour définir des métadonnées spécifiques à un composant au code source de toute entité CDS. 

Vues ABAP CDS versus vues HANA CDS

Il y a deux types de vues  : Les vues ABAP CDS et les vues HANA CDS. 

Elles sont similaires en ce qui concerne l’apport d’une grande partie du code ABAP aux vues, mais diffèrent en termes de l’implémentation et de plateformes. 

Ci-dessous, les principales caractéristiques de chaque type : 

Dans cet article, l’emphase est sur les vues CDS ABAP. 

Une vue CDS ABAP est définie pour les tables de base de données ou d’autres vues CDS dans le dictionnaire ABAP. Nous devons utiliser l’instruction « DEFINE VIEW » dans Eclipse Editor pour la créer. 

help.sap.com © SAP SE or an SAP affiliate company

Exemple 1 

Une vue personnalisée Z_CDS_FLIGHTS qui montre les vols des compagnies aériennes. 

 L’entité CDS Z_CDS_FLIGHTS rejoint les tables sflight et scarr de la base de données. 

Au moment de l’activation de la vue CDSl’entité CDS et la vue SQL sont créées dans le dictionnaire ABAP. 

L’entité CDS et la vue SQL dans Eclipse Editor après l’activation de la vue Z_CDS_FLIGHTS 

L’entité Z_CDS_FLIGHTS 

Résultat de l’exécution de SQL ZCDSFLIGHTS dans Eclipse Editor 

Vues CDS standard

En plus des vues personnalisées, il est possible de consulter et d’utiliser des vues CDS préconfigurées par SAP.  Il y a plusieurs vues CDS  standards  pour chaque module SAP et elles sont toutes répertoriées dans le SAP Help Portal : 

  • Choisir la version SAP S/4HANA 
  • Choisir le module SAP correspondant 
  • Vérifier la documentation de la vue CDS 

Remarque : Si vous choisissez d’utiliser une vue CDS standard pour répondre à vos besoins d’affaires, il est recommandé de la dupliquer et d’effectuer votre personnalisation dans cette copie. Les vues standard peuvent être mises à jour et remplacer votre code. 

Extension de vues CDS  

L’une des principales caractéristiques des vues CDS est qu’elles peuvent être facilement étendues, ce qui rend la réutilisation des vues encore plus faisable. 

Cette option est disponible dans le modèle « Extend View ». 

Le modèle « Extend View » dans Eclipse Editor 

Où: 

 view_name est la vue CDS qui sera étendue et 

ddl_source_name_editable est la vue d’extension 

 Une extension peut avoir tous les éléments d’une vue CDS ordinaire sauf : 

  • Joins – il est obligatoire d’utiliser des associations à la place 
  • Éléments acceptés uniquement lorsque la vue de base les contient déjà (à partir de la version 7.51) 

– Aggregate expressions  

– Group By clause  

– Union  

Exemple 2 : 

Une vue d’extension Z_MAXSEATS_ENHANCED qui ajoute 3 nouveaux champs seatsmax, seatsmax _b et seatsmax_f de la table sflight à la vue Z_CDS_FLIGHTS. 

L’entité CDS Z_MAXSEATS_ENHANCED 

Après l’activation de la vue d’extension, nous pouvons regarder que la vue étendue Z_CDS_FLIGHTS a les trois nouveaux champs : 

 La vue de base Z_CDS_FLIGHTS est étendue avec les champs seatsmax, seatsmax_b et seatsmax_f 

Lorsque nous vérifions la vue Z_CDS_FLIGHTS, nous pouvons regarder voir la vue d’extension Z_MAXSEATS_ENHANCED :  

La vue de base Z_CDS_FLIGHTS contient la vue d’extension Z_MAXSEATS_ENHANCED 

Remarque : Une vue de base CDS peut avoir plusieurs vues d’extension, néanmoins une vue d’extension ne peut pas être étendue.  

Il y a d’autres caractéristiques intéressantes à découvrir dans cette nouvelle stratégie de modélisation. Pour en savoir plus, veuillez consulter les sites ci-dessous : 

SAP – ABAP CDS Development User Guide 

SAP Community – All blogs Posts 

SAP HANA Developer Guide 

Conclusion

En résumé, les vues SAP CDS représentent la nouvelle structure de modélisation de données développée pour profiter du traitement rapide des données dans la base de données SAP HANA. 

Les performances des applications sont considérablement améliorées une fois que les vues CDS sont consommées au niveau de la base de données plutôt que sur le serveur d’applications. 

Le gros avantage des vues CDS est qu’elles fournissent un modèle de données unifié pour plusieurs applications. Elles peuvent être utilisés comme sources de données pour différentes applications SAP telles que SAP Fiori, S/4 HANA Embebbed Analytics, BW/4 HANA et autres, ainsi que pour des applications tierces telles que PowerBI. 

L’équipe de  Teamwork Canada offre de l’expertise, et les formations suivantes sur les vues CDS : 

  • Vue SAP Abap CDS  – Cours de base 
  • Vue SAP Abap CDS  – Cours avancé

N’hésitez pas à nous contacter à l’adresse courriel info_twca@temwork.net pour avoir plus d’informations ! 

Contactez-nous
x
* Obligatoire
x
Choisissez votre localisation
USA Canada FR Canada EN France Luxembourg FR Luxembourg EN Genève Berne/Zurich Allemagne Slovaquie Inde Chine Vietnam Singapour Mauritius Mauritius Suisse Allemagne
Actualités & Blog
Nos événements
Nos webinars en replay