Introduction
A la sortie du nouvel ERP S/4HANA, SAP a introduit les Embedded Analytics. Cette solution analytique intégrée à l’interface FIORI de l’ERP permet de réaliser des analyses en temps réel. Bien que les fonctionnalités de création de reports soient limitées, cette solution permet aux utilisateurs de pouvoir suivre leurs KPI directement dans leur interface de travail.
Ces Embedded Analytics peuvent aussi être utilisées par des applications tierces (Business Objects Web Intelligence, Lumira, SAP Analytics Cloud, …) offrant ainsi la possibilité de réaliser du reporting opérationnel en temps réel tout en bénéficiant de la puissance d’outils de reporting plus complets que les applications FIORI.
CDS Views et Virtual Data Model (VDM)
Les Embedded Analytics se basent sur une technologie « Core Data Services ». Il s’agit d’une extension du SQL créée par SAP qui pour objectif d’exploiter et modéliser les données de l’ERP et d’y ajouter une couche sémantique directement dans la couche applicative (l’ERP) au travers du VDM (Virtual Data Model).
Ce VDM est composé de plusieurs couches :
Il existe trois types de vue :
- Basic : elles servent à ramener les données directement des tables physiques de la base de données.
- Composite : ce type de vue sert à lier des vues basic entre elles grâce à des associations (comme des jointures SQL entre vues). Elles sont ensuite utilisées par les vues Consumption.
- Consumption : ces vues permettent de créer une requête spécifique à partir d’une vue « composite ». C’est le seul type de vue qui peut être exposée au service OData ou transient afin d’être consommée par des outils de BI.
Les vues utilisées par les outils de BI SAP sont les vues « Consumption »
Intégration avec les outils de BI SAP
Les CDS Views peuvent être consommés de plusieurs façons. La première consiste à passer par le gateway SAP et utiliser des services ODATA pour alimenter les applications FIORI de l’ERP (partie gauche du schéma ci-dessus).
La seconde concerne les outils de reporting traditionnels. Lors de l’activation de CDS views, des transient Analytical Queries sont générés dans le BW embarqué de l’ERP. Ce sont ces derniers qui sont utilisés comme data source par les outils tels que Web Intelligence et sont alors interprétés comme des requêtes Bex (partie droite du schéma ci-dessus).
Pour exploiter une vue CDS dans Web intelligence, vous devez tout d’abord créer une connexion OLAP de type BW pour accéder au BW embarqué de votre serveur S/4HANA :
Puis créer un nouveau document en choisissant une source de données de type « Bex » :
Sélectionnez la connexion créée précédemment et sélectionnez la vue adéquate :
A noter que seules les vues de type « Consumption » et créer avec l’annotation « @Analytics.query : true » seront visibles.
Les CDS Views bénéficient de tous les avantages de la couche ABAP ainsi que de la sécurité de l’ERP issue des objets d’autorisation de la PFCG. De plus, la plateforme BI peut appliquer sa propre sécurité sur la connexion BEX et sur les documents Webi. Cette sécurité peut s’additionner à la sécurité déjà présente dans les CDS.
S’agissant d’une source de données Bex, le panneau de requête est identique à celui proposé lors de l’utilisation de requêtes BW classiques :
Avantages et limitations
Avantages | Limitations |
On délègue les traitements au BW embarqué dans S/4HANA, ce qui les rend très performants. | Les éléments de la couche sémantique CDS peuvent êtres complexes pour un utilisateur final. On perd par exemple la classification par dossiers présente dans les univers. |
On peut utiliser des fonctionnalités qui permettent à l’utilisateur de réaliser des rollups ou des drilldown (attributs de navigation) | Les éléments graphiques provenant de Fiori ne sont pas disponibles dans l’outil Web Intelligence, on ne récupère que les données de la CDS View. |
Un autre avantage est d’utiliser les Key Figures. Les Key Figures sont des indicateurs fournis par BW. Ils peuvent faire l’objet de calculs, et dans le cas des Restricted Key Figures, il est possible d’y appliquer des filtres ou des limitations en fonction de certaines Caractéristiques | Il existe des problèmes de donnée multiples Web Intelligence. Les erreurs de type « #MULTIVALUE » sont assez fréquents, il faut les corriger grâce aux opérateurs de gestion de de contexte (Pourchaque, Pourtout, Dans…) |
Le « Query Stripping », rendant inactifs les objets inutilisés d’une requête, est activé par défaut pour toutes requêtes BEx. Dans le cas des univers cette option doit être activée dans les propriétés du document WebI et de l’univers. | Problèmes « #UNAVAILABLE », les indicateurs étant calculés dans la requête BEX. Lorsqu’on essaye de modifier ces calculs par des formules sous Web Intelligence cette erreur peut apparaître. |
Les variables utilisées dans les requêtes BEx sont reprises par Webi. Si ces variables sont pré-remplies en fonction du profil de l’utilisateur dans BW, Webi peut reprendre ces valeurs par défaut si la variable est optionnelle, elle est vidée dans l’éditeur de requête | Problèmes « #TO_REFRESH », le calcul des indicateurs est délégué à BW. Si on change de niveau d’agrégation dans le rapport Web Intelligence (contrôles d’entrée, drill-down, plier déplier, etc) l’utilisateur doit rafraîchir le rapport à chaque fois, afin de relancer le calcul de l’indicateur. |
CONCLUSION DE L’EXPERT
S/4HANA met à disposition ses Embedded Analytics pour qu’elles puissent être utilisées par d’autres outils de la suite BI de SAP. On peut donc combiner la puissance des ABAP CDS avec la simplicité et les fonctionnalités de Web Intelligence.
Néanmoins, si on veut que les objets et les résultants de la vue correspondent parfaitement aux besoins métier, il faut définir correctement en amont au moment du développement de la vue, les objets. Les modifier nécessite de connaître le fonctionnement des CDS Views qui sont techniquement assez difficiles à développer et à mettre en place.