AI & Analytics Legends La plateforme de connaissance SAP Analytics
Fiche concept

Widgets personnalisés SAC

Widgets personnalisés SAC — illustration de section Analytics Legends pour la base de connaissances SAP Analytics (concepts, études, Academy)

À jour au 2026-09-27

Qu'est-ce que Widgets personnalisés SAC ?

Les widgets personnalisés SAC ne valent le coup que si un manque de visualisation est réel et récurrent sur plusieurs Stories — un Web Component qu'un développeur livre en 2-3 jours, mais que chaque release SAC peut casser.

De quoi il s'agit

Les widgets personnalisés SAC sont la surface d'extensibilité de niveau développeur qui permet à un consultant de livrer des visualisations et composants interactifs que SAC ne fournit pas en standard — diagrammes de Sankey, cartes personnalisées avec projections non standard, bibliothèques tierces (Highcharts, AmCharts), affichages riches en animations, ou formulaires de saisie spécialisés. C'est la réponse à « le graphique standard SAC ne fait pas ce dont nous avons besoin » sans abandonner SAC et reconstruire l'application ailleurs.

Ce qu'est réellement un widget personnalisé. Techniquement c'est un bundle JavaScript autonome, packagé comme Web Component, que SAC charge à l'exécution dans les Applications Analytiques. Le widget expose des propriétés (configurables dans le SAC Application Designer comme tout widget standard), des événements (déclenchables vers le code de scripting), et des méthodes (appelables depuis le scripting). Il reçoit les données de SAC via un contrat défini — lié à un dataset ou un modèle — et s'affiche dans sa zone du canevas. Authentification, fetch de données et cycle de vie sont gérés par SAC; le widget ne possède que son rendu.

Le modèle de développement. Un widget personnalisé est développé hors SAC — dans n'importe quel framework JavaScript moderne (JS pur, React via wrappers, Lit, Web Components) — et packagé comme manifest JSON + bundle JS. Il est uploadé dans le dépôt SAC Custom Widget au niveau tenant, puis devient disponible à tout designer d'Application Analytique. SAP fournit un SDK Custom Widget avec templates et CLI; le premier widget prend typiquement 2-3 jours à un développeur, de bout en bout.

Pourquoi c'est important

  • Le widget ne possède que le rendu — l'authentification, le fetch de données et le cycle de vie restent gérés par SAC via un contrat propriétés/événements/méthodes défini.
  • Pour une visualisation unique, une R-Visualization ou une image statique embarquée est moins chère que de construire et maintenir un widget personnalisé.
  • Une flotte de widgets personnalisés est un vrai passif de maintenance, car chaque release SAC peut potentiellement les casser — à intégrer dans la décision construire vs acheter.

Points clés

  • Basé sur les Web Components — bundle JS autonome que SAC charge à l'exécution dans les Analytic Applications ; agnostique du framework (JS vanille, React via wrapper, Lit).
  • Trois surfaces — Properties (configurable dans le designer), Events (déclenchable vers le script), Methods (appelable depuis le script) ; même contrat que n'importe quel widget SAC.
  • SDK plus CLI — modèles fournis par SAP, outil de build, serveur de prévisualisation locale ; premier widget en 2-3 jours de bout en bout pour un développeur JS compétent.
  • Déploiement au niveau tenant — téléversé une fois dans le dépôt de Custom Widgets ; disponible pour chaque Analytic Application du tenant.
  • Charge de maintenance — chaque version SAC peut casser le widget ; budgéter les tests de régression à chaque version.
  • Les Custom Widgets sont des Web Components côté client, à la différence de l'API de scripting côté serveur (fiche compagnon C184) — ils peuvent effectuer leurs propres appels réseau sortants depuis le navigateur, sous réserve de CORS, ce que l'API de scripting ne peut pas.
  • La charge de maintenance se concentre autour de la cadence trimestrielle des versions SAC, pas uniformément sur la durée de vie du widget — un widget partagé entre de nombreuses Stories multiplie le rayon d'impact d'un seul changement cassant.
  • Exécuter un test de fumée automatisé contre chaque version candidate trimestrielle plutôt que de découvrir une casse via un ticket de support utilisateur.

