Tutorial Design Studio - Pentaho

Créer ses requêtes avec Pentaho Design Studio

Pentaho Design Studio est un Eclipse modifié pour créer des fichiers .xactions. Ces derniers contiennent les paramètres d'une source de données et des instructions (génération de rapport, envoie de mail, etc.), sous un format XML, qui sont destinés au moteur de Pentaho pour être exécuter. Un minimum de connaissances en SQL est indispensable pour écrire des requêtes. Toutefois, le XML et le JAVA ne sont pas requis obligatoirement.

Installation et configuration de Pentaho Design Studio

Il faut d’abord configurer le Design Studio grâce au fichier preferences.ini (à l'aide d'un simple éditeur de texte). Ce fichier est dans le répertoire \pentaho design studio\plugins\org.pentaho.designstudio.editors.actionsequence.

Modifiez la ligne ci-dessous pour qu'elle corresponde à votre installation de Pentaho:

actionsequence.server.url=http://localhost:8080/pentaho

Avec Internet Explorer, il faudra toutefois taper l’URL suivante : http://127.0.0.1:8080/pentaho

Une fois cette préférence donnée, quittez et retournez dans Démarrer, Tous les Programmes, Pentaho, Pentaho Open BI Suite puis double-cliquez sur PentahoDesignStudio.exe. N’oubliez pas de lancer le serveur (fichier start-pentaho.bat) !

Introduction à Pentaho Design Studio

Initiation : découverte des requêtes SQL dans Design Studio

Une fois Design Studio lance, faîtes Fichier / New Project

ProjectName = ce que vous voulez (moi je prend TDN°1 par défaut)

Décochez la croix par défaut et allez sélectionner le dossier suivant (samples).

Puis appuyez sur Finish.

Le but de ce premier exercice dans cette partie est d’afficher l’évolution des différences de prix entre le prix d’achat et le prix de vente (conseillé). Cet affichage se fera selon différentes possibilités graphiques qui seront données à l’utilisateur via une liste déroulante.

La première tâche consiste à paramétrer et créer des fichiers. La mission consiste seulement à paramétrer le fichier .xaction responsable de ce qui est affiché à l’écran de l’utilisateur.

Ces derniers contiennent les paramètres d'une source de données et des instructions (génération de rapport, envoie de mail, etc.), sous un format XML, qui sont destinés au moteur de Pentaho pour être exécutés.

Déplacez-vous jusqu’au dossier charts et cliquez sur le petit plus pour « développer » l’explorateur. Ici sont concentrés tous les fichiers nécessaires à l’affichage d’une page avec un navigateur. Le fichier ChartComponent_ChartTypes.xaction contient la requête et les propriétés d’affichage que nous allons créer ensemble.

Une fois que vous avez ouvert le fichier ChartComponent_ChartTypes.xaction, sur la droite de l’écran apparaît une nouvelle fenêtre avec 4 onglets situés en bas.

L’onglet général réfère aux propriétés du fichier.

L’onglet suivant (Define process) permet la création de requêtes et la notification des inputs / outputs.

Le troisième onglet (XML Source) contient du code XML qui est généré automatiquement selon les deux premiers onglets.

Enfin, le dernier onglet vous servira à tester vos actions.

Commençons par paramétrer l’adresse du serveur, ce sera le seul élément à paramétrer mais il faudra le refaire souvent..

Allez dans le dernier onglet (Test)

Dans Pentaho Server URL, notez l’adresse suivante : http://127.0.0.1:8080/pentaho puis appuyer sur le bouton Test Server. Cette adresse URL est seulement valide pour Internet Explorer. Si vous utilisez Mozilla, l’adresse devient : http://localhost:8080/pentaho.

Après quelques instants de patience, la page d’ouverture de Pentaho s’affiche, sélectionnez Joe[Admin] pour vous logger. Votre serveur est désormais prêt. Il est en attente d’un ordre.

C’est ce que nous allons faire en lui donnant une requête.

Nous souhaitons, je vous le rappelle, afficher l’évolution des différences entre les prix de vente et prix d’achat dans une période donnée (entre 1970 et 1980).

