Intégrer un portlet (graphique ou autre élément) dans une page web

Modifié par Aurelie Bertrand le 2025/05/15 16:27


Dans cette documentation, nous nous plaçons dans le contexte suivant :

  • Nom du serveur : ddsrv
  • Port : 8080
  • Domaine DigDash : ddenterpriseapi
  • Domaine tableau de bord DigDash: digdash_dashboard

Il faudra bien sûr adapter l'intégration à votre contexte.

💡 Vous pouvez aussi utiliser un mécanisme d'authentification server-side pour éviter les paramètres user/pass. Consultez la page Anonymisation des Urls pour plus de détails.
Dans ce cas le paramètre authToken remplace le paramètre pass.

Mode d’intégration par iFrame

ℹ En mode iFrame, seul un portlet graphique (flux) peut être intégré. Les autres portlets (filtres, légende, commentaires, etc) ne peuvent être intégrés.

Vous pouvez intégrer un graphique (flux) de votre portefeuille d’informations dans une iframe en utilisant l'URL sous la forme suivante :

http://ddsrv:8080/ddenterpriseapi/viewflow?flowId=<flowid>

Vous pouvez facilement obtenir l’URL d’un flux depuis le panneau de gestion des flux dans le Studio. Pour cela, cliquez-droit sur le flux puis sélectionnez Copier l’URL du flux.

Copy_flow_URL_FR.png 

Par exemple :

http://ddsrv:8080/ddenterpriseapi/viewflow?flowId=15455f95

Il est possible de passer des paramètres dans cette URL qui seront lus par l’application pour s'authentifier et adapter le contenu affiché.
Ces paramètres sont ajoutés sous forme de chaîne de requête à la fin de l’URL, après un point d’interrogation ?.
Chaque paramètre est une paire clé=valeur, et les différentes paires sont séparées par un &.
Consultez le paragraphe Paramètres disponibles pour la liste des paramètres.

Par exemple, pour afficher le graphique avec :

  • l'identifiant 15455f95
  • l'utilisateur user1 et le mot de passe pass1
  • la barre de filtre désactivée

nous intégrons le code dans la balise iFrame comme suit :

<iframe src="http://ddsrv:8080/ddenterpriseapi/viewflow?flowId=15455f95&user=user1&pass=pass1&hideFilters=true"></iframe>

Paramètres disponibles

Les paramètres disponibles pour les graphiques (flux) sont les suivants :

ParamètreValeurDescription

flowId

flowId

Identifiant du flux à afficher
useruserUtilisateur à authentifier
passpasswordMot de passe pour l’utilisateur non authentifié
authTokentokenToken pour l’utilisateur non authentifié
hideFilterstrue|falseMasque (true) ou affiche (false) la barre de filtres
nomVariablevaleurVariableSpécifie la valeur de la variable nomVariable

nomDimension

Si la dimension contient une hiérarchie ou plus, vous pouvez sélectionner la hiérarchie et le niveau souhaités en ajoutant :

  • HDimensionName
  • LDimensionName

valeurFiltre

aaaa

NomHierarchie
NiveauHierarchie

Spécifie le membre de la dimension filtré

   zzzzzzz

Spécifie le nom de la hiérarchie
Spécifie le niveau de la hiérarchie

Mode d’intégration JavaScript embarqué

ℹ Dans ce mode, vous pouvez intégrer, en plus des graphiques, d'autres types d'éléments : filtres, légendes, commentaires, sélecteur de mesures, variables, recherche et éléments filtrés.

Ce mode nécessite de charger le fichier Javascript permettant d'afficher un tableau de bord DigDash dans une page web. Pour cela, ajoutez la ligne de code suivante dans la section <head> de votre page web :

<script src="http://ddsrv:8080/digdash_dashboard/digdash.dashboard.js"></script>

Vous pouvez intégrer un tableau de bord DigDash soit en HTML à l’aide de balises dédiées, soit via JavaScript pour une configuration plus dynamique.

