Technologies d'interface

OpenUI5

OpenUI5 est l'édition open source du framework JavaScript UI5 de SAP, publiée sous licence Apache 2.0 et développée publiquement sur GitHub. OpenUI5 partage avec SAPUI5 le runtime de base et les bibliothèques de contrôles les plus utilisées, comme sap.m, mais exclut les bibliothèques réservées à SAP, comme SAP Fiori elements, les smart controls, les graphiques et le shell du launchpad.

L'essentiel

Type
Framework d'interface JavaScript open source (cœur UI5 et bibliothèques de contrôles courantes)
Couche
Applications d'interface
Licence
Apache 2.0
Relation
Même cœur et mêmes noms techniques que SAPUI5 ; moins de bibliothèques
Non inclus
SAP Fiori elements, smart controls, graphiques, shell du launchpad, export vers tableur
Qui l'utilise
Développeurs web, architectes UI, créateurs d'outils open source
S'applique à
SAP BTP et tout hébergement web ; les produits SAP livrent SAPUI5 à la place
Couche : Applications d'interfaceOù se situe-t-il ? ▾
Où se situe-t-il ?: L3 · Applications d'interfaceCouche : Applications d'interface.L1L2L3L4L5L6BTP

Couche : Applications d'interface

Ouvrir la carte d'architecture →

Quel est le lien entre OpenUI5 et SAPUI5 ?

SAP livre le framework UI5 sous deux formes. OpenUI5 est la version open source ; SAPUI5 est celle intégrée aux produits SAP comme SAP BTP et la plateforme ABAP. La principale différence est la licence, pas le modèle de programmation.

Trois faits découlent de cette origine commune :

  1. Même cœur. Le runtime, le data binding, le routage et les bibliothèques de contrôles les plus courantes, par exemple sap.m, sap.ui.layout et sap.ui.unified, sont identiques dans les deux livraisons.
  2. Mêmes noms techniques. Les noms des contrôles, les noms des bibliothèques et les API correspondent : du code écrit pour OpenUI5 continue de fonctionner lorsque le runtime passe à SAPUI5.
  3. Versions alignées. Les deux livraisons suivent la même ligne de versions, même si SAP précise que les numéros de version peuvent différer au niveau du patch. La boîte de dialogue des informations techniques (Ctrl+Alt+Shift+P) affiche la version réellement chargée par une application.

SAPUI5 est donc un sur-ensemble : tout le contenu d'OpenUI5, plus des bibliothèques propres à SAP. OpenUI5 est le sous-ensemble open source de SAPUI5, pas un framework distinct.

Quelles bibliothèques manquent dans OpenUI5 ?

La comparaison des listes de bibliothèques publiées pour la version 1.154 montre que chaque bibliothèque OpenUI5 fait aussi partie de SAPUI5, tandis que SAPUI5 en ajoute plusieurs dizaines. Les écarts les plus importants dans les projets SAP :

DomaineUniquement dans SAPUI5Conséquence pour les applications OpenUI5
SAP Fiori elementssap.fe.* (OData V4), sap.suite.ui.generic.template (OData V2), sap.ovpPas de floorplans pilotés par annotations
Smart controlssap.ui.compPas de smart filter bar, smart table ni smart field
Graphiquessap.viz, sap.chart, sap.suite.ui.microchartLes graphiques nécessitent une autre bibliothèque
Shell du launchpadsap.ushellPas de runtime SAP Fiori Launchpad
Utilitairessap.ui.export, sap.ui.richtexteditor, sap.ganttPas d'export intégré vers tableur, d'éditeur de texte enrichi ni de diagramme de Gantt