Il faut pour cela revenir au deuxième onglet (Define Process). Sur la gauche de cette page se trouvent trois encarts. Nous nous occuperons seulement de celui du milieu, les autres étant déjà configurés. En effet, l’encart Process Actions contient toutes les actions que Pentaho doit faire. Avec un simple clic gauche sur le nom d’une action, à droite s’affiche les éléments qui la composent.

Votre mission consiste à trouver la requête qui permettra l’affichage de l’évolution des différences entre les prix de vente (msrp) et prix d’achat (buyprice) (disponibles dans la table PRODUCTS) dans une période donnée (entre 1960 et 1970).

La requête est donc la suivante :

select buyprice, msrp from PRODUCTS where productname like '197%' order by productname

Recopiez cette requête dans l’encart Query (ovale noire):


Testez votre action en allant sur le quatrième onglet, en retapant si nécessaire l’adresse URL du serveur puis tester le serveur. Une fois connecté avec le login Joe, appuyez sur le bouton Generate Url puis Run.


Grâce à la liste déroulante, vous pouvez choisir sous quel format graphique vous souhaitez afficher votre résultat (sélection puis Run Report). Si nous prenons en ligne (line) par exemple, pouvez-vous nous donner sur la feuille des réponses le prix de vente (msrp) le plus élevé, le prix d’achat (buyprice) le plus élevé et si ils correspondent au même produit.

Faites clic droit, Précédent puis essayez d’autres types graphiques. Première mission réussie !

Exemple simple de création d'un fichier .xaction

Dans Package Explorer, faites un clic-droit sur le projet pentaho_solutions, New, Folder et nommez ce nouveau dossier.

Dans Package Explorer, faites un clic-droit sur le nouveau dossier, New et Other... .

Dans le dossier Pentaho, choisissez New Action Sequence Wizard.

Nommez votre fichier .xaction et cliquez sur Finish.

Double-cliquez sur votre xaction. Ce dernier s'ouvre dans la fenêtre droite.designstudio7.JPG

Cliquez sur l'onglet Define Process. La colonne de gauche montre les différentes parties de votre xaction. Dans la partie Process Actions, faites un clic-droit, Add, Get Data From et Relational.

Sur la partie droite s'affiche les caractéristiques de cette action. Cliquez sur JNDI et inscrivez le nom de votre JNDI configuré précédemment (par défaut SampleData).


En dessous dans la partie Query, inscrivez "SELECT SYSDATE FROM DUAL".

Dans Process Actions, faites glisser query_result vers ouputs qui se trouve en bas dans la section Process Outputs.


Sauvegardez le fichier avec Ctrl-S.

Cliquez sur l'onglet Test et sur le bouton Run.

Votre application est valide. Ce dernier exercice vous a paru simple ? Cela tombe bien car rassurez-vous, nous n’avons utilisé que 1% des possibilités offertes par Pentaho !

18 commentaires:

Anonyme a dit…

Bonjour,
je suis étudiant en 5ieme année d’ingéniorat, ou j’effectue un stage sur les systèmes décisionnels pour mon PFE, plus précisément en a réaliser un petit datawarehouse (2 datamarts) et on doit utiliser pantaho comme solution de reporting (dashboard), votre blog est très intéressent et m’aide beaucoup mais je n’est pas très bien compris comment réalisé la connexion entre ma source de données ( datawarehouse ) et la solution design studio, je vous demande si c possible de m’envoyer quelques doc expliquant cela.
Merci d’avance
Touati Hakim
e-mail hkminf@hotmail.com

Anonyme a dit…

Bonjour Touati,
tu as du recevoir des docs sur ta boite mail...
bonne réception !

Ludovic Demathieu a dit…

Bonjour

J'étudie de prêt la solution Pentaho, afin de remplacer sous peu BO.
Je viens de tomber sur votre blog, auriez-vous à tout hasard une documentation "complète" du produit.
Je cherche à créer, soit via report Designer, soit via Studio design, des états avec des "variables". Sur report designer, j'arrive à faire le lien sur ma BD, et pas sur Studio Design. Par contre, ni sur l'un, ni sur l'autre, je n'ai de notion d'"objet" (à créer à partir d'une requête) comme il existe sur BO) à sélectionner (pour un utilisateur lambda) en vue de générer un état.

Merci d'avance pour votre aide.

Anonyme a dit…