Intégration HTML

Une balise personnalisée <dd-portlet/> permet d’intégrer un graphique (flux) ou autre élément intégrable, directement dans le code HTML, sans écrire de JavaScript. Ce mode est pratique pour des pages simples ou dans le cas où le JavaScript n'est pas autorisé.

💡Dans ce cas l'authentification se fait une seule fois dans la première balise <dd-portlet/> de la page. Cela peut être n'importe quel type de portlet.

Graphique (flux)

Pour intégrer un graphique, utilisez le code sous la forme suivante à l'emplacement souhaité sur la page web :

<dd-portlet type="flow" flowId="flowId"/>

Dans ce mode, les paramètres sont passés directement comme attributs de la balise. Consultez le paragraphe Paramètres disponibles pour la liste complète.

Par exemple, pour afficher un graphique avec :

  • l'identifiant 15455f95
  • l'en-tête masquée
  • les faits marquants désactivés

nous utilisons le code suivant :

<dd-portlet type="flow" flowId="flowId" showheader="false" highlightdata="false"/>

Si on y intégre l'authentification :

<dd-portlet user="user1" pass="pass1" type="flow" flowId="flowId" showheader="false" highlightdata="false"/>

Autres éléments (filtres, légendes...)

Sur le même principe, il est possible d'intégrer d'autres types d'éléments (portlets) : filtres, légendes, commentaires, sélecteur de mesures, variables, recherche et éléments filtrés.
Pour cela, utilisez la syntaxe globale suivante :

<dd-portlet type="typeDuPortlet" parameterId="value"/>
// parameterID pour les autres paramètres en fonction du type

Consultez le paragraphe Paramètres disponibles pour la liste complète.

Par exemple, pour un contenu de type filtre Dimension :

<dd-portlet type="dimension" dim="Type de ligne" datasource="Telecom" viztype="SlicerHorizontal" showsearch="false" showborder="false"/>
// dim : Nom de la dimension
// datasource : Nom de la source de données
// viztype: Type de visualisation liste horizontale
// showsearch : Affichage de la boîte de recherche
// showborder : Affichage de la bordure

Intégration JavaScript

Graphique (flux)

Pour intégrer un graphique en mode JavaScript :

  1. Ajoutez une balise <div> avec un identifiant unique à l'emplacement souhaité sur la page web : cette balise servira de conteneur pour afficher le graphique.
    Par exemple : 
<div id="tableflow"></div> // où tableflow est l'identifiant (divId)
  1. Ajoutez le script JavaScript pour initialiser et afficher le graphique .
    Pour cela, dans une balise <script>, ajoutez le code suivant :
DigDash.init({
"url":"http://ddsrv:8080/digdash_dashboard",
"user": "user",
"pass": "pass"
});

DigDash.drawPortlet("divId",{
"type": "flow",
"flowId": "flowId"
});
  • La méthode DigDash.init() permet d'initialiser le tableau de bord en spécifiant l'URL du serveur DigDash et les paramètres d'authentification.
  • La méthode DigDash.drawPortlet() permet d'afficher l'élément (portlet) avec les paramètres spécifiés dans le conteneur défini précédemment. Consultez le paragraphe Paramètres disponibles pour la liste complète.

 💡 N’oubliez pas d’appeler la fonction draw() dans le body :

<body onload="draw()">

Par exemple, pour afficher un graphique (divId = columnflow), nous utilisons le script suivant :

<script>
function draw() {
 // Initialisation de la connexion au serveur DigDash
 DigDash.init({
   "url": "https://ddsrv:8080/digdash_dashboard/",
   "user": "user",
   "pass": "pass"
  });

 // Affichage d'un graphique en colonnes
 DigDash.drawPortlet("columnflow", {
   "type": "flow",
   "flowId": "22a0cc0d",
   "showborder": false,
   "showheader": false
  });
}
</script>

