Last modified by jhurst on 2024/04/02 14:25

Show last authors
1 {{ddtoc/}}
2
3 (% class="wikigeneratedid" id="HFonctionsJavascript28DashboardAPI29" %)
4 Il y a deux façons d'ajouter des comportements customisés dans les tableaux de bords. Le premier est d'utiliser l'éditeur de Javascript global disponible dans l'éditeur de tableaux de bords. Le second est la portlet Editeur de texte. Cet élément permet d'ajouter un bloc de texte (et/ou HTML) à une page de tableau de bord. Les possibilités sont étendues grâce à une interface de programmation (API) permettant d'ajouter des appels Javascript de fonctions de tableau de bord à des hyper-liens dans un éditeur de texte.
5
6 Grâce à ces fonctions, on peut commander un changement de page, un filtrage sur une dimension donnée, changer une variable DigDash, etc.
7
8 Chaque fonction est appelée sur un objet implicite **ddCtrl** défini par le moteur du tableau de bord. Voici la liste des fonctions :
9
10 (% class="box warningmessage" %)
11 (((
12 //Sauf indication contraire, les valeurs de paramètres sont des IDs d'objets, et non les noms formatés et/ou traduits. Pour les autres paramètres qui ne sont pas des IDs, leur type est précisé par une lettre en minuscule préfixant leur nom : 'b' pour booléen, 'o' pour objet, 'l' pour liste (tableau) et 'i' pour entier (integer).//
13
14 //Un paramètre entre crochets [ ] est optionnel et peut-être omis s'il n'est pas nécessaire dans le contexte.//
15 )))
16
17 = Fonctions de variables (DDVariables) =
18
19 **void ddCtrl.{{id name="changeVariable"/}}changeVariable(nom, valeur)**
20
21 Description : Change la valeur de la variable <nom>.
22
23 Exemple :
24
25 (% class="box" %)
26 (((
27 <a href="javascript:__ddCtrl.changeVariable__('ratioEuro', 1.30)">EuroDollar: 1.30</a>
28 )))
29
30
31 **(Nombre) ddCtrl.getDDVar (nom)**
32
33 Description : Retourne le valeur de la variable <nom>.
34
35 Exemple :
36
37 (% class="box" %)
38 (((
39 <a href="javascript:ddCtrl.changeVariable('ratioEuro', __ddCtrl.getDDVar__('ratioEuro') + 0.1)">Augmenter EuroDollar</a>
40 )))
41
42 = Fonctions de filtrage et navigation de données =
43
44 **FilterOperand (dimension, membre, hiérarchie, niveau, membreFormaté, bAjoutFiltre, bExcluFiltre)**
45
46 Description : Objet permettant de spécifier le filtre à appliquer.
47
48 Exemple :
49
50 (% class="box" %)
51 (((
52 <a href="javascript[[:>>path:javascript:ddCtrl.filter('Dim]]ddCtrl.filter('Dim Géo', new FilterOperand('Dim Géo', 'France', 'Géo', 'Pays', false, false))">Filtre France</a>
53 )))
54
55 (% class="box infomessage" %)
56 (((
57 //Note : Le booléen bAjoutFiltre à la valeur true permet d’ajout le filtre au filtre déjà existant sur cette dimension. Le booléen bExcluFiltre à la valeur true permet d’activer le mode exclusion du filtre (au lieu de filtre sur le membre, cela filtre sur tous les autres membres exceptés celui spécifié).//
58 )))
59
60
61 **FilterOperandContinuous (dimension, min, max, bExcluFiltre)**
62
63 Description : Objet permettant de spécifier le filtre de type intervalle à appliquer sur une dimension continue.
64
65 Exemple :
66
67 (% class="box" %)
68 (((
69 <a href="javascript[[:>>path:javascript:ddCtrl.filter('Dim]]ddCtrl.filter('Date', new FilterOperandContinuous('Date', new Date(2018, 0, 1).getTime()/1000, new Date(2019, 0, 1).getTime()/1000, false))">Filtre Année 2018</a>
70 )))
71
72 (% class="box infomessage" %)
73 (((
74 //Note : Le booléen bExcluFiltre à la valeur true permet d’activer le mode exclusion du filtre (au lieu de filtre sur le membre, cela filtre sur tous les autres membres exceptés celui spécifié).//
75 )))
76
77
78 **void ddCtrl.filter (dimension, membre)**
79
80 Description : filtre sur une dimension.
81
82 Exemple :
83
84 (% class="box" %)
85 (((
86 <a href="javascript:__ddCtrl.filter__('Pays', 'France')">Filtre France</a>
87 )))
88
89 (% class="box infomessage" %)
90 (((
91 //Note : Le membre spécifié filtre sur la hiérarchie et le niveau courant pour cette dimension.//
92 )))
93
94
95 **void ddCtrl.filter (oFilterOperand)**
96
97 Description : filtre sur une dimension en spécifiant une hiérarchie et un niveau.
98
99 Exemple :
100
101 (% class="box" %)
102 (((
103 <a href="**javascript:__ddCtrl.filter__(new FilterOperand(**'Lieu', 'FR', 'Géographique', 'Pays'))">Détails France</a>
104 )))
105
106 (% class="box infomessage" %)
107 (((
108 //Note : Lieu// est la dimension, //FR// est l'ID du membre sélectionné, //Géographique// est la hiérarchie et //Pays// est le niveau.
109 )))
110
111
112 **void ddCtrl.filterAndChangePage (page, dimension, membre)**
113
114 Description : filtre sur une dimension et change de page.
115
116 Exemple :
117
118 (% class="box" %)
119 (((
120 <a href="javascript:__ddCtrl.filterAndChangePage__('Production.Détails Pays', 'Pays', 'France')">Détails France</a>
121 )))
122
123
124 **void ddCtrl.setFilterMinMax (dimension, min, max)**
125
126 Description : filtre sur une dimension continue en spécifiant une valeur min et une valeur max. Note : une date DigDash est un timestamp en secondes.
127
128 Exemple :
129
130 (% class="box" %)
131 (((
132 <a href="javascript:__ddCtrl.setFilterMinMax__('Date', new Date(2014, 0, 1).getTime()/1000, new Date().getTime()/1000">2014 to date</a>
133 )))
134
135
136 **(Tableau de Chaines) ddCtrl.getDimensionFilter (dimension [, bContinue])**
137
138 Description : Renvoie la liste des éléments filtrés sur la dimension (continue ou discrète).
139
140 Exemple :
141
142 (% class="box" %)
143 (((
144 <a href="javascript:alert(__ddCtrl.getDimensionFilter__('Pays'))">Filtres Sur Pays</a>
145 )))
146
147
148 **void ddCtrl.isDimensionFiltered (dimension [, bContinue])**
149
150 Description : Retourne vrai (true) si la dimension (continue ou discrète) est filtrée. Retourne faux (false) dans le cas contraire.
151
152 Exemple :
153
154 (% class="box" %)
155 (((
156 <a href="javascript:alert(__ddCtrl.isDimensionFiltered__('Pays'))">Pays Filtré ?</a>
157 )))
158
159
160 **void ddCtrl.removeAllFilters ()**
161
162 Description : Supprime tous les filtres du tableau de bord.
163
164 Exemple :
165
166 (% class="box" %)
167 (((
168 <a href="javascript:(% class="wikiinternallink wikiinternallink wikiinternallink wikiinternallink wikiinternallink wikiinternallink wikiinternallink wikiinternallink wikiinternallink wikiinternallink wikiinternallink wikiinternallink wikiinternallink wikiinternallink wikiinternallink wikiinternallink wikiinternallink wikiinternallink wikiinternallink wikiinternallink" %)__ddCtrl.removeAllFilters__(%%)()">Reset</a>
169 )))
170
171
172 **void ddCtrl.removeAllFiltersCurrentPage ()**
173
174 Description : Supprime les filtres de la page courante.
175
176 Exemple :
177
178 (% class="box" %)
179 (((
180 <a href="javascript:(% class="wikiinternallink wikiinternallink wikiinternallink wikiinternallink wikiinternallink" %)__ddCtrl.removeAllFilters__(%%)__CurrentPage__()">Reset</a>
181 )))
182
183
184 **void ddCtrl.removeFilters (dimension [, bContinue])**
185
186 Description : Supprime les filtres courants sur la dimension (continue ou discrète).
187
188 (% class="box" %)
189 (((
190 Exemple : <a href="javascript:__ddCtrl.removeFilters__('Pays')">Tous les pays</a>
191 )))
192
193
194 **void ddCtrl.beginSelection ()**
195
196 **void ddCtrl.commitSelection ()**
197
198 Description : En conjonction avec la fonction de filtre ddCtrl.filter. Permet de combiner plusieurs filtres sur des dimensions différentes sans exécution à chaque filtre (optimisation).
199
200 Exemple :
201
202 (% class="box" %)
203 (((
204 <a href="javascript:__ddCtrl.beginSelection__(); ddCtrl.filter('Pays', 'France'); ddCtrl.filter('Annee', '2013'); __ddCtrl.commitSelection__()">France en 2013</a>
205 )))
206
207
208 **void ddCtrl.setDimensionNavigation (flux, dimension, bNavigation)**
209
210 Description : Change l'autorisation de naviguer sur une dimension pour le flux spécifié.
211
212 Exemple :
213
214 (% class="box" %)
215 (((
216 <a href="javascript:(% class="wikiinternallink wikiinternallink wikiinternallink wikiinternallink wikiinternallink" %)__ddCtrl.setDimensionNavigation__(%%)('chart1', 'Région', true)">Activer la navigation sur Région</a>
217 )))
218
219
220 **(Tableau de chaînes) ddCtrl.getCurrentDrill (portlet, dimension[, hiérarchie])**
221
222 Description : Retourne la dimension, la hiérarchie et le niveau exploré d'un graphique sous forme de tableau.
223
224 (% class="box infomessage" %)
225 (((
226 Note : La fonction ne peut-être appelée que sur un graphique ayant une interaction "Naviguer dans la hiérarchie" ou "Changer de dimension".
227 )))
228
229 Exemple :
230
231 {{code language="JAVASCRIPT"}}
232 ddCtrl.addChartRefreshListener( function(doc, dm, dmsel, chart) {
233  if (chart.title == 'Mon graphique') {
234  var curDrill = ddCtrl.getCurrentDrill(doc.frameId, 'Région', 'Géographique');
235  var dim = curDrill[0];
236  var hier = curDrill[1];
237  var lvl = curDrill[2];
238  alert("L'exploration est " + hier + " / " +lvl + " sur la dimension " + dim);
239  }
240  });
241 {{/code}}
242
243
244 **(BreadPath) ddCtrl.getBreadPath (portlet, dimension)**
245
246 Description : Retourne le chemin de navigation (BreadPath) courant sur une dimension dans un graphique. Cet objet peut être utilisé par drillTo (voir ci-dessous).
247
248 Exemple :
249
250 (% class="box" %)
251 (((
252 <a href="javascript:__ddCtrl.drillTo__(portletId2, 'Lieu', __ddCtrl.getBreadPath__(portletId1, 'Lieu'))">Détails Lieu Courant (Chart 2)</a>
253 )))
254
255
256 **void ddCtrl.drillTo (portlet, dimension, oBreadPath)**
257
258 Description : Navigue dans un graphique sur une hiérarchie de la dimension choisie, en utilisant un chemin de navigation définit par l'objet BreadPath.
259
260 Exemple :
261
262 (% class="box" %)
263 (((
264 Voir exemple ci-dessus (getBreadPath)
265 )))
266
267
268 **void ddCtrl.drillDown (portlet, dimension, hiérarchie, membre,membreFormaté)**
269
270 Description : Navigue sur une hiérarchie de la dimension choisie vers le membre spécifié au niveau inférieur.
271
272 (% class="box infomessage" %)
273 (((
274 Note : L'action est effectuée sur tous les graphiques partageant la même interaction de navigation ("drill synchronisé").
275 )))
276
277 Exemple :
278
279 (% class="box" %)
280 (((
281 <a href="javascript:__ddCtrl.drillTo__(portletId, 'Lieu', 'Géographique', 'FR', 'France')">Détails France</a>0
282 )))
283
284
285 **void ddCtrl.resetDrill (portlet, dimension[, hiérarchie ])**
286
287 Description : Réinitialise la navigation sur la hiérarchie de la dimension.
288
289 (% class="box infomessage" %)
290 (((
291 Note : L'action est effectuée sur tous les graphiques partageant la même interaction de navigation ("drill synchronisé").
292 )))
293
294 Exemple :
295
296 (% class="box" %)
297 (((
298 <a href="javascript:__ddCtrl.resetDrill__(portletId, 'Lieu')">Retour à la carte du monde</a>
299 )))
300
301
302 **(Nombre | Chaîne) ddCtrl.getDataModelDate (dmId, bFormat)**
303
304 Description : Retourne la date de synchronisation d'un cube de données. Les paramètres sont l'identifiant du modèle de données et un booléen pour formater la date (true) ou avoir le timestamp correspondant (false).
305
306 (% class="box infomessage" %)
307 (((
308 Note : Le timestamp est le nombre de millisecondes écoulées depuis le 1er janvier 1970.
309 )))
310
311 Exemple :
312
313 (% class="box" %)
314 (((
315 <a href="javascript:alert(__ddCtrl.getDataModelDate__('a1234567890..', true))">Afficher la date des données</a>
316 )))
317
318
319 **(Nombre | Chaîne) ddCtrl.getFlowDate (flux, bFormat)**
320
321 Description : Retourne la date de synchronisation d'un flux. Les paramètres sont l'identifiant du flux et un booléen pour formater la date (true) ou avoir le timestamp correspondant (false).
322
323 (% class="box infomessage" %)
324 (((
325 Note : Le timestamp est le nombre de millisecondes écoulées depuis le 1er janvier 1970.
326 )))
327
328 Exemple :
329
330 (% class="box" %)
331 (((
332 <a href="javascript:alert(__ddCtrl.getFlowDate__(fluxId, true))">Afficher la date du flux</a>
333 )))
334
335 = Fonctions de requêtage de données =
336
337 **(Nombre | Chaîne) ddCtrl.getResultCubeValue (flux, mesure, lMembres, bFormaté)**
338
339 Description : Retourne la valeur de la mesure pour les membres d'axe spécifiés à partir d'un chart visible. Retourne la valeur comme un nombre ou comme une chaîne formatée.
340
341 Note : La liste des membres d'axe doit préciser //__un et un seul membre pour chaque axe utilisé__// dans le graphique, et ce dans l'ordre naturel des axes du graphique. Le paramètre mesure est l'ID de la mesure.
342
343 Exemple : Pour récupérer une valeur d'un histogramme défini de la manière suivante : Mesure Marge sur l'axe empilement, dimension Année sur l'axe colonne et Pays sur l'axe groupement :
344
345 (% class="box" %)
346 (((
347 <a href="javascript:alert(__ddCtrl.getResultCubeValue__('chart1', 'Marge', ['2013', 'France'], true))">Montrer la marge pour la France en 2013</a>
348 )))
349
350 (% class="box warningmessage" %)
351 (((
352 **Important **: Il est important de s’assurer que le chart est chargé avant d’appeler cette fonction. Le plus simple est d’inclure l’appel de cette fonction dans un écouteur passé à addChartRefreshListener
353 )))
354
355
356 **(Tableau de lignes) ddCtrl.getResultCubeRowSet (flux, oRequêteMembresAxes [, bFormaté])**
357
358 Description : Retourne les lignes aplaties du cube résultat pour les membres d'axes spécifiés à partir d'un chart visible. Retourne le résultat comme un tableau de lignes, chaque ligne étant un tableau des cellules. Les cellules sont les dimensions/axes du chart puis les valeurs des mesures.
359
360 (% class="box infomessage" %)
361 (((
362 Note : La requête des membres d'axe à chercher est un objet Javascript se conformant à la forme suivante (JSON) : {"Axe/Dim titre 1" : "membre 1", "Axe/Dim titre 2" : "membre 2", etc.}..*
363 )))
364
365 Exemple : Pour récupérer les lignes correspondant à l'année 2014 et à la personne 'John' d'un cube résultat d'un chart 'chart1' :
366
367 (% class="box" %)
368 (((
369 <a href="javascript:alert(__ddCtrl.getResultCubeRowSet__('chart1', {'Année' : '2014', 'Personne': 'John'})[0][2])">Montrer la première valeur de John en 2014</a>
370 )))
371
372 (% class="box warningmessage" %)
373 (((
374 **Important**: Il est important de s’assurer que le chart est chargé avant d’appeler cette fonction. Le plus simple est d’inclure l’appel de cette fonction dans un écouteur passé à addChartRefreshListener.
375 )))
376
377
378 **(Nombre) ddCtrl.getResultCubeLinesCount (flux)**
379
380 Description : Retourne le nombre de lignes aplaties du cube résultat.
381
382 Exemple :
383
384 (% class="box" %)
385 (((
386 <a href="javascript:alert((% class="wikiinternallink wikiinternallink wikiinternallink wikiinternallink wikiinternallink wikiinternallink" %)__ddCtrl.getResultCubeLinesCount(__(%%)'chart1')" >Nombre de lignes</a>
387 )))
388
389 = Fonctions du tableau de bord =
390
391 **void ddCtrl.loadJS (urlJS)**
392
393 Description : Charge un fichier Javascript à partir d'une URL.
394
395 Exemple (dans l'éditeur de Javascript) :
396
397 {{code language="javascript"}}
398 ddCtrl.loadJS('http://crypto-js.googlecode.com/svn/tags/3.1.2/build/rollups/md5.js');
399 var hash = CryptoJS.MD5("Le message");
400 {{/code}}
401
402
403 **void ddCtrl.includeJS (nomJS)**
404
405 Description : Charge un fichier Javascript à partir du dossier de configuration de DigDash Enterprise. Le fichier doit avoir été créé au préalable avec l'éditeur Javascript de l'éditeur de tableaux de bord.
406
407 Exemple (dans l'éditeur de Javascript) :
408
409 {{code language="javascript"}}
410 ddCtrl.includeJS('fonctions_date.js');
411 {{/code}}
412
413
414 **void ddCtrl.changePage (page)**
415
416 **void ddCtrl.switchPage (page)**
417
418 Description : Change la page courante vers <page>.
419
420 Exemple :
421
422 (% class="box" %)
423 (((
424 <a href="javascript:__ddCtrl.changePage__('Général.Index')">Retour vers l'index</a>
425 )))
426
427
428 **void ddCtrl.nextPage ()**
429
430 Description : Change vers la page suivante (même rôle).
431
432 Exemple :
433
434 (% class="box" %)
435 (((
436 <a href="javascript:__ddCtrl.nextPage__()">Page suivante</a>
437 )))
438
439
440 **void ddCtrl.prevPage ()**
441
442 Description : Change vers la page précédente (même rôle).
443
444 Exemple :
445
446 (% class="box" %)
447 (((
448 <a href="javascript:__ddCtrl.prevPage__()">Page précédente</a>
449 )))
450
451
452 **(Booléen) ddCtrl.isCurrentPage (page)**
453
454 Description : Retourne vrai (true) si la page courante est la page d'identifiant spécifié en paramètre. Retourne faux (false) sinon.
455
456 (% class="box infomessage" %)
457 (((
458 Note : Cette fonction remplace la fonction dépréciée __ddCtrl.getCurrentPage__ ()
459 )))
460
461
462 **(Chaîne) ddCtrl.getCurrentPage ()**
463
464 Description : Retourne le nom de la page courante au format suivant : <//Nom du rôle>.<Nom de la page>//.
465
466 (% class="box warningmessage" %)
467 (((
468 **Dépréciée** : Cette fonction n'est plus supportée depuis Novembre 2014 à cause d'un changement de format du nom des pages. Merci d'utiliser la fonction __ddCtrl.isCurrentPage__ (page) en remplacement.
469 )))
470
471
472 **(Booléen) canChangeCurrentPage (page)**
473
474 Description : Retourne vrai (true) s'il est possible de changer vers la page <page>. Retourne faux (false) sinon.
475
476
477 **void ddCtrl.hidePage (page)**
478
479 Description : Cache l'onglet de la page <page> s'il est visible, sans changer la page courante.
480
481 Exemple :
482
483 (% class="box" %)
484 (((
485 <a href="javascript:__ddCtrl.hidePage__('Production.Détails Pays'); __ddCtrl.changePage__('Production.Global')">Quitter les détails</a>
486 )))
487
488
489 **void ddCtrl.showPage (page)**
490
491 Description : Affiche l'onglet de la page <page> s'il est caché, sans changer la page courante.
492
493 Exemple :
494
495 (% class="box" %)
496 (((
497 <a href="javascript:__ddCtrl.showPage__('Production.Détails Pays'); __ddCtrl.changePage__('Production.Détails Pays')">Afficher les détails</a>
498 )))
499
500
501 **void ddCtrl.openFlowInWindow (flux, iLargeur, iHauteur)**
502
503 Description : Ouvre un flux dans une fenêtre popup de largeur et hauteur données.
504
505 Exemple :
506
507 (% class="box" %)
508 (((
509 <a href="javascript:__ddCtrl.openFlowInWindow__(fluxId, 250, 200)">Afficher la répartition des produits</a>
510 )))
511
512
513 **void ddCtrl.openPortletInWindow (portlet, iLargeur, iHauteur)**
514
515 Description : Ouvre une portlet dans une fenêtre popup de largeur et hauteur données.
516
517 (% class="box" %)
518 (((
519 Exemple : <a href="javascript:__ddCtrl.openPorletInWindow__(portletId, 250, 200)">Afficher la répartition des produits</a>
520 )))
521
522
523 **void ddCtrl.openFlowInWindowWithFilter (flux, iLargeur, iHauteur, dimension, membre [, dimension, membre, ...])**
524
525 Description : Ouvre un flux dans une fenêtre popup de largeur et hauteur données et le filtre sur la ou les dimensions et membres spécifiés en paramètre (liste de couples dimension / membre).
526
527 (% class="box infomessage" %)
528 (((
529 Note : Les filtres ne seront appliquées que sur la nouvelle fenêtre.
530 )))
531
532 Exemple :
533
534 (% class="box" %)
535 (((
536 <a href="javascript:__ddCtrl.openFlowInWindowWithFilter__(fluxId, 250, 200, 'Année', '2014', 'Pays', 'France')">Afficher les détails France 2014</a>
537 )))
538
539
540 **void ddCtrl.openPortletInWindowWithFilter (portlet, iLargeur, iHauteur, dimension, membre [, dimension, membre, ...])**
541
542 Description : Ouvre une portlet dans une fenêtre popup de largeur et hauteur données et le filtre sur la ou les dimensions et membres spécifiés en paramètre (liste de couples dimension / membre).
543
544 (% class="box infomessage" %)
545 (((
546 Note : Les filtres ne seront appliquées que sur la nouvelle fenêtre.
547 )))
548
549 Exemple :
550
551 (% class="box" %)
552 (((
553 <a href="javascript:__ddCtrl.openPortletInWindowWithFilter__(portletId, 250, 200, 'Année', '2014', 'Pays', 'France')">Afficher les détails France 2014</a>
554 )))
555
556
557 **void ddCtrl.openFlowInElement (div, flux, iLargeur, iHauteur)**
558
559 Description : Ouvre un flux dans un élément DIV existant.
560
561 Exemple :
562
563 (% class="box" %)
564 (((
565 <a href="javascript:__ddCtrl.openFlowInElement__('myDiv', fluxId, 250, 200)">Afficher la répartition des produits</a>
566 )))
567
568
569 **void ddCtrl.openDocument (serverName, fileName)**
570
571 Description: Ouvre un document dans une nouvelle fenêtre.
572
573 Exemple:
574
575 (% class="box" %)
576 (((
577 <a href="javascript:__ddCtrl.openDocument__('Common Datasources', 'catalogue_produits.pdf')">Afficher le catalogue des produits</a>
578 )))
579
580
581 **void ddCtrl.uploadDocument (serverName, fileName)**
582
583 Description: Upload un document vers un serveur de documents. Ouvre une fenêtre de sélection du fichier sur le poste de travail.
584
585 Exemple:
586
587 (% class="box" %)
588 (((
589 <a href="javascript:(% class="wikiinternallink wikiinternallink wikiinternallink wikiinternallink wikiinternallink wikiinternallink wikiinternallink" %)__ddCtrl.uploadDocument__(%%)('Common Datasources', 'catalogue_produits.pdf')">Uploader le catalogue des produits</a>
590 )))
591
592
593 **void ddCtrl.refreshDashboard ()**
594
595 Description : Rafraîchit le tableau de bord (même comportement que le bouton Rafraîchir en entête du tableau de bord).
596
597 Exemple :
598
599 (% class="box" %)
600 (((
601 <a href="javascript:__ddCtrl.refreshDashboard__()">Rafraîchir</a>
602 )))
603
604
605 **void ddCtrl.refreshFlow (flow [, événement])**
606
607 Description : Rafraîchit le flux spécifié avec un nom d'événement optionnel.
608
609 Exemple:
610
611 (% class="box" %)
612 (((
613 <a href="javascript:__ddCtrl.refreshFlow__(flowId, null)">Rafraîchir le flux</a>
614 )))
615
616
617 **void ddCtrl.refreshFlows ([événement])**
618
619 Description : Rafraîchit tous les flux du tableau de bord avec un nom d'événement optionnel.
620
621 Exemple:
622
623 (% class="box" %)
624 (((
625 <a href="javascript:__ddCtrl.refreshFlows__('MAJ_QUOTIDIENNE')"> Tout rafraîchir</a>
626 )))
627
628
629 **(Chaîne) ddCtrl.getCurrentRole ()**
630
631 Description : Renvoie l'identifiant du rôle de la page courante ou le nom de l'utilisateur pour une page d'utilisateur.
632
633
634 **(Chaîne) ddCtrl.getRole (page)**
635
636 Description : Renvoie l'identifiant du rôle de la page spécifiée (ex: récupérée précédemment par __ddCtrl.getCurrentPage__()) ou le nom de l'utilisateur si cette page est une page d'utilisateur.
637
638
639 **void ddCtrl.hidePortlet (portlet)**
640
641 **void ddCtrl.showPortlet (portlet)**
642
643 Description : Cache ou montre la portlet du graphique spécifiée. Le paramètre portlet est un identifiant qui peut-être récupéré dans l'éditeur de tableaux de bords, via le menu Information de la portlet.
644
645 Exemple :
646
647 (% class="box" %)
648 (((
649 <a href="javascript:__ddCtrl.showPortlet__(portletId)">Afficher Les Détails</a>
650 )))
651
652
653 **void ddCtrl.setPortletPos (portlet, x, y)**
654
655 **void ddCtrl.setPortletSize (portlet, width, height)**
656
657 Description : Positionne / dimensionne la portlet aux coordonnées / dimensions spécifiées. Le paramètre portlet est un identifiant qui peut-être récupéré dans l'éditeur de tableaux de bords, via le menu Information de la portlet.
658
659 Exemple :
660
661 (% class="box" %)
662 (((
663 <a href="javascript:__ddCtrl.setPortletPos__(portletId, 100, 100); __ddCtrl.setPortletSize__(portletId, 600, 400)">Agrandir Les Détails</a>
664 )))
665
666
667 **void ddCtrl.setPortletMargins (portlet, marginTop, marginRight, marginBottom, marginLeft)**
668
669 Description : Spécifie les marges à ajouter à la portlet. Le paramètre portlet est un identifiant qui peut-être récupéré dans l'éditeur de tableaux de bords, via le menu Information de la portlet.
670
671 Exemple :
672
673 (% class="box" %)
674 (((
675 <a href="javascript:__ddCtrl.setPortletPos__(portletId, 10, 10, 10, 10); __ddCtrl.setPortletMargins__(portletId, 600, 400)">Change les marges</a>
676 )))
677
678
679 **(Booléen) ddCtrl.chartIsHidden (portlet)**
680
681 Description : Retourne vrai (true) lorsque la portlet est cachée (voir hideChart) et faux (false) sinon.
682
683
684 **void ddCtrl.genTemplatePPT (flux)**
685
686 Description : Exécute un flux de type Fabrique De Document PowerPoint(sauvegarde le PPT) d'identifiant flowId avec la sélection courante du tableau de bord. Le téléchargement du PPT généré est proposé à l'utilisateur.
687
688 Exemple :
689
690 (% class="box" %)
691 (((
692 <a href="javascript:__ddCtrl.genTemplatePPT__('Id Fabrique De Document')">Charger le PPT</a>
693 )))
694
695
696 **void ddCtrl.exportCurrentPageAsPPT ()**
697
698 Description : Sauvegarde la page courante du tableau de bord au format PPT. Le téléchargement du PPT généré est proposé à l'utilisateur.
699
700 Exemple :
701
702 (% class="box" %)
703 (((
704 <a href="javascript:__ddCtrl.exportCurrentPageAsPPT__()">Charger cette page au format PPT</a>
705 )))
706
707
708 **void ddCtrl.exportPageAsPPT (role, page)**
709
710 Description : Sauvegarde la page correspondant au rôle et à l’identifiant de la page spécifiés en paramètres. Le téléchargement du PPT généré est proposé à l'utilisateur. L’identifiant de la page peut être récupéré dans l’éditeur de tableau de bord (clic-droit sur un onglet de page).
711
712 Exemple :
713
714 (% class="box" %)
715 (((
716 <a href="javascript:(% class="wikiinternallink wikiinternallink wikiinternallink wikiinternallink wikiinternallink wikiinternallink wikiinternallink wikiinternallink wikiinternallink wikiinternallink wikiinternallink wikiinternallink wikiinternallink wikiinternallink wikiinternallink wikiinternallink wikiinternallink wikiinternallink wikiinternallink wikiinternallink" %)__ddCtrl.exportPageAsPPT__(%%)('Telecom', 'telecom_ventes_1')">Charger le PPT des ventes telecom</a>
717 )))
718
719
720 **void ddCtrl.genTemplatePDF(flux)**
721
722 Description : Exécute un flux de type Fabrique De Document PDF(sauvegarde le PDF) d'identifiant flowId avec la sélection courante du tableau de bord. Le téléchargement du PDF généré est proposé à l'utilisateur.
723
724 Exemple :
725
726 (% class="box" %)
727 (((
728 <a href="javascript:__ddCtrl.genTemplatePDF__('Id Fabrique De Document')">Charger le PDF</a>
729 )))
730
731
732 **void ddCtrl.exportCurrentPageAsPDF ()**
733
734 Description : Sauvegarde la page courante du tableau de bord au format PDF. Le téléchargement du PDF généré est proposé à l'utilisateur.
735
736 Exemple :
737
738 (% class="box" %)
739 (((
740 <a href="javascript:__ddCtrl.exportCurrentPageAsPDF__()">Charger cette page au format PDF</a>
741 )))
742
743
744 **void ddCtrl.exportPageAsPDF (role, page)**
745
746 Description : Sauvegarde la page correspondant au rôle et à l’identifiant de la page spécifiés en paramètres. Le téléchargement du PDF généré est proposé à l'utilisateur. L’identifiant de la page peut être récupéré dans l’éditeur de tableau de bord (clic-droit sur un onglet de page).
747
748 Exemple :
749
750 (% class="box" %)
751 (((
752 <a href="javascript:(% class="wikiinternallink wikiinternallink wikiinternallink wikiinternallink wikiinternallink wikiinternallink wikiinternallink wikiinternallink wikiinternallink wikiinternallink wikiinternallink wikiinternallink wikiinternallink wikiinternallink wikiinternallink wikiinternallink wikiinternallink wikiinternallink wikiinternallink wikiinternallink" %)__ddCtrl.exportPageAsP__(%%)__DF__('Telecom', 'telecom_ventes_1')">Charger le PDF des ventes telecom</a>
753 )))
754
755
756 **void ddCtrl.genTemplateXLS (flux)**
757
758 Description : Exécute un flux de type Fabrique De Document Excel (sauvegarde le XLS) d'identifiant flowId avec la sélection courante du tableau de bord. Le téléchargement du XLS généré est proposé à l'utilisateur.
759
760 Exemple :
761
762 (% class="box" %)
763 (((
764 <a href="javascript:__ddCtrl.genTemplateXLS__('Id Fabrique De Document')">Charger le XLS</a>
765 )))
766
767
768 **void ddCtrl.exportAsPDF (flux)**
769
770 Description : Sauvegarde le flux en PDF. Le téléchargement du PDF généré est proposé à l'utilisateur.
771
772
773 **void ddCtrl.exportAsPPT (flux)**
774
775 Description : Sauvegarde le flux en PPT. Le téléchargement du PPT généré est proposé à l'utilisateur.
776
777
778 **void ddCtrl.exportAsXLS (flux)**
779
780 Description : Sauvegarde le flux en XLS. Le téléchargement du XLS généré est proposé à l'utilisateur.
781
782
783 **void ddCtrl.exportAsXLSWithoutStyles (flux)**
784
785 Description : Sauvegarde le flux en XLS sans appliquer les styles des tableaux pour plus de performances. Le téléchargement du XLS généré est proposé à l'utilisateur.
786
787
788 **void ddCtrl.exportAsCSV (flux)**
789
790 Description : Sauvegarde le flux en CSV (Champs Séparés par des Virgules). Le téléchargement du CSV généré est proposé à l'utilisateur.
791
792
793 **void ddCtrl.saveDashboardState (nom, bDéfaut)**
794
795 Description : Sauvegarde l'état courant du tableau de bord (page, filtres, drill, variables). Identique à l'action produite par le bouton de sauvegarde de la sélection dans la barre d'outil du tableau de bord. Le paramètre nom est le nom de la sélection, le paramètre bDéfaut active le chargement de la sélection au démarrage du tableau de bord.
796
797
798 **(Chaîne) ddCtrl.getCurrentPortletInGroupOfTabs (portletTabId)**
799
800 Description : Renvoie l’identifiant de la portlet courante de l’objet Groupe d’onglets. Le paramètre porletTabId est l’identifiant du Groupe d’onglets.
801
802
803 **void ddCtrl.changePortletInGroupOfTabs (portletTabId, portletId)**
804
805 Description : Change la portlet courante de l’objet Groupe d’onglets. Le paramètre porletTabId est l’identifiant du Groupe d’onglets, le paramètre portletId est l’identifiant de la portlet à sélectionnner.
806
807
808 **(Tableau) ddCtrl.getCurrentPagePath ()**
809
810 Description : Renvoie le chemin de la page courante (Rôle / Page / Sous-Page) sous forme de tableau d’objets. Chaque objet possède les attributs suivants : id, title, name, type (role/container/page).
811
812 == Gestion d’événements ==
813
814 Ces fonctions d'écouteurs sont appelées par le système quand des événements spécifiques sont déclenchés. Vous pouvez donc créer de nouveaux comportements en fonction de situations: un graphique est rafraîchi ou dessiné, une page est changée, une dimension est filtrée, etc. Le meilleur endroit pour implémenter ces comportements est dans l'éditeur de Javascript global accessible dans le menu des options de l'éditeur de tableaux de bords.
815
816 == (% id="cke_bm_227S" style="display:none" %) (%%)Diagramme des événements du Tableau de bord ==
817
818 [[image:api_event_diagram.gif||queryString="width=641&height=802"]]
819
820 **void ddCtrl.addChartBeforeRefreshListener (Fonction)**
821
822 Description : Ajoute une fonction d'écoute de l'événement déclenché avant le rafraîchissement du graphique.
823
824 Exemple :
825
826 (% class="box" %)
827 (((
828 ddCtrl.addChartBeforeRefreshListener(function(doc, dm, dmsel, chart, errorMsg) { alert("Le graphique " + chart.title + " va être rafraîchi"); });
829 )))
830
831
832 **void ddCtrl.addChartRefreshListener (Fonction)**
833
834 Description : Ajoute une fonction d'écoute de l'événement déclenché après le rafraîchissement du graphique.
835
836 Exemple :
837
838 (% class="box" %)
839 (((
840 ddCtrl.addChartRefreshListener(function(doc, dm, dmsel, chart, errorMsg) { alert("Le graphique " + chart.title + " a été rafraîchi"); });
841 )))
842
843
844 **void ddCtrl.addChartDrawnListener (Fonction)**
845
846 Description : Ajoute une fonction d'écoute de l'événement déclenché lorsque le graphique a fini d'être dessiné (premier affichage).
847
848 Exemple :
849
850 (% class="box" %)
851 (((
852 ddCtrl.addChartDrawnListener(function(doc, dm, dmsel, chart, errorMsg) { alert("Le graphique " + chart.title + " a été dessiné"); });
853 )))
854
855
856 **void ddCtrl.addChartModelReadyListener (Fonction)**
857
858 Description : Ajoute une fonction d'écoute de l'événement déclenché avant le dessin du graphique (premier affichage).
859
860 Exemple :
861
862 (% class="box" %)
863 (((
864 ddCtrl.addChartModelReadyListener(function(doc, dm, dmsel, chart, errorMsg) { alert("Le graphique " + chart.title + " va être dessiné"); });
865 )))
866
867
868 **void ddCtrl.addDimensionFilterListener (Fonction)**
869
870 Description : Ajoute une fonction d'écoute de l'événement déclenché après filtrage d'une dimension.
871
872 Exemple :
873
874 (% class="box" %)
875 (((
876 ddCtrl.addDimensionFilterListener(function(dimension, hierarchy, niveau, members, membersFormated, bExclude, min, max) { alert("La dimension " + dimension + " a été filtrée sur " + membersFormated); });
877 )))
878
879
880 **void ddCtrl.addVariableChangeListener (Fonction)**
881
882 Description : Ajoute une fonction d'écoute de l'événement déclenché après changement d'une variable.
883
884 Exemple :
885
886 (% class="box" %)
887 (((
888 ddCtrl.addVariableChangeListener(function(variable, valeur) { alert("La variable " + variable + " a changé, nouvelle valeur : " + valeur); });
889 )))
890
891 == Gestion d’événements du Tableau De Bord ==
892
893 **void ddCtrl.addCurrentPageLoadListener (Fonction)**
894
895 Description : Ajoute une fonction d'écoute de l'événement déclenché une fois la page de tableau de bord complètement chargée.
896
897 Exemple :
898
899 (% class="box" %)
900 (((
901 ddCtrl.addCurrentPageLoadListener(function(currentPage) { alert("La page " + currentPage + " a été chargée"); });
902 )))
903
904
905 **void ddCtrl.addCurrentPageChangeListener (Fonction)**
906
907 Description : Ajoute une fonction d'écoute de l'événement déclenché lors d'un changement de page.
908
909 Exemple :
910
911 (% class="box" %)
912 (((
913 ddCtrl.addCurrentPageChangeListener(function(currentPage, bFirstTime) { alert("La page est maintenant " + currentPage); });
914 )))
915
916
917 **void ddCtrl.addUserLoggedListener (Fonction)**
918
919 Description : événement déclenché une fois l'utilisateur authentifié. Peut être utile lors de l'utilisation de la fonction ddCtrl.getUserAttribute.
920
921 Exemple :
922
923 (% class="box" %)
924 (((
925 ddCtrl.addUserLoggedListener(function() { alert("Vous êtes authentifié"); });
926 )))
927
928
929 **void ddCtrl.addPortletHiddenListener (Fonction)**
930
931 Description : événement déclenché lorsque le statut de l’objet est passé de visible à caché.
932
933 Exemple :
934
935 (% class="box" %)
936 (((
937 ddCtrl.addPortletHiddenListener(function(portletId) { alert("L’objet est caché"); });
938 )))
939
940
941 **void ddCtrl.addPortletVisibleListener (Fonction)**
942
943 Description : événement déclenché lorsque le statut de l’objet est passé de caché à visible.
944
945 Exemple :
946
947 (% class="box" %)
948 (((
949 ddCtrl.addPortletVisibleListener(function(portletId) { alert("L’objet est visible"); });
950 )))
951
952
953 **void ddCtrl.addPortletCollapseListener (Fonction)**
954
955 Description : événement déclenché lorsque l’utilisateur clique sur l’icône permettant de masquer un élément rétractable.
956
957 Exemple :
958
959 (% class="box" %)
960 (((
961 ddCtrl.addPortletCollapseListener(function(portletId) { alert("L’objet va être cacher"); });
962 )))
963
964
965 **void ddCtrl.addPortletCollapsedListener (Fonction)**
966
967 Description : événement déclenché une fois l’élément rétractable caché.
968
969 Exemple :
970
971 (% class="box" %)
972 (((
973 ddCtrl.addPortletCollapsedListener(function(portletId) { alert("L’objet est caché"); });
974 )))
975
976
977 **void ddCtrl.addPortletExpandListener (Fonction)**
978
979 Description : événement déclenché lorsque l’utilisateur clique sur l’icône permettant d’afficher un élément rétractable.
980
981 Exemple :
982
983 (% class="box" %)
984 (((
985 ddCtrl.addPortletExpandListener(function(portletId) { alert("L’objet va être afficher"); });
986 )))
987
988
989 **void ddCtrl.addPortletExpandedListener (Fonction)**
990
991 Description : événement déclenché une fois l’élément rétractable affiché.
992
993 Exemple :
994
995 (% class="box" %)
996 (((
997 ddCtrl.addPortletExpandedListener(function(portletId) { alert("L’objet est affiché"); });
998 )))
999
1000
1001 **void ddCtrl.addGroupOfTabsChangeListener (Fonction)**
1002
1003 Description : événement déclenché lorsque l’utilisateur change de graphique dans un groupe d’onglets. Le premier paramètre est l’identifant de l’objet groupe d’onglets, le deuxième est l’identifiant de la portlet courante.
1004
1005 Exemple :
1006
1007 (% class="box" %)
1008 (((
1009 ddCtrl.addGroupOfTabsChangeListener(function(portletTabId, curPortletId) { alert("La portlet courante est : " + curPortletId); });
1010 )))
1011
1012
1013 **void ddCtrl.addDocumentUploadListener (Fonction)**
1014
1015 Description : événement déclenché lorsque l’utilisateur ajoute un fichier via le tableau de bord.
1016
1017 Exemple :
1018
1019 (% class="box" %)
1020 (((
1021 ddCtrl.addDocumentUploadListener(function(serverName, filesName) { alert("Le fichier " + filesName[0] + " a bien été ajouté"); });
1022 )))
1023
1024 = Fonctions diverses =
1025
1026 **(Tableau de chaînes) ddCtrl.getUserRoles ()**
1027
1028 Description : Retourne la liste des identifiants des rôles de l'utilisateur connecté.
1029
1030
1031 **(Tableau associatif de chaînes / booléens) ddCtrl.getUserACLs ()**
1032
1033 Description : Retourne la liste des identifiants des droits (ACL) de l'utilisateur connecté. La liste retournée est un tableau associant l'Id de l'acl avec un booléen (true) sir l'ACL est alloué à l'utilisateur.
1034
1035 Exemple :
1036
1037 (% class="box" %)
1038 (((
1039 if (ddCtrl.getUserACLs()['SaveAsPPT']) alert('Vous pouvez sauvegarder en PPT');
1040 )))
1041
1042 Liste de tous les droits possibles :
1043
1044 AccessContentManagement, AccessDBE, AccessDBV, AccessLicenseSettings, AccessServerSettings, AccessUserSettings, AddFlow, AddRoleFlow, ChartNavigation, EditDashboardForGroup, EditDataSourceForGroup, EditDataSource, LoadWalletForGroup, RefreshFlow, RefreshRoleFlow, RefreshDatasource, SaveWalletForGroup, SaveAsPDF, SaveAsPPT, SaveAsXLS, SaveAsCSV, Scheduler, SendSMS, UploadDocument, UpdateDocument, ViewComments, AddCommentDataModel, RemoveCommentDataModel, AddCommentFlow, RemoveCommentFlow, AllowIgnoreDMResivion, DashboardCustomization, EditProtectedDashboardPages
1045
1046
1047 **(Chaîne) ddCtrl.getUserAttribute (attr)**
1048
1049 Description : Retourne l'attribut LDAP <attr> de l'utilisateur.
1050
1051
1052 **(Chaîne) ddCtrl.getUserAttribute (attr, Fonction)**
1053
1054 Description : Retourne l'attribut LDAP <attr> de l'utilisateur via une fonction asynchrone d'appel.
1055
1056 Exemple :
1057
1058 (% class="box" %)
1059 (((
1060 ddCtrl.getUserAttribute('displayName', function (attrVal) {alert(attrVal)});
1061 )))
1062
1063
1064 **(Chaîne) ddCtrl.getSessionAttribute (attr)**
1065
1066 Description : Retourne l'attribut <attr> de la session utilisateur.
1067
1068 Voir le [[Tutoriel Variables de session>>doc:Digdash.user_guide.tutorials.session_variables_tutorial.WebHome]] pour plus d’information sur les variables de session.
1069
1070
1071 **(Chaîne) ddCtrl.getSessionAttribute (attr, Fonction)**
1072
1073 Description : Retourne l'attribut <attr> de la session utilisateur via une fonction asynchrone d'appel.
1074
1075 Exemple :
1076
1077 (% class="box" %)
1078 (((
1079 ddCtrl.getSessionAttribute('regionChoisie', function (attrVal) {alert(attrVal)});
1080 )))
1081
1082 Voir le [[Tutoriel Variables de session>>doc:Digdash.user_guide.tutorials.session_variables_tutorial.WebHome]] pour plus d’information sur les variables de session.
1083
1084
1085 **void ddCtrl.setSessionAttribute (attr, valeur)**
1086
1087 Description : Met à jour l’attribut <attr> de la session utilisateur avec la valeur spécifiée.
1088
1089 Exemple :
1090
1091 (% class="box" %)
1092 (((
1093 ddCtrl.setSessionAttribute('regionChoisie', ‘France’);
1094 )))
1095
1096 Voir le [[Tutoriel Variables de session>>doc:Digdash.user_guide.tutorials.session_variables_tutorial.WebHome]] pour plus d’information sur les variables de session.
1097
1098
1099 **(Chaîne) ddCtrl.getServerAttribute (attr)**
1100
1101 Description : Retourne l'attribut <attr> du serveur. Les attributs (ou variables) de serveur permettent de spécifier des constantes utilisées dans les modèles de données et les flux via le mot-clé ${server.<attr>}.
1102
1103 Voir le document de [[Réglages avancés des paramètres système>>doc:Digdash.deployment.configuration.advanced_system_guide.WebHome]] pour plus d’information sur les variables de serveur.
1104
1105
1106 **(Chaîne) ddCtrl.getServerAttribute (attr, Fonction)**
1107
1108 Description : Retourne l'attribut <attr> du serveur via une fonction asynchrone d'appel.
1109
1110 Exemple :
1111
1112 (% class="box" %)
1113 (((
1114 ddCtrl.getSessionAttribute('serverMode', function (attrVal) {alert(attrVal)});
1115 )))
1116
1117 Voir le document de [[Réglages avancés des paramètres système>>doc:Digdash.deployment.configuration.advanced_system_guide.WebHome]] pour plus d’information sur les variables de serveur.
1118
1119
1120 **void loadCSS (cssFile)**
1121
1122 Description : Charge un fichier CSS.
1123
1124
1125 **void ddCtrl.loadTheme (cssTheme)**
1126
1127 Description : Charge un thème CSS DigDash sur le tableau de bord.
1128
1129 Exemple :
1130
1131 (% class="box" %)
1132 (((
1133 ddCtrl.loadTheme(‘digdash’);
1134 )))
1135
1136
1137 **void logout ()**
1138
1139 Description : Déconnecte l'utilisateur courant.