Forum Discussion

NancySummit's avatar
NancySummit
Cloud Apps
01-31-2025
Solved

Edits to script for changing widget values by buttons

I followed the instructions in this post... https://community.sisense.com/t5/knowledge-base/changing-measures-in-the-entire-dashboard-using-blox-user/tac-p/26261#M3953

It works great but I've been trying to modify this to work on a line chart (widget.type == 'lineChart' in the SwitchMeasure action) -- I don't want an indicator widget on the dashboard -- and I just can't get it to work without including an indicator widget. The line chart changes between 3 values perfectly without the indicator widget type but the buttons won't show the designated selected color when I click on them w/out the indicator widget in the dashboard. Anyone have some ideas? My javascript is beginner level if that. Thanks for any help!

  • AssafHanina's avatar
    AssafHanina
    02-07-2025

    Hey NancySummit ,

    Thanks for sharing the feedback. 
    Please find a dash file with possible solution and related action.

    1. Create the action - the action is for switching the first column in Pie/Line/Column/Area/Bar chart
    2. Update the dashboard Script with related OID and Color - the dashboard script is for keeping the selected color after refresh the dashboard 
    3. Update the related Widget OID/OID's in the Blox 

    Example

    Hope this will resolve the issue 

    Best regards

     

  • AssafHanina's avatar
    AssafHanina
    02-10-2025

    Hey NancySummit ,

    I'm happy to hear it's resolve the issue!

    You can specify 2 measures in the same chart.
    The blox action will replace the first measure as it hard-coded for (Item[0])
    In case needed, you may consider duplicating the action with different name and set hard coded to item[1] for replacing the secondary measure if needed. 

    Here is an example with secondary measure: Selecting the Revenue

    Selecting the Quantity

    Best Regards

7 Replies

  • AssafHanina's avatar
    AssafHanina
    Sisense Employee

    Hey NancySummit ,

    The Action Shared in the Community article should work for Line Chart as well without the need of readjusting the Action or even if there's not an Indicator.
    In the Blox Action there's a differentiate between Indicator or the rest of the Widget types. 

    The Sisense widgets has different panels for Rows, Measures, Columns, Filters. 
    the Panels Can be different between Widget types.

    Indicator widgets doesn't have Rows/Group by so the measure switcher Code refer to the Panels[0].items[0] which is the Primary indicator. 

    For Other widget types, such as Column Chart, Bar Chart, Line Chart, Area Chart - the Panels[1].items[0] refer to the First measure as present below. 
    Therefore, it's not require additional adjustment for Line Chart and it shall work. 

    For the Buttons to Display, can you please share an example of the related issue?

    Best Regards

    fyi DRay 

    • NancySummit's avatar
      NancySummit
      Cloud Apps

      Thank you!  I follow what you're saying about the "else" and I verified my code is the same as yours (to make sure I didn't accidentally edit it). But as soon as I delete my indicator widget from the dashboard, the buttons just stay in the default as indicated in the widget script for the line chart.  The line chart values change correctly when the buttons are clicked, but the button colors do not cycle along with it.  In the image below, the first button "Avg MSA Med Exp" was clicked.  The line chart reflects that value but the button is the default gray as indicated in the widget script of the line chart.  

      I'm attaching the line chart widget script.  The only edits I made to this part from the original post was to add another button.  Appreciate your help!

  • Wow that works great!!  And much simpler.  Thank you so much!  Now I need know if I can show TWO measures at one time on a chart -- like Revenue AND Profit in your example.  I'm guessing that needs to be a separate post?  Thanks again!!

    • AssafHanina's avatar
      AssafHanina
      Sisense Employee

      Hey NancySummit ,

      I'm happy to hear it's resolve the issue!

      You can specify 2 measures in the same chart.
      The blox action will replace the first measure as it hard-coded for (Item[0])
      In case needed, you may consider duplicating the action with different name and set hard coded to item[1] for replacing the secondary measure if needed. 

      Here is an example with secondary measure: Selecting the Revenue

      Selecting the Quantity

      Best Regards

  • Well, as SOON as I posted that reply to you it occurred to me to edit the line chart widget script and change all instances of widget.metadata.panels[0].items[0].jaql.title ==  to widget.metadata.panels[1].items[0].jaql.title ==  and it looks like that fixed it...  The buttons are correctly cycling through the colors.  Does that sound correct to you?  That the target widget panels[] needs to be adjusted to the type of widget it is?  Thank you!

    • AssafHanina's avatar
      AssafHanina
      Sisense Employee

      Hey NancySummit ,

      Thanks for sharing the feedback. 
      Please find a dash file with possible solution and related action.

      1. Create the action - the action is for switching the first column in Pie/Line/Column/Area/Bar chart
      2. Update the dashboard Script with related OID and Color - the dashboard script is for keeping the selected color after refresh the dashboard 
      3. Update the related Widget OID/OID's in the Blox 

      Example

      Hope this will resolve the issue 

      Best regards