Hitachi Vantara Pentaho Community Forums
Results 1 to 3 of 3

Thread: requête mondrian paramétrable

  1. #1
    Join Date
    Aug 2007
    Posts
    26

    Default requête mondrian paramétrable

    Bonjour,

    J'ai monté un schéma en réseau étoilé et j'arrive à l'interroger avec Mondrian. Tant que je met en dur la requête, tout se passe bien, mon report fonctionne.

    SELECT
    CROSSJOIN
    (
    {[activity].ALLMEMBERS},
    {[Measures].[Quantity]}
    )
    ON COLUMNS,
    {[period].ALLMEMBERS}
    ON ROWS
    FROM
    cli_emit
    WHERE
    {[client].[client_123]}

    Le problème est que j'aimerais utiliser "cli_name", qui est un paramètre saisi par l'utilisateur. Je récupère bien la valeur, mais je n'arrive pas à la transmettre à ma requête MDX.
    Dans les forums, ils disent tous : facile, il suffit d'utiliser Param() ; mais cela n'est documenté nulle part. De plus, impossible de trouver un exemple ou tutorial.

    J'ai essayé :
    SELECT
    CROSSJOIN
    (
    {[activity].ALLMEMBERS},
    {[Measures].[Quantity]}
    )
    ON COLUMNS,
    {[period].ALLMEMBERS}
    ON ROWS
    FROM
    cli_emit
    WHERE
    {[client].[{PREPARE:cli_name}]}
    Mais cela ne fonctionne pas.

    Après avoir lu les forums, j'ai essayé d'utiliser les paramètres :
    SELECT
    CROSSJOIN
    (
    {[activity].ALLMEMBERS},
    {[Measures].[Quantity]}
    )
    ON COLUMNS,
    {[period].ALLMEMBERS}
    ON ROWS
    FROM
    cli_emit
    WHERE
    {Parameter ("cli_name", [client], [client].[client_123])}
    Mais alors, il utilise toujours la valeur par défaut.

    Dans les documentation Pentaho, ils disent d'utiliser Param() au lieu d Parameter() ; mais quand j'essaie, Report Designer refuse de valider la requête MDX.

    J'ai beau chercher, impossible de trouver un exemple de report pentaho utilisant une requête paramètrable !
    Si quelqu'un sait où trouver des exemples, merci de me le communiquer.

    Cordialement,
    Van Hoang

  2. #2

    Smile Requete MDX paramètrable

    Bonjour,
    De mon côté, quand je veux une requête MDX dynamique, j'utilise le Pentaho Design Studio pour afficher des prompts, puis construire la requête MDX en dynamique avec du javascript, et envoyer le tout au composant Pivot Viewer. Cela fonctionne, et permet de rendre les requêtes dynamiques.
    Cordialement,
    Patrick
    Patrick Beaucamp
    BPM-CONSEIL
    www.bpm-conseil.com

  3. #3
    Join Date
    Aug 2007
    Posts
    26

    Default

    Bonjour,

    Je te remercie de ta réponse.
    Pour Mondrian, je viens de trouver la réponse ; l'appel au paramètre se fait différement dans une requête MDX par rapport à une requête SQL.

    Il fallait écrire :
    SELECT
    CROSSJOIN
    (
    {[activity].ALLMEMBERS},
    {[Measures].[Quantity]}
    )
    ON COLUMNS,
    {[period].ALLMEMBERS}
    ON ROWS
    FROM
    cli_emit
    WHERE
    [client].[{cli_name}]

    Heureusement que la réponse vient d'être donnée sur un autre forum ; parce que cela faisait plus de 15 jours que je cherchais désespérément.
    Avec cela mon report n'a plus que des problèmes de mise en page. Mais cela est une autre histoire.

    Cordialement,
    Van Hoang

Posting Permissions

  • You may not post new threads
  • You may not post replies
  • You may not post attachments
  • You may not edit your posts
  •  
Privacy Policy | Legal Notices | Safe Harbor Privacy Policy

Copyright © 2005 - 2019 Hitachi Vantara Corporation. All Rights Reserved.