The Sisense Widgetscript Library
Hey Hey, There have been a lot of widgetscripts written to solve certain challenges in Sisense. It can sometimes be a hassle to find the right one and also know if they still work. For this reason I have created this post. This way we can create a nice overview of widget scripts 🙂 Things to keep in consideration Every script has a description, a link to the original post and a working with version X (to determine if it works for certain versions of Sisense) If you have a script you would like on this list, reply to this post with the name, description and a link to the original post (if it is your script or it does not exist, create a post) If you have a question regarding the script, please click the link to go to the original post and ask your question there. This way we can keep this post clean 🙂 Scripts: Title Description Link Works in version Filter buttons in widget A widgetscript that adds filter buttons to a widget for users to easily filter the chart Link L2024.2 Format pivot2 fonts A script to format pivot fonts (size, color etc) Link L2024.2 Using BloX To Dynamically Change A Dimension Using BloX To Dynamically Change A Dimension Link L2024.2 Flip Legend on Stacked Bar Chart Link L2024.2 Highlight Max and Min values in Line chart Sometimes line chart contains more value points and it wont be readable if we enable the value labels. But it would be a nice feature to highlight minimum and maximum value in the chart to get a better understanding of value range in it. Link L2024.2 Remove a pre-defined filter option from the list Link L2024.11KViews5likes0CommentsConvert Bar Charts into Radial Bars
In some cases, radial bar charts can look nicer and be easier to understand than regular bar charts. Since Sisense doesn’t have a built-in widget for radial bar charts, here is a script that converts standard bar charts into radial ones. This guide will demonstrate how to use the script to make data visuals more interesting and clear. Steps: Create a bar chart. It can be Classic, Stacked or stacked 100. Add below widget script and save. Refresh the widget widget.on('processresult', function(se, args){ args.result.chart.polar = true args.result.pane = { size: '80%', innerSize: '20%', endAngle: 270 } }); Reference: https://www.binextlevel.com/post/convert-bar-charts-into-radial-bars -Hari719Views4likes1CommentJump to with Tabber
I have a KPI dashboard using Tabber with 2 tab, FIRST vs EVER. This KPI dashboard also has a Jump To button and the Jump To dashboard has the same 2 tabs, FIRST vs EVER. Is there a way to pass the Tabber selection on the KPI dashboard to the Jump To dashboard? Currently, I have to select the appropriate tab once the Jump To opens.Solved303Views3likes4CommentsDisplay Active Filters in Sisense
If you find it challenging to locate which filters are currently applied in your Sisense dashboard due to a high number of options, you're not alone. Scrolling through the filter panel can be cumbersome. A great solution is to add a widget that displays the titles of the active filter panels, making it easier to track your selections. You can achieve this with Blox and a bit of scripting, simplifying your dashboard navigation and enhancing your data experience. Steps: Create a blox widget and a measure with formula "0" and name it "values" 2. Add below Blox script in the design panel { "style": ".blox-slides:first-child .filter-summary-title{display:block !important;} .blox-slides .filter-summary-title{margin-bottom:10px; font-weight:bold; color:black; font-size:1em}", "script": "", "title": "", "showCarousel": false, "body": [ { "type": "TextBlock", "text": "Applied Filter Dimensions", "class": "filter-summary-title", "style": { "text-align": "left", "font-size": "16px", "margin": "5px", "text-wrap": "wrap", "color": "black", "font-weight": "600", "display": "none" } }, { "type": "Container", "items": [ { "type": "ColumnSet", "columns": [ { "type": "Column", "width": "100%", "style": { "flex-direction": "row" }, "items": [ { "type": "TextBlock", "text": "{panel:value}️", "style": { "text-align": "left", "font-size": "12px", "margin": "5px", "text-wrap": "wrap", "color": "#ffffff", "font-weight": "600", "padding": "2px 5px", "border-radius": "5px", "background-color": "#b04343" } } ] } ] } ] } ], "actions": [] } 3. Add below widget script widget.on('processresult', function(se, ev){ dashfilters = ev.widget.dashboard.filters.flatten(); let resultArr = [] dashfilters.forEach((item, index) => { if (!item.jaql.filter.all) { resultArr.push( { '0': { "Panel": "value", "Value": item.jaql.title, "Text": item.jaql.title, "HasValue": true } } ); } }) ev.result = resultArr }); 4. Save the script and refresh the widget. For more information, refer https://www.binextlevel.com/post/display-active-filters-in-sisense -Hari566Views3likes0CommentsNew tabber implementation - multiple tabbers
I noticed new tabber implementation with UI controls. Great, I never liked scritping with widget IDs. There seems to be major flaw though. Consider this scenario: I have 2 tabbers on dashboard, one should only affect widgets a,b and c and 2nd should only affect widgets x,y and z. I current implementation each tabber affects all widgets. under each tabber all widgets are listed and I can only select / unselect widgets to show. so while I change tabber 1 I am affecting widgets a,b,c but also x,y,z. Unless im missing something , you cannot use multiple tabbers with new implementation. I appreciate option to disable new implementation but I would love to use it if someone can fix that issue. THanksSolved943Views2likes3CommentsHighlight Bars with Above/Below Average Values in a Column Chart
In this guide, we’ll explore how to highlight bars with values above or below the average in a column chart using Sisense's built-in features. As you may have already seen, we can also highlight min and max values in a line chart using a script. Now, let’s dive into the steps for making your column charts even more informative! Step 1: Create Your Column Chart Start by creating a column chart. Add your desired Categories and a Measure; for example, you select "Age Range" as your category and SUM(Quantity) as your measure. Step 2: Access the Color Selector Next, access the color selector in the Measure panel, which opens a popup window. In this popup, you’ll find three options: Single Color, Range, and Conditional. Click on the Conditional tab to proceed. Step 3: Configure Conditional Colors In the Conditional tab, you can set conditions and corresponding colors for your bars. Highlight Above Average Values: Remove all conditions that are loaded automatically except the first condition. Select ">" from the dropdown.. Click on the Formula option and enter the formula to calculate the average avg([Age Range], sum([Quantity])) Choose a color for the above average values. Highlight Below Average Values: Add another condition for the lowest value. Select "<" from the dropdown and use the same average formula avg([Age Range], sum([Quantity])) Select a distinct color for the lowest value. Step 4: Apply Your Changes Once you’ve configured the conditions, click OK to apply your changes. Your column chart will now display bars representing values above and below the average in different colors, allowing for quick identification of performance against the average. See below post to find more detailed steps: https://www.binextlevel.com/post/highlight-bars-with-above-below-average-values-in-a-column-chart-1 Also see how to highlight Min and Max bars in a column chart: https://www.binextlevel.com/post/how-to-highlight-max-and-min-bars-in-a-column-bar-charts -Hari https://www.binextlevel.com/1KViews2likes1CommentCreating a custom filter that updates will filter selected
Assume I have an indicator type widget where we like to show a KPI and also % compared with 'the previous period' based on the date filter the user selects, we like the 'previous period' to dynamically update ie: If the user selects 1 week, the previous period should be week 1. if the user selects last month, the previous period should be the month before the last month. If the user selects 10 days, the previous period should be prior 10 days Is there a way to achieve this in Sisense with either user a custom function, BloX, or a plugin? DRay2.7KViews2likes13CommentsDrill To Buttons
our userss have complained that having to teach people how to right click and find the drill feature, they'd instead like a button at the top of the visual where they can click and it applies the drill function. i'm sure there is a jaql query or implementation we could do for this??2KViews2likes7CommentsDashboard not auto-refreshing for mobile app performance data
Hi everyone, I’m using Sisense to track performance metrics from my mobile entertainment app — like daily active users, watch duration, and session time. Lately, I’ve noticed that some dashboards don’t refresh automatically, and I have to manually reload them to see updated results. I’ve already checked the data connector and refresh schedule, but everything looks fine there. Could this delay be due to caching, or maybe a dashboard setting I’m missing? Would appreciate any suggestions or settings to look into — thanks in advance!109Views1like4CommentsConditional Format in BloX using an image
Hi harikm007​ , DRay​ , Liliia_DevX​ I am using BloX to display a conditon format based on a if a value is above 10% or below 10% and then display a green or red arrow I have in my plugins folder to show. My script goes as follows: { "style": "@import url('https://fonts.googleapis.com/css2?family=Manrope:wght@700;800&display=swap');", "script": "", "title": "", "conditions": [ { "minRange": "-Infinity", "maxRange": 0.10, "image": "/plugins/assets/icons/red_arrow.png", "color": "#D34A4A", "fontSize": "14px", "fontWeight": "600" }, { "minRange": 0.10, "maxRange": "Infinity", "image": "/plugins/assets/icons/green-up-arrow.svg", "color": "#079B65", "fontSize": "14px", "fontWeight": "600" } ], "titleStyle": [ { "display": "none" } ], "showCarousel": false, "body": [ { "type": "ColumnSet", "columns": [ { "type": "Column", "width": "stretch", "style": { "width": "430px", "height": "145px", "box-sizing": "border-box", "padding": "16px" }, "items": [ { "type": "ColumnSet", "columns": [ { "type": "Column", "width": "stretch", "items": [ { "type": "TextBlock", "text": "No shows - last full month", "style": { "font-family": "Inter, sans-serif", "font-size": "16px", "font-weight": "700", "text-align": "left", "color": "#212A31", "margin": "0" } } ] }, { "type": "Column", "width": "auto", "horizontalAlignment": "right", "style": { "text-align": "right", "min-width": "14px" }, "items": [ { "type": "ColumnSet", "style": { "align-items": "center" }, "columns": [ { "type": "Column", "width": "auto", "items": [ { "type": "Image", "url": "{conditions:image}", "altText": "delta", "horizontalAlignment": "right", "style": { "width": "12px", "height": "10px", "margin-right": "6px", "margin-top": "2px" } } ] }, { "type": "Column", "width": "150", "items": [ { "type": "TextBlock", "text": "{panel:# of unique Patient ID}", "style": { "font-family": "Inter, sans-serif", "font-size": "14px", "font-weight": "600", "color": "{conditions:color}", "text-align": "right", "margin": "0" } } ] } ] } ] } ] }, { "type": "TextBlock", "text": "{panel: No Show}", "style": { "margin-top": "16px", "font-family": "Manrope, Inter, sans-serif", "font-size": "28px", "line-height": "32px", "font-weight": "700", "text-align": "left", "color": "#212A31" } }, { "type": "TextBlock", "text": "Avg 10%", "style": { "margin-top": "8px", "font-family": "Inter, sans-serif", "font-size": "12px", "font-weight": "500", "text-align": "left", "color": "#969696" } } ] } ] } ], "actions": [] }Solved211Views1like3Comments