ContributionsMost RecentNewest TopicsMost LikesSolutionsRe: BloX Template: Indicators With Sparkline Hi DRay , Unfortunately this does not help. I am looking into the what kind of charts can be made available in the sparkline. There isn't clear documentation on what charts are made available. Is it just line, bar, and pie? Re: BloX Template: Indicators With Sparkline intapiuser DRay is there a document showing all the different "types" of sparkline graphs you can showcase? I saw Pie chart was an option from a client of mine but haven't found any documentation regarding what are the available charts/stylization to it. Re: How to target a specific cell/column to change the column in a pivot table? Solved the issue: The order of the scripts and then us // 1) Color the column's sub-header cell (row-1 "member"): widget.transformPivot( { type: ['member'], // header cells axis: 'columns', // match column members columns: [{ dim: '[Program_Assessment_Response_Question.Program_Assessment_Question_Version_Name]', members: ['Activity date for billable time'] }] }, function (metadata, cell) { cell.style = cell.style || {}; cell.style.backgroundColor = '#e6f4ea'; // light green cell.style.borderRadius = '4px'; cell.style.textAlign = 'center'; // keeps it centered } ); // 2) Color all value cells under that column: widget.transformPivot( { type: ['value'], // data cells columns: [{ dim: '[Program_Assessment_Response_Question.Program_Assessment_Question_Version_Name]', members: ['Activity date for billable time'] }] }, function (metadata, cell) { cell.style = cell.style || {}; cell.style.backgroundColor = '#e6f4ea'; cell.style.borderRadius = '4px'; } ); (function () { // Same dimension you used for "Activity date for billable time" var DIM = '[Program_Assessment_Response_Question.Program_Assessment_Question_Version_Name]'; // The four column headers to color var MEMBERS = [ 'CM Assessment/Interview', 'CM Screening and Evaluation', 'Contact with Family Member', 'Contact with Member' ]; // Light blue var COLOR = '#dbeafe'; // tweak if you want a different shade function paintCell(_, cell) { cell.style = cell.style || {}; cell.style.backgroundColor = COLOR; cell.style.borderRadius = '4px'; } // 1) Color the column header (member cells on the columns axis) widget.transformPivot( { type: ['member'], axis: 'columns', columns: [{ dim: DIM, members: MEMBERS }] }, paintCell ); // 2) Color all data cells under those columns widget.transformPivot( { type: ['value'], columns: [{ dim: DIM, members: MEMBERS }] }, paintCell ); })(); /*--------------------*/ (function () { // Text shown in the top header (row-0) var TOP_LABEL = 'Program Activity Time'; // Scope to this widget only var root = (widget.$$container?.[0] || widget.$container?.[0] || widget.container || document); function centerTopHeader() { // find the row-0 header cell whose text matches TOP_LABEL var tds = root.querySelectorAll('.table-grid.table-grid--top td.table-grid__cell--row-0'); var col = null; for (var i = 0; i < tds.length; i++) { var td = tds[i]; var text = td.querySelector('.table-grid__content div')?.innerText?.trim() || ''; if (text === TOP_LABEL) { var cls = Array.prototype.slice.call(td.classList).find(function (c) { return c.indexOf('table-grid__cell--col-') === 0; }); if (cls) col = +cls.split('--col-')[1]; break; } } if (col == null) return; // center ONLY that top header cell’s content var nodes = root.querySelectorAll( '.table-grid.table-grid--top td.table-grid__cell--row-0.table-grid__cell--col-' + col + ' .table-grid__content' ); nodes.forEach ? nodes.forEach(centerEl) : Array.prototype.forEach.call(nodes, centerEl); } function centerEl(el) { el.style.setProperty('display', 'flex', 'important'); el.style.setProperty('justify-content', 'center', 'important'); el.style.setProperty('align-items', 'center', 'important'); el.style.setProperty('text-align', 'center', 'important'); } // run after the pivot paints function run() { setTimeout(centerTopHeader, 0); } widget.on && widget.on('domready', run); widget.on && widget.on('ready', run); widget.on && widget.on('refresh', run); // tiny retry in case the grid mounts a bit later (function tick(n){ if (n <= 0) return; if (!root.querySelector('.table-grid')) return void setTimeout(function(){ tick(n-1); }, 150); run(); })(30); // re-apply if the grid re-renders its header DOM var grid = root.querySelector('.sisense-pivot__multi-grid') || root; if (window.MutationObserver && grid) { var mo = new MutationObserver(function (m) { for (var i=0;i<m.length;i++) { if (m[i].addedNodes.length || m[i].removedNodes.length) { centerTopHeader(); break; } } }); mo.observe(grid, { childList: true, subtree: true }); } })(); How to target a specific cell/column to change the column in a pivot table? I have a pivot table where I am trying to turn the "Activity date for billable time" light green (can be any color) in my widget edit script, along with its corresponding value from another column, 2025-08-18, in this example. I have tried a couple of different script but nothing seems to work: (function () { // === settings === var VALS = 'Activity date for billable time'; // sub-header text to match var COLOR = '#e6f4ea'; // light green var MAX_TRIES = 40, RETRY_MS = 150; // --- tiny helpers (no backticks) --- function getRoot(w){ return (w && ((w.$$container && w.$$container[0]) || (w.$container && w.$container[0]) || w.container)) || document; } function qAll(root, sel){ return Array.prototype.slice.call(root.querySelectorAll(sel)); } // Find runtime column index by reading row-1 sub-header text function getColByRow1Label(root, vals){ var tds = qAll(root, '.table-grid.table-grid--top td.table-grid__cell--row-1'); for (var i = 0; i < tds.length; i++){ var td = tds[i]; var textEl = td.querySelector('.table-grid__content div'); var txt = (textEl && (textEl.innerText || '').trim()) || ''; if (txt === vals){ var classes = td.className.split(/\s+/); for (var c = 0; c < classes.length; c++){ if (classes[c].indexOf('table-grid__cell--col-') === 0){ return parseInt(classes[c].split('--col-')[1], 10); } } } } return null; } // Inject a CSS rule so it survives re-renders/virtualization function injectCSS(root, col){ // remove any prior rule from this script var old = root.querySelector('style[data-col-color]'); if (old && old.parentNode) old.parentNode.removeChild(old); var css = '' + '.table-grid.table-grid--top td.table-grid__cell--row-1.table-grid__cell--col-' + col + ' .table-grid__content{' + 'background-color:' + COLOR + ' !important;' + 'border-radius:4px !important;' + '}\n' + '.table-grid:not(.table-grid--top) td.table-grid__cell--col-' + col + ' .table-grid__content{' + 'background-color:' + COLOR + ' !important;' + 'border-radius:4px !important;' + '}'; var style = document.createElement('style'); style.type = 'text/css'; style.setAttribute('data-col-color', 'col-' + col); style.appendChild(document.createTextNode(css)); (root || document.body).appendChild(style); } function runOnce(w){ var root = getRoot(w); if (!root || !root.querySelector('.table-grid')) return false; // DOM not ready yet var col = getColByRow1Label(root, VALS); if (col == null) return false; injectCSS(root, col); return true; } function schedule(w){ var tries = 0; (function tick(){ if (runOnce(w)) return; if (++tries < MAX_TRIES) setTimeout(tick, RETRY_MS); })(); } // hook into widget lifecycle widget.on('domready', function(w){ schedule(w); }); widget.on('refreshed', function(w){ schedule(w); }); // try immediately too schedule(widget); })(); : (function () { var COLOR = '#e6f4ea'; // light green // 1) Color the VALUE cells for the target column member widget.transformPivot( { type: ['value'], // only data cells columns: [{ // << CHANGE THIS to the exact dim used in the Columns panel >> dim: '[Program_Assessment_Response_Question.Program_Assessment_Question_Version_Name]', // << keep this as the visible member text in your header >> members: ['Activity date for billable time'] }] }, function (_metadata, cellEl) { // Paint value cells without touching alignment cellEl.style.setProperty('background-color', COLOR, 'important'); cellEl.style.setProperty('box-shadow', 'inset 0 0 0 9999px ' + COLOR, 'important'); cellEl.style.setProperty('border-radius', '4px', 'important'); } ); // 2) (Optional) Also color the COLUMN HEADER cell for that member // If your Sisense version supports targeting column headers: widget.transformPivot( { type: ['columnHeader'], // header cells along the columns axis columns: [{ dim: '[Program_Assessment_Response_Question.Program_Assessment_Question_Version_Name]', // << same dim as above members: ['Activity date for billable time'] }] }, function (_metadata, cellEl) { // Header DOM is the TD; center style already handled elsewhere, so only background var content = cellEl.querySelector('.table-grid__content') || cellEl; content.style.setProperty('background-color', COLOR, 'important'); content.style.setProperty('border-radius', '4px', 'important'); } ); })(); DRay any suggestions or anyone from your team have an idea? SolvedCreate New Sample Data Sets with more data and more concurrent date ranges Create a new sample data sets that have a lot more data, date ranges that are current to our dates today, has more scenarios that we see in all customers cases. Like more complex formula creations, displaying a wide range of different KPI's, have a more complex data model to show how dimensions and fact tables can work. Having a sample data set with custom code, custom tables, and custom column. Having one of the tables connect to a DW to show how the connection works as well. Re: Custom Filtering to allow users to filter for specific zip codes I actually created a solution, thanks DRay Re: Can you change the prompts in the Analytics Assistant? Because the client wants to change the prompts yaellev1 How to achieve a Booking Summary by Day of the Week by Hour of the day? Hi DRay , I am trying to achieve a pivot table with a heatmap that shows the day of the week at the top and the hours on the y-axis. I currently have this so far: But as we can see that the days of the week do not sort in the order from Monday to Sunday. Is there a way to achieve a custom column value? I also want to be able to click on a column, i.e., Friday then take me to a week with the all the bookings for that week like this. Can this be achieved in Sisense? SolvedCustom Filtering to allow users to filter for specific zip codes Hi DRay and friends, I am trying to allow my users to filter for multiple different zip codes, and specific zip codes to their use cases. Right now in Sisense a user would have to search and click the ones they want, I know with custom code filtering then can give the codes they want to filter for. Is there any easier way, maybe BloX, where a user can search/filter for multiple zip codes without looking them up/without using the custom code filter option? example: { "explicit": true, "multiSelection": true, "members": [ 33825, 34420, 33834, 33525, 34432, 32134, 33843, 34690, 34691, 33852, 33810, 34638, 34639, 33549, 33559, 33558, 34652, 34470, 34471, 34472, 34473, 34474, 34475, 34476, 34479, 34480, 34481, 34482, 33556, 32179, 34683, 34684, 33576, 33870, 33872, 33875, 33584, 34488, 34491, 33604, 33605, 33610, 33612, 33613, 33614, 33617, 33618, 33619, 33624, 33625, 33637, 33647, 33603, 33607, 33609, 33615, 33626, 33634, 33635, 34689, 33592, 33873, 33543, 33545, 33544, 33540, 33541, 33542, 33823, 33827, 33830, 34714, 33523, 33837, 33896, 33897, 33838, 33839, 33841, 33844, 33847, 33855, 33849, 34759, 33850, 33851, 33853, 33859, 33898, 33801, 33803, 33805, 33809, 33811, 33812, 33813, 33815, 33854, 33860, 33856, 33868, 33867, 33877, 34787, 33880, 33881, 33884 ] } Can you change the prompts in the Analytics Assistant? Hi everyone, Are we able to change the default prompts in the Analytics Assistant pop up?
GroupsSisense Intelligence Feedback Group This group is dedicated to improving Sisense Intelligence through feedback and collaboration.5 Posts
Sisense Intelligence Feedback Group This group is dedicated to improving Sisense Intelligence through feedback and collaboration.5 Posts