Hitachi Vantara Pentaho Community Forums
Results 1 to 3 of 3

Thread: Unable to perform drill down from baseAxisClickAction property

  1. #1

    Default Unable to perform drill down from baseAxisClickAction property

    Hi,

    I want to drill down from one dashboard (bar chart) to another dashboard (bar chart) after clicking base axis (x-axis) value and pass that category value as parameter to another dashboard in Pentaho CDE.
    =============================================================================================================================
    Steps I have used:

    1) As I wanted to drill down from base axis, so I added java function in baseAxisClickAction property instead clickAction property of as,

    function sendParameter(scene){
    var url='http://ftc-lgcmsapp505:8080/SMART/content/pentaho-cdf-dd/Render?solution=Dashboards&path=&file=dashboard_level_2.wcdf&idKeyparam=';

    var vars = scene.vars;
    var c = vars.category.value;
    window.location=url+c;
    }

    This function is working for clickAction but not working for baseAxisClickAction property.

    Also I tried with,
    function q(c)
    {
    window.location = 'http://ftc-lgcmsapp505:8080/SMART/content/pentaho-cdf-dd/Render?solution=Dashboards&path=&file=dashboard_level_2.wcdf&idKey='+c;
    }

    but it's giving as error.

    2) I have created custom parameter in second dashboard and added it into chart parameter and listner with correct function.

    function sendParam()
    {
    return Dashboards.getQueryParameter("idKeyparam");
    }


    ======================================================================================================================

    I think actual issue is with baseAxisClickAction property function, but not sure about exact issue. Lot of confusion between vars, datums and atoms.

    Please refer two attachments for actual requirement. Please help.
    Attached Images Attached Images   

  2. #2
    Join Date
    Mar 2012
    Posts
    645

    Default

    Hi,

    on the cartesian axes panels the name of the represented variable is always called "tick".

    Depending on your CDF/CGG version, you might be able to use the getTick() method.

    So do:
    scene.getTick();

    or
    scene.vars.tick.value

    to obtain the value of the category visual role (when at the base axis).

    ---------------

    Beware that if you have baseAxisOverlappedLabelsMode as "hide" - the default value - a scene may correspond to a sequence of consecutive ticks/categories that were merged into a single scene, because not all labels would fit the available space. In this case, the scene will have a property "isHidden" with value (boolean) true. The value of the tick will be that of all the included original ticks joined by the dataSeparator character ("~" by default). Let me know if you need to handle this case - I can provide more information.

    ---------------------------
    Quick Concept Summary

    Visual side of things
    Scenes, variables, visual roles.

    Data/information side of things
    Datas, dimensions, datums, atoms

    The mapping between the two is made by specifying the data dimensions that a visual role is bound to. For example, you say:
    categoryRole: "productFamily, productType"

    to bind the category visual role to the tuple of dimensions productFamily and productType.

    Most of the times, however, because the default dimension names are used, it looks like this separation does not exist - the visual role "category" is bound to a dimension named "category":
    categoryRole: "category"

    You'll only appreciate, and take advantage of, this separation of concerns if you name the data dimensions by their actual business names, and then manually map these to desired visual roles.

    In a little more detail, and making an analogy to relational database terms.

    Data instance side
    Data - a table; contains a collection of columns and one of rows.

    Dimension
    - a column in a table (nothing to do with MDX dimensions).

    Datum
    - a row/record; contains the values for all columns.

    Atom
    - like a spreadsheet cell, holds the value and label (and key, ...) of a column;
    however, atoms are shared by all rows having the same value in a given column.

    Data metadata/schema side
    Complex type - defines the structure of a kind of table/record; essentially a collection of column types.

    Dimension type
    - defines a column type.

    Visual side
    Scene - describes one instance of visual representation;
    contains a collection of variables;
    scenes are organized hierarchically, and are generally local to each panel (axis, legend, plot);
    generally, contains a list of the datums that are there represented;
    depending on the kind of scene, it may contain one Datum, a list of Datums, one Data or many Data.

    Variable - holds a business value, before it is encoded with a scale, but after it has been grouped and aggregated to match the actual representation;
    it is not an already visually encoded value, like a number of pixels or an rgb color;
    most are the value of a same named visual role (although you'll note that it is not the case in panels like the cartesian axis and the color legend).

    Visual Role - represents a main, high-level, visual function or characteristic of a visualization that varies according to bound data
    (ex: color, title, size, series, ...).

    Context - the CCC context object is the value of the JavaScript this in CCC extension points, and other callbacks;
    it provides easy access to commonly needed objects like the chart, the panel, the underlying protovis mark, pvMark, the scene, and last but not the least, the CCC's counterpart, and wrapper, of protovis marks, the sign.

    -----
    See also this other post.
    Last edited by duarte.leao; 06-21-2014 at 06:47 PM.

  3. #3

    Default

    Hi Duarte,

    Thanks for your reply. It solved my issue. Thanks once again. I need one more help in addition to that. Right now I am passing tick value as parameter to another dashboard, but if I have to pass tick value as well as parameter value from current dashboard to another dashboard after clicking on baseaxis how I can achieve that?

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.