Configurer l’instance du composant de visualisation des données

  • Rversion finale: Australia
  • Mis à jour 12 mars 2026
  • 4 minutes de lecture
  • Configurez l’instance du composant de visualisation des données afin que vos utilisateurs puissent l’intégrer sur leur site Web pour afficher des informations sous la forme d’un score unique, d’un graphique à secteurs, d’un graphique en anneau ou d’un graphique en semi-anneau directement à partir de n’importe quelle ServiceNow table.

    Avant de commencer

    Vous devez disposer de la configuration suivante pour configurer l’instance du composant Visualisation de données :

    Rôle requis : sn_embeddable_core.emb_admin

    Procédure

    1. Accédez à la Tous > Intégrables Web > Page d'accueil.
    2. Sur la page d’accueil, sélectionnez Créer un module ou utilisez le module existant.
      Pour plus d’informations sur la création d’un nouveau module, reportez-vous à la section Créer un module.
    3. Sur la page du module, dans l’onglet Composants, ajoutez une instance de composant de visualisation des données à un groupe existant ou nouveau.
      Pour plus d’informations sur la création d’un groupe, puis sur l’ajout d’une instance de composant, reportez-vous à la section Créer un groupe et ajouter une instance de composant.
    4. Configurez les propriétés de l’instance du composant de visualisation de données.
    5. Sélectionnez l’onglet Règles CORS pour configurer les règles CORS.
    6. Sélectionnez l’onglet Composants .
      Si un message s’affiche sur le périmètre de l’application, remplacez le périmètre par Composants Web pour que le Service clientèle puisse modifier l’enregistrement.
    7. Sélectionnez Obtenir du code intégré.
      Une fenêtre contextuelle apparaît pour afficher à la fois le code global et le code de composant.
    8. Dans l’onglet Code global, examinez le code généré et sélectionnez Copier le code global.
      Le code global ne doit être ajouté qu’une seule fois à votre page Web tierce.
      import { init, login, logout, startGuestSession } from 'https://demo.servicenow.com/uxasset/externals/sn_embeddable_core/index.jsdbx';
      
      await init({
          theme: 'fad87d2ca304121029a4d1aed31e610f',  /* sys_id of the theme to use for the embeddable components in your website */
          baseURL: 'https://demo.servicenow.com', /* Base URL of the instance to be used for the embeddable components in your website */
          authCallback: getTokenCallBack, /* Function which returns the auth token for the current user, required for auth setup */
          module: '591800ffc1243610f87714367ed47c6a', /* Demo module */
          pageName: document.title, /* Uses the browser's document title as the page name in User analytics experience */
          guestTokenCallback: getGuestJWTTokenCallBack, /* Function which returns the guest token for the current user, required for guest validation setup */
          cacheComponents: [] /* Pre-caches resources for improved performance. Update component list as per your usage */
      });
      
      function getTokenCallBack() {
          var idToken; /* Get the id token for the current user */
          return Promise.resolve(idToken);
      }
      
      function getGuestJWTTokenCallBack() {
          var guestToken; /* Get the guest token for the current user */
          return Promise.resolve(guestToken);
      }
      
      /* Uncomment below function to handle guest session */
      // await startGuestSession();
      
      /* Uncomment below functions to handle login and logout once the user logs into your website */
      // await login();
      // await logout();
    9. Facultatif : Dans l’onglet Code de composant, faites glisser le commutateur Activer le gestionnaire d’événements pour gérer les événements déclenchés par les interactions de l’utilisateur sur le site Web.
      Remarque :
      L’activation du gestionnaire d’événements modifie également le code de composant. Pour plus d’informations sur les gestionnaires d’événements dans , reportez-vous Gestionnaire d’événements dans le composant de visualisation des donnéesà Intégrable au web.
    10. Dans l’onglet Code de composant, examinez le code généré et sélectionnez Copier le code de composant.
      Le code de composant généré comprend également des configurations pour les gestionnaires d’événements et un graphique en anneau.
      <!--  
          Module: Demo module
          Group: Group 1
          Instance: Data visualization 1
      -->
      <sn-embedx-visualization-donut
      	sort-by="value"
      	data-labels-type="value"
      	data-sources='[{"allowRealTime":true,"dataCategories":["trend","group","simple"],"filterQuery":"active=true^sys_updated_onONLast 7 days@javascript:gs.beginningOfLast7Days()@javascript:gs.endOfLast7Days()","id":"dGFibGVzbl9jdXN0b21lcnNlcnZpY2VfY2FzZTE3MjU0MjYxODczODc=","isDatabaseView":false,"label":"Case","preferredVisualizations":["d24d53f60350de7a652caf3188a46ed2"],"reportSourceSysId":null,"sourceType":"table","tableOrViewName":"sn_customerservice_case"}]'
      	metrics='[{"aggregateFunction":"COUNT","axisId":"primary","dataSource":"dGFibGVzbl9jdXN0b21lcnNlcnZpY2VfY2FzZTE3MjU0MjYxODczODc=","id":"ZEdGaWJHVnpibDlqZFhOMGIyMWxjbk5sY25acFkyVmZZMkZ6WlRFM01qVTBNall4T0Rjek9EYz0xNzI1NDI2MTg4NjYx","numberFormat":{"customFormat":false}}]'
      	group-by='[{"disableRanges":false,"groupBy":[{"dataSource":"dGFibGVzbl9jdXN0b21lcnNlcnZpY2VfY2FzZTE3MjU0MjYxODczODc=","groupByField":"state","isChoice":true,"isPaBucket":false,"isRange":false}],"hideZeroValues":true,"maxNumberOfGroups":"ALL","numberOfGroupsBasedOn":"NO_OF_GROUP_BASED_ON_PER_METRIC","showOthers":false}]'
      	additional-group-by-config='[{"id":"state","label":"State"},{"id":"account","label":"Account"}]'
      	truncation-type="end"
      	show-register
      	register-position="bottom"
      	register-orientation="horizontal"
      	legend-horizontal-alignment="center"
      	ranges-config='null'
      	color-config='null'
      	show-header
      	header-color='null'
      	title-color='null'
      	sort-by-order="desc"
      	empty-state-illustration="no-data"
      	empty-state-heading="No data available."
      	empty-state-heading-level="3"
      	empty-state-content="There are no scores available for the selected criteria. Contact your admin for more info."
      	empty-state-alignment="vertical-centered"
      	number-of-periods="3"
      	period="M"
      	user-info='"@context.session.user"'
      	shared-context='null'
      	colors='{}'>
      </sn-embedx-visualization-donut>
      <!--
       The component also includes the following additional properties:
       show-border
       drilldown-label
       show-data-labels
       max-label-size
       show-register-on-same-line
       show-register-value
       legend-max-item-width
       legend-expand-to-fit
       show-register-percentage
       wrap-title
       show-header-separator
       header-title
       description
       refresh-request
       show-additional-group-by-selector
       show-metric-label
       show-total-value
       enable-click-and-stay
       show-data-table
       enable-custom-empty-state
       apply-date-range
       show-absolute-period
       score-type
       start-time
       end-time
       use-current-date-for-end
       show-extended-error-messages
       auto-aggregate-periods
      -->
      
      <script type="module">
      	import { getEmbeddables, setEvents, setProperties } from 'https://demo.servicenow.com/uxasset/externals/sn_embeddable_core/index.jsdbx';
      	
      	const snEmbedxVisualizationDonut = document.querySelector('sn-embedx-visualization-donut');
      
      	getEmbeddables(["sn-embedx-visualization-donut"]);
      
      	const eventHandlers = {
      		'NOW_VIS_WRAPPER#PROPERTY_OVERRIDE' : (e) => {
      			// Dispatched when the visualization overrides its property. For example when the user selects a different group by from the alternative group by selection
      			var {properties} = e.detail.payload;
      			console.log(properties);
      		},
      		'NOW_VIS_WRAPPER#SELECTED' : (e) => {
      			// Dispatched when the user selects/de-selects element on data visualizations, typically to filter other content on the page
      			var {title, type, isSelected, params, data} = e.detail.payload;
      			console.log(title, type, isSelected, params, data);
      		},
      		'NOW_VIS_WRAPPER#CLICKED' : (e) => {
      			// Dispatched when the visualization is clicked
      			var {title, type, params, data} = e.detail.payload;
      			console.log(title, type, params, data);
      		}
      	};
      
      	setEvents(snEmbedxVisualizationDonut, eventHandlers);
      </script>
      

    Résultats

    Les codes globaux et de composant sont prêts à être partagés avec l’administrateur tiers pour intégrer l’instance du composant de visualisation des données sur son site Web tiers.

    Que faire ensuite

    Intégrer l’instance du composant de visualisation des données sur le site Web du tiers