Vous consultez une page technique concernant le logiciel de gestion Mercator. Celle-ci contient des informations spécifiques destinées aux professionnels de Mercator. Souhaitez-vous être redirigés vers des informations plus générales ?


   Ne plus poser cette question

Paramétrage de bundles de type "Graphique"

0000002761     -      07/03/2018

Mercator permet le paramétrage de bundles destinés à MercatorPenguin, de type "graphique" (Chart). Contrairement aux listes, ce paramétrage ne contient qu'une seule étape, qui aboutit à l'affichage du graphique.

Pour chaque, le paramétrage doit contenir 3 éléments :

  • 1. La définition XAML d'un formulaire de sélection de paramètres de recherche. Ce formulaire sera affiché dans la partie supérieur de l'écran.
  • 2. Une requête SQL qui exploitera les paramètres saisi dans le formulaire ci-dessus.
  • 3. Un code C# (sur le deuxième onglet), qui sera exécuté par MercatorPenguinServer et dont l'objet est de construire le graphique au départ des données reçues à l'étape 2.

 

1.XAML Recherche

Cette zone doit contenir du code XAML valide. Ce code doit être construit de façon strictement identique à celui qui exposé pour la composition du formulaire de recherche de l'étape initiale d'un bundle de type "liste".

 

2. Requête SQL

Cette zone permet de contenir n'importe quelle requête ou script SQL. Cette requête peut renvoyer une ou plusieurs tables, selon les besoins du graphique qui sera construit à l'étape suivante.

La requête SQL doit exploiter les paramètres SQL passés via le formulaire (point 1).

En sus, le paramètre @ID_USER (char 10) contenant l'ID de l'utilisateur est toujours passé à cette requête.

 

3.Graphique C#

Le second onglet de l'écran de paramétrage permet de spécifier le code C# qui prendra en charge la construction du graphique. Ce graphe est toujous du type 

System.Windows.Forms.DataVisualization.Charting.Chart

Un objet de ce type est initialement créé par MercatorPenguinServer. Il est passé à la méthode Build du code mis en place ici. La méthode Build reçoit 3 paramètres

  • Chart chart : le graphe, tel qu'indiqué ci-dessus
  • DataSet ds : le DataSet résultant de l'exécution de la requête SQL de l'étape 2
  • Dictionary<string, object> dicoParams : un dictionnaire reprenant 
    • les paramètres SQL qui ont été passés à la requête SQL (leur nom commencent par @)
    • @ID_USER contenant l'ID de l'utilisateur 
    • MAIN_DIR : le répertoire principal de ce Mercator vu par MercatorPenguinServer
    • REP_DATA : le répertoire des données de ce Mercator vu par MercatorPenguinServer

 

DataVisualization.Charting.Chart offre une boîte à outils très complète afin de produire des graphes de tous types et hautement personnalisés. Il s'agit d'une API standard incluse dans le framework .net. Elle n'est donc pas spécifique à Mercator. Elle est par ailleurs largement documentée sur le web. Nous attirons l'attention sur le fait qu'il s'agit de graphes dans Windows Forms, et non dans ASP.net.

Remarque importante : le code indiqué ici est exécuté dans MercatorPenguinServer. Donc, ni dans Mercator, ni dans le mobile. En conséquence, seules les assemblies utilisées dans l'appDomain de MercatorPenguinServer peuvent être référencées. Il en résulte que des assemblies telles que MercatorUi.dll, MercatorReporting.dll, ... ne peuvent être utilisées.

 


 

Quelques exemples :