This shows you the differences between two versions of the page.
Both sides previous revision Previous revision Next revision | Previous revision | ||
blocks:dashboard:userguide [2016/12/20 15:30] 127.0.0.1 external edit |
blocks:dashboard:userguide [2023/01/31 16:46] (current) |
||
---|---|---|---|
Line 1: | Line 1: | ||
===== Configuration ===== | ===== Configuration ===== | ||
- | ===== Bloc Dashboard (Elément de tableau de bord) ===== | + | ===== Dashboard Block ===== |
- | La configuration du tableau de bord est la partie la plus importante de l'usage du bloc Dashboard. Elle demande : | + | the configuration of the query and the multiple output options is the most important activity related to tis block setup. It requires: |
- | * Une connaissance suffisante de la base de donnée de Moodle | + | * A good knowledge of the Moodle database structure |
- | * Une bonne connaissance du requêtage SQL et de ses limites | + | * A good knowledge of SQL and limitations |
- | * Une compréhension suffisante de la signification des données physiques et de leur interprétation. | + | * A sufficiant knowledge of what the individual data fields represent and in what context and perimeter they can be used. |
- | Une fois ces prérequis réunis, vous pouvez commencer à mettre en place vos tableaux de bord. | + | If you have those prerequisites, you are ready to do a lot of things with the Dashboard block. |
- | Rappelez-vous que ce bloc permet une extraction potentiellement de TOUTES forme de données de Moodle. On devra donc veiller à ce que l'accès à sa configuration soit **rigoureusement contrôlée**. | + | Remind here that the Dashboard bloc **can access to any data stored into Moodle** and thus it's configuration may not be allowed in an uncontrolled way. |
- | La configuration d'un tableau de bord va se dérouler en 6 grandes étapes : | + | there are 6 main steps in setting up a dashboard query: |
- | - Penser la requête et les données que l'on veut extraire | + | - Carefully identify in which tables and which fields are the data that represents the query |
- | - Identifier les modalités de tri, ou de filtrage (dimensions) | + | - Identify the dimensions of sorting and filtering |
- | - Ecrire et tester la requête de base | + | - Write and test the base query form in a DB client |
- | - Mettre en place la requête dans le tableau de bord | + | - Copy the query in the dashboard |
- | - configurer les sorties de données | + | - configure the output (data tables or graphs) |
- | - Configurer les accessoires (sommateurs, filtres, sous-totaux, colorisation) | + | - Setup accessories, (filters, parameters, colorizers, sub-totals, summators, etc). |
+ | ==== Think about the problem (identify the query) ==== | ||
- | ==== Penser la requête ==== | + | A Dashboard will NOT be able to answer to any demand. Usually, the addressed question must have an answer that can be synthesized within a single unique Query, giving a single aggregated composite output. As the block post-processes the given SQL to feed the query accessories (such as filters, or params), some complex query forms may be not supported. |
- | Toutes les extractions de données ne sont pas possibles avec un bloc Tableau de Bord. Le bloc préformatte la requête SQL pour outiller les différents accessoires de rendu de données. Certaines formes de requêtes complexes ne sont pas compatibles avec ce post-formatage. | + | In general, any results that comes out from simple JOINS (INNER, OUTER or LEFT) among a set of tables will work fine. Some queries using subqueries may work, Union or intersects may work on simple output, but some accessories may crash the query if activated. |
+ | ==== Identify dimensions for sorting or filtering ==== | ||
- | En général, un bloc Tableau de Bord peut rendre compte de toute jointure simple, interne, gauche ou externe faite sur plusieurs tables. Dans certains cas, des requêtes avec sous-requêtes peuvent être prises en charge. | + | the Dashboard block is designed for administrators being able to setup a query and additional dynamic tools addressed to the dashboard end users. Filters will provide multiple derivated partial views of the same output data. Parameters also will allow to change the initial perimeter of the extracted data, such as date ranges, ou value ranges, providing a lot of possible distinct reports with only one generic query. |
- | ==== Identifier les modalités de tri et de filtrage ==== | + | Usually a data query will output a set of columns (data fields), which can be classed into the following categories : |
- | Le bloc Tableau de Bord est conçu de telle manière à ce que, une fois mise en place par un utilisateur autorisé, il puisse servir d'outil dynamique d'exploration de données pour l'usager final. Il est donc important de bien penser aux filtres et autres outils dynamiques que l'on va mettre en place sur la requête. | + | * The identifier(s) |
+ | * The useful data (the really observed values) | ||
+ | * The contextual dimensions (that split the data space into local contexts) | ||
+ | * the technical data (that helps to calculate, format, or build other final results) | ||
- | ==== Ecrire et tester la requête de base ==== | + | Filters usually will be defined upon the contextual dimensions, while parameters may usually affect usefull or technical values. |
+ | ==== Write and test a base query ==== | ||
- | Vous utiliserez pour cela un client standard de votre base de données. Ce test permet de vérifier que la requête de départ fonctionne correctement et qu'elle produit bien des données cohérentes. | + | The best practice is to use your standard DB client software to write and debug the base query. Once you know the base query form outputs the data you expect in the arrangement you expect, it will be easier to copy the base query in the Dashboard block. Note that in general, your DB client software has more query coding useful tools such as syntax debugger or optimization helpers. |
- | === Les pièges à éviter === | + | === Several traps to avoid === |
- | * Faire particulièrement attention à la première colonne extraite dans la requête. Il doit s'agit d'une donnée unique valant pour clef. Si tel n'est pas le cas, le résultat apparent semblera avoir perdu des données. | + | * Check carefully the first output field of your query. it MUST be a primary key for your result. This is a special attention to observe when f.e. using GROUP BY clauses or using time range extractions. Think that the query will give result through the standard DB middleware library of moodle, that uses the first column as the results associative table as php output, so it needs being a unique key of your result, or you will loose data. |
- | * Utiliser des requêtes composées (UNION, INTERSECT) dans lesquelles le placement de certains compléments automatiques de SQL ne peut pas se faire. | + | * Use some UNION or INTERSECT in which the Dashboard SQL post processing will NOT be able to find the clauses it needs rework. |
- | * Utiliser des requêtes imbriquées complexes mettant en jeu de nombreuses séquences ORDER BY ou GROUP BY. | + | * Use complex subqueries that multiplies the ORDER BY or GROUP BY clauses. |
- | ==== Mettre en place la requête ==== | + | ==== Enter the query in the Dashboard configuration ==== |
- | La mise en place de la requête dans le tableau de bord est la première chose à faire réellement dans le tableau de bord. | + | copy the query in the query text area of the dashboard is the effective first thing to do. |
- | - Passez le cours en mode édition | + | - Switch to the course editing mode |
- | - Editez les paramètres du bloc Tableau de Bord à configurer | + | - Edit the block's settings |
- | - Dépliez la rubrique //Paramètres du tableau de bord// | + | - Expand the //Dashboard settings// form section |
- | - Cliquez sur //Accédez à la définition du tableau de bord// | + | - Click on the //Access to dashboard settings// |
- | Le premier onglet est là où vous allez poser la requête. | + | The first panel shows the textarea where to put the query. |
- | ==== Détail des écrans de configuration ==== | + | ==== Dashboard configuration screen details ==== |
- | * [[:BlockDashboardConfigQuery|Configuration de la requête]] | + | * [[:BlockDashboardConfigQuery|Query]] |
- | * [[:BlockDashboardConfigUserParams|Configuration des paramètres utilisateur]] | + | * [[:BlockDashboardConfigUserParams|User params]] |
- | * [[:BlockDashboardConfigOutputFields|Configuration des informations de sortie]] | + | * [[:BlockDashboardConfigOutputFields|Data output]] |
- | * [[:BlockDashboardConfigOutputTabular|Paramètres supplémentaires des sorties en tables croisées]] | + | * [[:BlockDashboardConfigOutputTabular|Data matrix additional params]] |
- | * [[:BlockDashboardConfigOutputTreeview|Paramètres supplémentaires des sorties en arbre hiérarchique]] | + | * [[:BlockDashboardConfigOutputTreeview|Data tree view additional params]] (Pro Version) |
- | * [[:BlockDashboardConfigPlotting|Configuration de l'affichage en graphe]] | + | * [[:BlockDashboardConfigPlotting|Graphic output]] |
- | * [[:BlockDashboardConfigSummarizers|Configuration des sommateurs]] | + | * [[:BlockDashboardConfigPlotting|Additional GoogleMap parameters]] (Pro Version) |
- | * [[:BlockDashboardConfigColoring|Configuration de la colorisation de données]] | + | * [[:BlockDashboardConfigPlotting|Additional timeline parameters]] (Pro Version) |
- | * [[:BlockDashboardConfigScheduling|Configuration du raffraichissement de données]] | + | * [[:BlockDashboardConfigSummarizers|Summators and filters]] |
- | * [[:BlockDashboardConfigFile|Configuration de la sortie sur fichier]] | + | * [[:BlockDashboardConfigColoring|Data coloring]] (Pro Version) |
+ | * [[:BlockDashboardConfigFile|Data export to files]] | ||
+ | * [[:BlockDashboardConfigScheduling|Data export sheduling]] (Pro Version) | ||
- | [[:Blocks:Dashboard|Retour à l'index du bloc]] | + | [[:Blocks:Dashboard|Back to the plugin index]] |