Termes employés sur cette page

Custom Widget
Une surface d'extensibilité de SAC — un bundle JS packagé en Web Component que SAC charge à l'exécution dans les Analytic Applications ; permet aux développeurs de livrer des visualisations et composants que SAC ne fournit pas nativement.
Web Component
Un standard W3C pour des composants d'interface autonomes — Custom Elements, Shadow DOM et HTML Templates ; le fondement technique des Custom Widgets SAC, et la raison pour laquelle ils s'exécutent côté client plutôt que côté serveur.
Custom Widget SDK
Le kit de développement fourni par SAP — modèles, outil CLI, serveur de prévisualisation locale, utilitaires de débogage ; la voie officielle pour construire des widgets conformes au contrat d'exécution de SAC.
Tenant repository
Le dépôt au niveau tenant de SAC pour les Custom Widgets téléversés ; une fois un widget dans le dépôt, il est disponible pour chaque concepteur d'Analytic Application du tenant.
Blast radius
Le nombre de Stories ou d'Analytic Applications affectées simultanément quand un Custom Widget partagé casse lors d'une montée de version SAC — proportionnel à la diffusion du widget.
Test de fumée sur version candidate
Une vérification automatisée qui charge un Custom Widget dans un tenant hors production face à chaque version candidate trimestrielle de SAC et confirme qu'il s'affiche toujours avec des données d'exemple, exécutée avant la version plutôt que découverte via un ticket de support après coup.
Appel sortant côté client
Une requête réseau que le propre code JavaScript d'un Custom Widget effectue directement depuis le navigateur (fetch/XHR, sous réserve de CORS) — possible pour les Custom Widgets, impossible pour l'API de scripting côté serveur (fiche compagnon C184), et une surface de revue de sécurité distincte.

Sources

  1. SAP Help Portal — SAC Custom Widgets SDK
  2. SAP TechEd 2024 — SAC Application Designer + Custom Widgets sessions
  3. Extending the Fiori App Display Supplier List (F1861): A Practical Approach Using CDS Views — SAP Community (Enterprise Resource Planning Blog Posts by Members)
  4. SAP Analytics Cloud: від таблиць Excel до розумних дашбордів — SAP Community (Kyiv Blog Posts)
  5. Why Stock Fields Return Zero in Custom CDS Views on MARC - and How to Resolve It — SAP Community (ABAP Blog Posts)
  6. Context Engineering in SAP Analytics Cloud: Building ContextWallet for AI and Genie Integrations — SAP Community (Technology Blog Posts by Members)
  7. Improving SAP Analytics Cloud Story Performance with a Simple Landing Page — SAP Community (Technology Blog Posts by Members)
  8. SAP Analytics Cloud Dimension Tables Move to the File Repository — SAP Community (Data Professionals Blog posts)
  9. Table Widget Improvements in SAP Analytics Cloud 2026 Q2 QRC — SAP Community (Data Professionals Blog posts)
  10. はじめてのSAP Analytics Cloud BI - エクスポート — SAP Community (Technology Blog Posts by SAP)
  11. Building a “Plug-and-Play” Navigation Bar in SAP Analytics Cloud — SAP Community (Technology Blog Posts by Members)
  12. SAP Analytics Cloud Q1 2026 Release: Insights from Hands‑On Experience — SAP Community (Technology Blog Posts by Members)
  13. はじめてのSAP Analytics Cloud BI - Just Ask — SAP Community (Technology Blog Posts by SAP)
  14. Adding a Decomposition Tree to SAP Analytics Cloud with D3.js — SAP Community (Data and Analytics Blog Posts)
  15. The Controller's Favourite: A Business Calculator Custom Widget for SAP Analytics Cloud Tables — SAP Community (Technology Blog Posts by SAP)

Fiche complète réservée aux abonnés. Ce que la fiche complète ajoute : le cadre de décision complet · la comparaison SAP · Snowflake · Databricks · Fabric · les pièges courants et leur correctif · l'aide-mémoire · les schémas d'architecture · les blocs de code · les chiffres à citer.

Ouvrir dans l'application →