Autres éléments (filtres, légendes...)

Sur le même principe, il est possible d'intégrer d'autres types d'éléments (portlets) : filtres, légendes, commentaires, sélecteur de mesures, variables, recherche et éléments filtrés.
Pour cela, utilisez la syntaxe globale suivante :

DigDash.drawPortlet("divId", {
  type: "typeDuPortlet",
  // autres paramètres en fonction du type
});

Consultez le paragraphe Paramètres disponibles pour la liste complète.

Par exemple, pour afficher un graphique (div id = columnflow) et la légende associée (div id = legend), nous utilisons le script suivant :

<script>
function draw() {
 // Initialisation de la connexion au serveur DigDash
 DigDash.init({
   "url": "https://ddsrv:8080/digdash_dashboard/",
   "user": "user",
   "pass": "pass"
  });

 // Affichage d'un graphique en colonnes
 DigDash.drawPortlet("columnflow", {
   "type": "flow",
   "flowId": "22a0cc0d",
   "showborder": false,
   "showheader": false
  });

 // Légende associée au graphique en colonnes
 DigDash.drawPortlet("legend", {
   "type": "legend",
   "flow": "22a0cc0d",
   "showborder": false,
   "showheader": true,
   "layout": "horizontal"
  });
}
</script>

Paramètres disponibles

Paramètres communs à tous les éléments (portlets)

Ces paramètres sont disponibles aussi bien pour les graphiques que pour les autres éléments.

ParamètreValeurValeur par défautDépendanceDescription
type

"flow"
"filter"
"globalfitler"
"legend"
"comment"
"text query"
"measure selector"
"dimension"
"measurefilter"
"variable"

AucuneParamètre
obligatoire
Type de portlet :
  • "flow" : graphique (flux)
  • "filter" : éléments filtrés
  • "globalfilter" : recherche
  • "legend" : légende
  • "comment" : commentaires
  • "text query" : requête sur les données
  • "measure selector" : sélecteur de mesures
  • "dimension" : filtre dimension
  • "measurefilter" : filtre mesure
  • "variable" : variable
subtypeflow_datamodelwrapper.xmlAucune Permet de définir un sous-type aux flux
nameChaîne de caractèresAucune Nom de la portlet qui sera affiché dans l'en-tête (header)
colorValeur hexadécimaleAucune Couleur du fond de la portlet
imageChemin vers l'imageAucune Image de fond de la portlet
showborderBooléen"true" Affiche une bordure autour de la portlet
showheaderBooléen"true" Affiche un en-tête au-dessus de la portlet
maximizeBooléen"false" Permet d'agrandir la portlet dans le Dashboard
cssstyleClasse cssnone Permet d'appliquer un css à cette portlet
cssContenu de la classe cssnonecssstyle
doit exister
Contenu de la classe css
descriptionChaîne de caractèresnone Permet d'afficher une aide contextuelle via un icône sur la portlet

Paramètres spécifiques aux graphiques (flux)

ParamètreValeurValeur par défautDépendanceDescription
highlightdataBooléen"true" Afficher les faits martquants highlights
flowdetail"auto" ou flowid"false" Afficher les détails du flux
displaycommenticonBooléen"false" Afficher un icône lors de la présence de commentaire
displaylegendiconBooléen"false" Afficher un icône qui affiche la légende au clic
layoutlegend"horizontal" ou "vertical""vertical"displaylegendicon doit être défini à trueType d'affichage de la légende : horizontal ou vertical
displayaxisnamelegendBooléen"false"displaylegendicon doit être défini à trueAfficher le titre de l'axe
menuBooléen"true" Afficher le bouton permettant d'ouvrir le menu
exportCSVBooléen"true"menu doit être défini à truePermettre l'export CSV depuis le menu
exportPDFBooléen"true"menu doit être défini à truePermettre l'export PDF depuis le menu
exportPPTBooléen"true"menu doit être défini à truePermettre l'export PPT depuis le menu
exportXLSBooléen"true"menu doit être défini à truePermettre l'export Excel depuis le menu
exportXLSWithoutStylesBooléen"true"menu doit être défini à truePermettre l'export Excel sans les styles depuis le menu
menuinfoBooléen"true"menu doit être défini à truePermette l'affichage des informations depuis le menu