Bonjour,
Je trouve ce blog génial!
Tout comme Hakim, je prépare un travail de fin d'étude sur Pentaho.
Etude et implémentation d'un reporting d'un outil de GRC. J'ai le même problème, à savoir comment connecter ma DB MySQL et Pentaho design studio. Est-il possible également de m'envoyer de la doc à ce sujet ?
D'avance un très grand merci
Stéphane
E-Mail : calumet_007@yahoo.fr

Anonyme a dit…

Bonjour,
Blog génial avec de vrais exemples !
Cependant comme certains autres de tes lecteurs je ne comprend pas trop comment relier ma base de donnée MySql à pentaho ?
Si tu as quelques documents j'en serais ravi !

grognu@hotmail.com

Antoine.

Anonyme a dit…

Bonjour,
Je suis étudiant en 3eme année d'ingénierie informatique et j'effectue un stage au sein d'une société de téléphonie mobile. Je suis en train de voir si il est possible d'utiliser le référenciel de Pentaho Data Integration avec Pentaho Design Studio. En faite, je ne trouve pas où l'on peut changer ce référenciel dans la solution Pentaho Design Studio, et j'aurai avoir un complément d'informations.
Pour remarque, je ne parviens pas à réaliser l'exemple de création de mon fichier xaction, cela me renvoie une erreur, surement du à la base de donnée non trouvé.

Merci de me repondre sur mon adresse msn : haart01@hotmail.com

Merci beaucoup :))))

Unknown a dit…

Bonjour,

J'obtiens l'erreur :
<<
Erreur : SolutionEngine.ERROR_0007 - [fr_27] Action sequence execution failed (org.pentaho.platform.engine.services.solution.SolutionEngine)
Debug : [fr_21] Starting execute of mon_dossier_test//my_action.xaction (org.pentaho.platform.engine.services.solution.SolutionEngine)
Debug : [fr_30] Getting runtime context and data (org.pentaho.platform.engine.services.solution.SolutionEngine)
Debug : [fr_33] Loading action sequence definition file (org.pentaho.platform.engine.services.solution.SolutionEngine)
Erreur : SolutionEngine.ERROR_0007 - [fr_27] Action sequence execution failed (org.pentaho.platform.engine.services.solution.SolutionEngine)



Server Version: Pentaho Platform Engine Core 2.0.0-RC1.33017
>>

En essayant l'exemple mentionné. Dans les logs de tomcat j'ai juste :
<<11:09:16,425 WARN [SolutionRepositoryBase] Could not find document /pentaho-sol
utions/mon_dossier_test/my_action.xaction
11:09:16,449 WARN [SolutionRepositoryBase] Could not find document /pentaho-sol
utions/mon_dossier_test/my_action.xaction
11:09:16,452 ERROR [SolutionEngine] 14d67981-d723-11dd-933c-73e436d8fa74:SOLUTIO
N-ENGINE:my_action.xaction: SolutionEngine.ERROR_0007 - [fr_27] Action sequence
execution failed
31 dÚc. 2008 11:10:44 org.apache.tomcat.util.http.Parameters processParameters
ATTENTION: Parameters: Invalid chunk ignored.
11:10:44,242 WARN [SolutionRepositoryBase] Could not find document /pentaho-sol
utions/mon_dossier_test/my_action.xaction
11:10:44,256 WARN [SolutionRepositoryBase] Could not find document /pentaho-sol
utions/mon_dossier_test/my_action.xaction
11:10:44,259 ERROR [SolutionEngine] 492cc272-d723-11dd-933c-73e436d8fa74:SOLUTIO
N-ENGINE:my_action.xaction: SolutionEngine.ERROR_0007 - [fr_27] Action sequence
execution failed
>>

Cette erreur vous parle-t-elle ?

Merci d'avance.

Anonyme a dit…

salutation
voilà, je suis sur un projet qui demande l'intégration de toute la chaîne décisionnelle que propose pentaho...
j'ai plus au moins compris l'utilité des différentes partie et je doit dire que votre blog ma vraiment très aidé sur ce point ;)
mais le hic c'est que Pentaho manque vraiment de documentation (les outils intégrations, la connexion a la bd...) ca sera vraiment gentille de votre parts de m'aider a m'orienté (documentations, conseilles)
merci d'avance!
Slim
email : cartmanisback@hotmail.com

Anonyme a dit…