OpenUI5 reste très complet : sap.m, sap.f, la mise en page object page de sap.uxap, sap.ui.table, les contrôles pilotés par métadonnées de sap.ui.mdc, les bibliothèques de flexibilité sap.ui.fl et sap.ui.rta, les integration cards et la bibliothèque du thème SAP Horizon. La liste évolue d'une version à l'autre ; vérifiez-la pour la version que vous ciblez. OpenUI5 couvre les briques d'une application web complète, mais pas les couches SAP qui génèrent ou hébergent les applications SAP Fiori.

Quand utiliser OpenUI5 ?

Appliquez ce critère de décision : si l'application dépend du runtime d'un produit SAP ou d'une bibliothèque réservée à SAP, utilisez SAPUI5 ; sinon, OpenUI5 est un choix valable.

OpenUI5 convient lorsque :

  • l'application s'exécute en dehors des produits SAP, par exemple un portail web public ou un outil interne sur un back-end non SAP ;
  • le projet est lui-même open source, comme un outil UI5, un exemple ou une bibliothèque de contrôles personnalisés, et ne doit pas dépendre de code sous licence SAP ;
  • une équipe apprend UI5 et souhaite un runtime et une documentation librement accessibles.

SAPUI5 convient lorsque :

  • l'application s'exécute dans le SAP Fiori Launchpad ou SAP Build Work Zone, qui chargent de toute façon le runtime SAPUI5 ;
  • l'application utilise SAP Fiori elements, les smart controls ou les graphiques SAP ;
  • l'application est livrée sur la plateforme ABAP ou SAP BTP, où SAPUI5 fait partie du produit.

Pour Alder Manufacturing, une page d'auto-inscription fournisseur pour Cedar Office Supply sur un serveur web non SAP est candidate à OpenUI5 ; un list report des commandes d'achat dans le launchpad ne l'est pas. OpenUI5 est le bon choix lorsque l'indépendance vis-à-vis des licences des produits SAP compte davantage que les bibliothèques propres à SAP.

Où s'arrête OpenUI5 ?

  • Pas de floorplans générés. Sans SAP Fiori elements, les list reports et les object pages doivent être construits à la main avec des contrôles standard ; l'effort correspond donc à celui du SAPUI5 freestyle, pas à celui du développement piloté par annotations.
  • Pas de runtime de launchpad propre. Les applications destinées au SAP Fiori Launchpad s'exécutent sur le runtime SAPUI5 du launchpad, pas sur OpenUI5. En pratique, une application OpenUI5 qui rejoint un paysage SAP devient une application SAPUI5.
  • La persistance de la flexibilité est externe. Les bibliothèques de flexibilité sont incluses, mais stocker en production les modifications des key users et des utilisateurs finaux exige un back-end : le layered repository d'un système ABAP ou des services SAP BTP. Les connecteurs de stockage navigateur sont destinés aux tests.
  • Modèle de support. Les bugs et demandes d'évolution d'OpenUI5 sont remontés publiquement sous forme d'issues GitHub ; la couverture d'un usage donné d'OpenUI5 par un contrat de support SAP dépend des conditions de ce contrat.

Ces limites découlent de la séparation elle-même : OpenUI5 est le framework, et SAPUI5 y ajoute ce dont les produits SAP ont besoin.

Quelles sont les erreurs courantes avec OpenUI5 ?

  1. Démarrer sur OpenUI5 et découvrir une dépendance tardivement. Un projet qui a ensuite besoin des smart controls, de SAP Fiori elements ou de l'export vers tableur doit passer à SAPUI5. Correctif : listez les bibliothèques requises avant de choisir la livraison.
  2. Assimiler OpenUI5 à la conformité SAP Fiori. Les contrôles OpenUI5 suivent le design SAP Fiori, mais ce sont la mise en page, la navigation et la formulation qui déterminent si une application respecte les SAP Fiori Design Guidelines. Correctif : évaluez l'application au regard des guidelines, pas seulement des contrôles.
  3. Mélanger les livraisons dans un même paysage. Lancer certaines applications depuis le réseau de diffusion de contenu OpenUI5 et d'autres depuis celui de SAPUI5 complique les comparaisons de versions et le diagnostic. Correctif : utilisez une seule livraison par application et documentez-la.
  4. Ignorer les différences au niveau du patch. Les numéros de version d'OpenUI5 et de SAPUI5 peuvent diverger au niveau du patch. Correctif : consultez la boîte de dialogue des informations techniques lorsqu'un bug apparaît dans une livraison et pas dans l'autre.