Paramètres spécifiques au contenu Éléments filtrés

ParamètreValeurValeur par défautDescription
displaydimensionBooléen"false"Afficher le nom de la dimension
displayhierarchyBooléen"false"Afficher le nom de la hiérarchie
displaylevelBooléen"false"Afficher le nom du niveau

Paramètres spécifiques au contenu Recherche

ParamètreValeurValeur par défautDépendanceDescription
flowsListe d'identifiants de flux séparés par des virgulesAucuneLes flux (graphiques) doivent exister sur la pagePermet de n'afficher que les membres des dimensions des flux dont l'identifiant est spécifié
labelTexteAucune Permet de changer le libellé "Recherche"

Paramètres spécifiques au contenu Légende

ParamètreValeurValeur par défautDépendanceDescription
displayaxisnameBooléen"true" Afficher le titre de l'axe
layout"horizontal" ou "vertical""vertical" Type d'affichage de la légende : vertical ou horizontal
flowflowidAucune Le contexte de la légende sera déterminé par ce flux
hideelement"true"Aucuneselectelement ne doit pas être définiAffiche un icône permettant de masquer l'élément au clic
selectelement"true"Aucunehidelement ne doit pas être définiAffiche un icône permettant de sélectionner l'élément au clic
sorttype0 or 1Aucunesortreverse doit être défini0 = Tri alphabétique, 1 = Tri numérique
sortreversebooleanAucunesorttype doit être définiTri de manière croissante ou décroissante

Paramètres spécifiques au contenu Commentaires

ParamètreValeurValeur par défautDépendanceDescription
datamodelsListe d'identifiants de modèles de données séparés par des virgulesAucuneLes modèles de données doivent exister sur la pageN'afficher que les commentaires sur les modèles de données dont l'identifiant est spécifié
flowsListe d'identifiants de flux séparés par des virgulesAucuneLes flux (graphiques) doivent exister sur la pageN'afficher que les commentaires sur les flux (graphiques) dont l'identifiant est spécifié
displaytype"displaytypelist" ou "displaytypetext"Aucune Type d'affichage des commentaires : Liste ou Texte
filtertype"all" ou "lastdays" ou "lastcomments""all"doit avoir un paramètre "filter"Option de filtrage des commentaires : Tous, X derniers jours ou X derniers commentaires
filterNumériqueAucunefiltertype doit être différent de "all"Paramètrage du filtrage des commentaires : X nombre de jours ou de commentaires
displayallcommentsBooléen"false" Afficher tous les commentaires

Paramètres spécifiques au contenu Documents

ParamètreValeurValeur par défautDépendanceDescription
searchboxBooléen"true" Afficher le champ de recherche
serverIdentifiant du serveurAucuneParamètre
obligatoire

Identifiant ou nom du serveur de documents sur lequel requêter

Paramètres spécifiques au contenu Sélecteur de mesures

ParamètreValeurValeur par défautDépendanceDescription
flowsListe d'identifiants de flux séparés par des virgulesAucuneParamètre
obligatoire
Flux (graphiques) sur lesquels baser le sélecteur de mesures
viztype"list", "combo" or "checkbox""list" Type de visualisation du sélecteur de mesure : Liste, Liste déroulante ou Cases à cocher
vizlayout"vertical" or "horizontal""vertical"Pas d'effet dans le cas de la liste déorulante (combo)Type d'affichage : Vertical ou non
multiselectBooléen"true" Permettre la sélection multiple