Bonjour,
je suis étudiant en 5ieme année d’ingénieur, et je dois visualiser différents indicateurs en temps réel d'un process, je souhaite réaliser ceci via votre reporting (dashboard), votre blog est très intéressent et m’aide beaucoup mais je n’est pas très bien compris comment réalisé la connexion entre ma source de données ( datawarehouse ) et la solution design studio, je vous demande si c possible de m’envoyer quelques doc expliquant cela.
Merci d’avance
Ripoche Benoît
e-mail : poche44@hotmail.fr

Unknown a dit…

Bonjour,
j'ai des questions à vous poser:

- en utulisant pentaho, aurais-je la possibilité d'intégrer ma propre interface (pour une application web) en précisant les droits d'accès?? si oui comment??

-comment architecturer ma bd sous forme d'étoile ou flocon de neige, dans le but de construire des cubes olap??

Si vous avez des tuto à me fournir j'en serai reconnaissante.Merci d'avance.

Bonne journée

ilhamsl@hotmail.com

sylvain a dit…

Bonjour,

je suis en stage de fin d'etude d'ingenieur et j'utilise pentaho pour creer des reports, dashboards, analysis views...
Ton tutoriel est tres bien fait, mais meme en creer mes actions, je ne vois pas comment les integrer a un dashboard ou report.
Pourrais-tu m'envoyer de la documentation la_dessus ?
mon adresse : sylvain.tacquet@gmail.com

Merci d'avance !

A+

Anonyme a dit…

Bonjour,
je suis étudiant en 5ieme année d’ingéniorat, ou j’effectue un stage sur la plateforme pantaho decisionnel, plus précisément je suis entraine de réaliser deux petits projet en magasin de ventes et energie "datawarehouse" donc je devrai utiliser pantaho comme solution de reporting, votre blog est très intéressant pour m’aider à comprendre bcp pbm ! mais je n’est pas très bien compris comment réalisé la connexion entre ma source de données ( datawarehouse ) et la solution design studio, je vous demande si c possible de m’envoyer quelques doc expliquant cela.
Merci d’avance
Margot
e-mail: marylin.bouba@live.fr,

Unknown a dit…

Bonjour je suis en stage de fin d'étude d'ingénieur informaticien, je recherche actuellement un logicielde business intelligence (gratuit et open source pour le moment). Bravo pour cette présentation très intéressante. Je m'occupe également de la création de BDD et de son traitement, pourrais-je avoir des informations plus détaillée sur l'intégration du datawarehouse? En vous remerciant
Arnaud Legrand
email: arnaudlegrand1@gmail.com

Imedix a dit…

Bsr, alors voila je trouve très intéressant les informations que vous avez publié.
Au fait je suis en 2eme année master et je débute en Info décisionnelle, si c'est possible de m'envoyer qq documents pour que débuter en pentaho.

Merci.

jassmine a dit…

bonjour,
je viens de commencé un stage et je doit travaillé avec Pentaho.je voudrai que vous me fournissez toute documentation possible et aussi si vous avez quelque chose sur comment joindre Pentaho et OpenERP voici mon Email: jassmine.jihane27@gmail.com

Anonyme a dit…

Bonjour.
Je viens de commencer avec Pentaho, et j'ai créé mon Dashboard, mais je n'arrive pas à l'enregistrer sous forme de page HTML. Je demande votr aide.

Merci

sofiane_sba22@hotmail.com

khoukha a dit…

Bonjour je suis une étudiante en 5ième année et je travaille sur un projet décisionnel et j'ai besoin de documentation sur design studio et aussi lorsque j'ai testé l'exemple que vous avez testé il s'affiche ce message:
RuntimeContext.ERROR_0017 - [fr_18] Activity failed to execute.
voila mon e-mail : khoukhal58@hotmail.com
merci d'avance.

student a dit…

bonjour,
je viens de suivre ce tutoriel masi lorsque je clique sur run pour l'excecution alors ca m'affcihe une erreur :

La ressource demandée (/pentaho/Home/ViewAction) n'est pas disponible.

j'ai cherché dans le nt mais j'ai pas trouvé de solutions a cette erreur sachant que j'utilise la version communautaire pentaho 3.0.0 et pentaho design studio 4.0.0

voila ma boite email
vombe8@gmail.com
merci