Construire pages et tuiles
Une App est une pile de pages, et chaque page est une grille de tuiles — le même modèle de tuiles que les dashboards. Si vous avez déjà construit un dashboard Saiku, cela paraîtra identique ; la seule couche nouvelle, ce sont les pages de l’App et la navigation autour.
Pages
Toute App démarre avec une page. En mode édition :
- Ajoutez une page depuis le menu de navigation (rail ou haut) — le
+à côté de la liste des pages. - Renommez une page sur place ; le nom est ce qui s’affiche dans la navigation.
- Changez de page en cliquant dessus dans la navigation. Chaque page se souvient de son propre état de filtres quand vous passez de l’une à l’autre.
Ordonnez vos pages selon l’histoire que vous voulez raconter — une page de synthèse d’abord, les pages de détail ensuite.
Ajouter des tuiles
Sur une page en mode édition, cliquez sur + Ajouter une tuile pour ouvrir le menu des tuiles. Les types intégrés sont :
| Tuile | Ce qu’elle montre |
|---|---|
| Graphique | Seize types de graphiques — barres / courbe / aire / camembert / donut / cascade / treemap / sunburst / heatmap / radar / nuage de points / bulles / carte. Voir La tuile Graphique |
| Tableau | Des enregistrements de cellules de mesure avec en-têtes de lignes |
| KPI | Une mesure unique en grand chiffre, avec comparaison et sparkline optionnelles |
| Texte / note | Une annotation en Markdown — aucune donnée |
| Image | Un logo, un schéma ou une capture depuis une URL ou un téléversement |
Choisissez un type et la tuile tombe sur la grille. Placement et dimensionnement fonctionnent comme dans un dashboard — glisser pour déplacer, glisser la poignée pour redimensionner.
Les filtres ne sont pas dans ce menu — ils s’ajoutent dans le panneau Filtres de la page, au-dessus de la grille.
Lier une tuile aux données
Ajouter une tuile choisit son type ; l’éditeur de tuile ⚙ est l’endroit où vous lui donnez des données. Ouvrez-le depuis le bouton d’édition de la tuile. Selon le type de tuile, vous configurez :
- Le cube et la requête — pour les tuiles graphique, tableau et KPI, choisissez la connexion / le cube et construisez la requête (mesures, dimensions en lignes ou colonnes, slicers). Voir D’où vient la requête d’une tuile plus bas.
- Le type de graphique, et derrière le bouton Options du graphique un second éditeur avec axes doubles, types de séries combo, lignes de tendance, tri / Top N, formatage des nombres, lignes et bandes de référence. Une tuile graphique peut aussi détecter des anomalies, projeter une prévision et émettre un filtre croisé quand vous la lassoez. Tout cela a sa propre page : La tuile Graphique.
- La mesure et la comparaison — pour un KPI, quelle mesure est le
grand chiffre et (en option) à quoi elle se compare. Utilisez le motif
de format
$cNpour la monnaie compacte ($48.2K). Voir Comparaisons de KPI plus bas. - Le contenu — le corps Markdown d’une tuile texte, ou l’URL / le téléversement d’une tuile image (ces deux-là n’ont besoin d’aucune requête).
- Le formatage conditionnel — les tuiles tableau acceptent des règles par colonne : couleur de fond, barres de données, couleur de police ou une icône (↑ ↓ →), rattachées à des seuils relatifs (percentile) ou absolus. Un tableau peut aussi ajouter une colonne sparkline en fin de ligne, dessinant un mini-graphique par ligne à partir des valeurs de mesure de cette ligne — pertinent quand ces colonnes forment une série (des mois, par exemple), moins entre mesures sans rapport.
- Format des nombres (par colonne) — les tuiles tableau prennent un
motif d’affichage par colonne, apparié sur la caption d’en-tête, avec
le même vocabulaire que les tuiles KPI et liste classée :
$cNmonnaie compacte,$Nmonnaie simple,N%pourcentage,Nnu pour les décimales. Cela vaut le coup sur toute mesure entière dont la chaîne de format du cube porte une décimale — sinon un décompte d’unités s’affiche10759.0. Les colonnes que vous omettez gardent le formatage du cube. - Rafraîchissement automatique — toute tuile liée à une requête peut se relancer toutes les 1, 5, 15, 30 ou 60 minutes, en respectant les filtres actifs et en se mettant en pause tant que l’onglet du navigateur est masqué.
Pour les tuiles personnalisées ECharts option, l’éditeur ajoute des options d’affichage : une bascule en direct Trend / Breakdown (passer la série d’une courbe à des barres sur les mêmes données), mettre en avant le dernier point (un marqueur d’accent « période courante ») et un format de l’axe de valeurs. Voir Tuiles personnalisées.
Les tuiles texte et image sont les deux qui ne portent aucune requête ; tout le reste se lie à un cube.
D’où vient la requête d’une tuile
Il y a deux façons de donner sa requête à une tuile, et elles se trouvent à des endroits différents de l’éditeur ⚙.
Construisez-la ici. Cliquez sur Éditer la requête visuellement et le constructeur de requêtes Saiku complet s’ouvre à l’intérieur de l’éditeur de tuile : l’arbre du cube à gauche, les zones de dépôt Mesures / Colonnes / Lignes / Filtre, et une grille de résultats en direct dessous. Elle s’exécute au fur et à mesure, vous voyez donc les vrais chiffres avant d’engager la tuile. Appliquer valide la requête ; enregistrer la tuile la persiste. C’est le chemin habituel — choisissez d’abord un cube, sinon le bouton reste désactivé.
Ou pointez vers quelque chose d’existant, sous Source de la requête :
- Requête enregistrée — choisissez un fichier
.saikuexistant et la tuile s’affiche en direct depuis lui. Le serveur charge la requête enregistrée, fusionne les filtres de dashboard applicables et la relance à chaque rafraîchissement — une même requête enregistrée peut donc alimenter des tuiles dans plusieurs Apps, et toutes suivent quand vous la modifiez. - JSON en ligne — voir ci-dessous.
Le JSON en ligne prend directement un corps AiQueryRequest.
Prenez-le quand vous voulez une forme de requête que le constructeur
n’offre pas — une hiérarchie précise quand deux partagent un nom de
niveau, par exemple — ou quand vous copiez une requête d’une tuile à
l’autre.
Une hiérarchie ne peut pas être sur un axe et dans les filtres
Mettez Time / Time / Month en Lignes puis essayez de filtrer sur
Time / Time / Year, et la requête est rejetée :
Hierarchy ‘Time’ is already on the rows/columns axis. Mondrian rejects the same hierarchy on two independent axes. Either move the filter members onto the axis selection’s
members[], or filter on a different hierarchy/dimension.
C’est une règle du moteur OLAP sous-jacent, pas une limite de Saiku.
Pour restreindre un axe à une partie d’une hiérarchie, nommez les
membres sur l’axe lui-même plutôt que de filtrer à part — en JSON en
ligne, c’est le tableau members[] de la ligne :
"rows": [{ "dimension": "Time", "hierarchy": "Time", "level": "Month", "members": ["[Time].[Time].[1998].[Q1].[January]", "…"]}]La même technique est l’échappatoire quand les membres d’un niveau reviennent dans un ordre qui ne vous convient pas : les lister explicitement fige la séquence, puisque le Tri des catégories de la tuile graphique ordonne par valeur de mesure, pas par catégorie. L’App de référence FoodMart Ops utilise exactement cela pour épingler son graphique de tendance à huit semaines nommées.
Comparaisons de KPI
Le libellé de delta d’un KPI — le « +6.7% vs last month » sous le chiffre — est dérivé du niveau de temps propre à la tuile, donc il décrit toujours la comparaison que la tuile a réellement faite. Interrogez au grain du mois et il dit « vs last month » ; au grain de la semaine, « vs last week ».
Réglez d’abord le niveau de temps
Ce niveau de temps est quelque chose que vous choisissez, pas que la tuile devine — et tant que vous ne l’avez pas réglé, une comparaison n’a rien à quoi se comparer.
Vers le bas de l’éditeur de KPI, sous Niveau de temps (pour comparaison + sparkline), choisissez une Dimension, une Hiérarchie et un Niveau (p. ex. Time / Time / Month). Alors :
- la comparaison dispose d’une période antérieure à laquelle se mesurer, et
- la case Sparkline devient disponible — elle trace la mesure sur ce niveau.
Vous pouvez surcharger la formulation avec Libellé de delta quand un cube a son propre vocabulaire (« vs last trading day »), mais la valeur par défaut ne peut plus contredire les données.
Périodes de fin incomplètes
Le seau le plus récent d’une série temporelle est souvent encore en train de se remplir — la semaine ou le mois en cours — ou constitue une frontière de données où la dernière période ne contient que deux ou trois jours. Mesuré face à une période antérieure entière, cela produit un chiffre qui décrit le calendrier plutôt que l’activité : un −84 % qui signifie que rien n’a changé sauf la date.
Réglez Périodes de fin incomplètes pour indiquer à la tuile combien des périodes les plus récentes sont encore partielles. Ces périodes :
- gardent leurs vraies valeurs — rien n’est caché, et la sparkline trace toujours chaque point
- sont étiquetées « Week 52 · partial » sous le chiffre
- n’affichent aucun pourcentage en face, parce qu’il n’y en a pas d’honnête à montrer
Enregistrement
Enregistrez l’App depuis l’éditeur. Elle est persistée en document
.saikuapp dans le dépôt, dans le dossier choisi à la création.
Rouvrez-la à tout moment depuis la liste des
Apps, ou intégrez-la sur un autre site —
voir Intégrer une App.
Liens connexes
- Vue d’ensemble d’App Builder — ce qu’est une App et en quoi elle diffère d’un dashboard.
- Tuiles personnalisées — les rendus déclaratifs ECharts et graphe au-delà des cinq intégrés.
- Analyze — construire et enregistrer les requêtes que vos tuiles réutilisent.