Paramètres spécifiques au filtre Dimension

ParamètreValeurValeur par défautDépendanceDescription
dimNom de la dimensionAucuneParamètre
obligatoire
Nom de la dimension
datasourceIdentifant du modèle de donnéesAucuneParamètre
obligatoire
Identifant du modèle de données
viztype"SlicerOneByOne"
"Slicer"
"SlicerHorizontal"
"SlicerCombo"
"SlicerSlider"
"SlicerDatePicker"
"SlicerCheckBox" "SlicerComboRange"
"SlicerTree"
"SlicerMatch"
SlicerCheckBoxParamètre obligatoire. Types disponibles selon la nature de la dimensionType de visualisation du filtre :
  • Un par un
  • Liste verticale
  • Liste horizontale
  • Liste déroulante
  • Curseur
  • Calendrier
  • Case à cocher
  • Liste min/max
  • Liste arborescente
  • Règle
flowsListe d'identifiants de flux séparés par des virgules Les flux (graphiques) doivent exister sur la pageGraphique(s) sur lesquels le filtre sera appliqué
hierarchyNom de la hiérarchieAucuneLa dimension doit être hiérarchiqueFiltrer sur la hiérarchie
levelNom du niveauAucuneLa dimension doit être hiérarchiqueFiltrer sur le niveau
dimlabel${dimension}, ${hierarchy} or ${level},
peuvent être utilisés ensemble séparés par '/'
${dimension}La dimension doit être hiérarchique
${hierarchy} ou ${level}
Modifier l'affichage du nom de la dimension
authorizereversefilterBooléen"false" Autoriser l'exclusion des membres
multiselectBooléen"true" Activer la sélection multiple lors de la sélection d'un élément
forbidmultiselect "false" "muliselect" doit être défini à falseInterdire la sélection multiple
filteronsinglememberBooléen"false" Filtre sur l'élement unique
authorizechangelevelBooléen"false"Sur une dimension hiérarchiqueAutoriser le changement de niveau
showsearchBooléen"true"Sur une dimension continueAfficher la boîte de recherche
forbidemptyselectionBooléen  Interdire la sélection vide
hidemptyBooléen  Cacher les valeurs vides
rangeBooléen"false"Sur une dimension continuePermet de filtrer toutes les valeurs contenues dans un intervalle
minminAucunerange doit être défini à trueLe minimum de l'intervalle
maxmaxAucunerange doit être défini à trueLe maximum de l'intervalle
filter"first" "last"Aucune Filtrer sur le premier ou le dernier élément
sorttype0 ou 1Aucunesortreverse doit être défini0 = Tri alphabétique, 1 = Tri numérique
sortreverseBooléenAucunesorttype doit être définiTri de manière croissante ou décroissante

Paramètres spécifiques au filtre Mesure

ParamètreValeurValeur par défautDépendanceDescription
measurenameNom de la mesureAucuneParamètre
obligatoire
Nom de la mesure à filtrer
flowsListe d'identifiants de flux séparés par des virgulesAucuneParamètre
obligatoire
Flux (graphiques) impactés par ce filtre
hidemeasurenameBooléen"false" Cacher le nom de la mesure

Paramètres spécifiques au filtre Variable

ParamètreValeurValeur par défautDépendanceDescription
varnameNom de la variableAucuneParamètre
obligatoire
Nom de la variable à filtrer
viztype

"slider"
"verticalslider"
"combo"
"spinner",
"horizontallist"
"verticallist"
"textfield"

"combo", "slider" ou "textfield"
selon les paramètres de la variable
horizontallist et verticallist sont disponibles seulement pour les variables avec des valeurs explicitesType de visualisation de la variable :
  • Curseur horizontal
  • Curseur vertical
  • Liste déroulante
  • Spinner
  • Liste horizontale
  • Liste verticale
  • Champ texte
hidevarnameboolean"false" Cacher le nom de la variable

Pages connexes...