La plupart des problèmes OpenUI5 sont des décisions de périmètre prises trop tôt, pas des défauts du framework.

OpenUI5 ou SAPUI5 : quelle différence ?

OpenUI5SAPUI5
LicenceApache 2.0, open sourceIncluse dans les licences des produits SAP
BibliothèquesCœur, sap.m, sap.f, sap.uxap, sap.ui.table, sap.ui.mdc, flexibilité, thèmesTout le contenu d'OpenUI5, plus SAP Fiori elements, smart controls, graphiques, shell du launchpad et plus encore
Livré avecTéléchargement public et réseau de diffusion de contenuSAP BTP, plateforme ABAP (composant SAP_UI), SAP S/4HANA
Usage typeApplications web hors produits SAP, outils open source, apprentissageApplications SAP Fiori dans SAP S/4HANA, le SAP Fiori Launchpad et SAP BTP

OpenUI5 et SAPUI5 partagent un même modèle de programmation ; SAPUI5 ajoute les bibliothèques propres à SAP sur lesquelles reposent les applications SAP Fiori des produits SAP.

Questions fréquentes

OpenUI5 est-il gratuit pour un usage commercial ?

Oui. OpenUI5 est publié sous licence Apache 2.0, qui autorise l'usage commercial, la modification et la distribution dans les conditions de la licence, comme la conservation des fichiers de licence et de notice. Les équipes doivent néanmoins mener leur revue de conformité open source habituelle avant toute livraison.

Peut-on utiliser SAP Fiori elements avec OpenUI5 ?

Non. Les bibliothèques SAP Fiori elements, pour OData V4 et V2, sont livrées uniquement avec SAPUI5. Une application qui a besoin de list reports, d'object pages ou d'autres floorplans pilotés par annotations doit s'exécuter sur SAPUI5, disponible via SAP BTP et la plateforme ABAP.

Une application OpenUI5 fonctionne-t-elle sur SAPUI5 ?

En général, oui. OpenUI5 et SAPUI5 utilisent les mêmes noms techniques et les mêmes API ; une application OpenUI5 continue donc de fonctionner lorsque le runtime passe à SAPUI5. L'application peut alors aussi utiliser les bibliothèques réservées à SAPUI5, à condition qu'une version SAPUI5 correspondante soit disponible.

OpenUI5 inclut-il le thème SAP Horizon ?

Oui. La bibliothèque du thème SAP Horizon fait partie de la livraison OpenUI5, avec la famille de thèmes Quartz. Les applications OpenUI5 peuvent donc ressembler aux applications SAP Fiori actuelles, même si les bibliothèques réservées à SAP, comme SAP Fiori elements, leur manquent.

OpenUI5 et UI5 Web Components, est-ce la même chose ?

Non. OpenUI5 est un framework applicatif complet avec modèles, routage et contrôles. Les UI5 Web Components sont un ensemble distinct de web components standard, indépendants de tout framework et au style SAP Fiori, destinés aux applications construites avec d'autres frameworks ou en HTML pur.

Sources

S'applique à
SAP BTP
Dernière relecture

SAP, SAP Fiori, SAPUI5, SAP S/4HANA, SAP BTP et les autres produits et services SAP mentionnés sont des marques commerciales ou des marques déposées de SAP SE (ou d'une société affiliée à SAP) en Allemagne et dans d'autres pays. Ce guide est indépendant ; il n'est ni affilié à SAP SE, ni sponsorisé, ni approuvé par SAP SE.