Sisense
Raising the Panel Item Limit on a Pivot Table
This guide explains a widget script that raises the default 20-item limit on Pivot Table panels, including a known compatibility issue on newer Sisense versions and the recommended fix.
Overview
Pivot Table widgets enforce a default limit of 20 items per panel (Rows, Columns, Values, or Filters). Once a panel reaches this limit, the Add Panel button is hidden, preventing additional dimensions, measures, or filters from being added, even if the use case requires more.
This article describes a widget script that raises this limit, and documents a known issue where the original version of the script no longer works on some newer Sisense releases, along with the recommended replacement.
Use Cases
Apply this script when:
- A Pivot Table needs more than 20 items in a single panel (for example, a wide table with many measures, or a row hierarchy with many levels)
- Users report that the Add Panel button has disappeared on a panel that still requires additional fields
Prerequisites
- Edit access to the widget script (Widget Options menu > Edit Script)
- A Pivot Table widget
- Awareness of your current Sisense version, since the correct script depends on it (see Known Issue and Version Compatibility below)
Script
widget.manifest.data.panels.forEach(function(p) {
p.metadata.maxitems = 100; // replace with the number you need
})How It Works
Step | Description |
Trigger | This script runs immediately, iterating over every panel defined in the widget's manifest. |
Apply the new limit | For each panel ( p), p.metadata.maxitems is set to the specified value, raising the maximum number of items that panel will accept before hiding the Add Panel button. |
Known Issue and Version Compatibility
This script accesses panel limits through widget.manifest.data.panels. On some newer Sisense releases (observed starting around version L2026.2.2-c), this path no longer reliably applies the limit.
If this script is currently working as expected in your environment, no action is required. Widgets already using it can be left unchanged.
If the Add Panel button is disappearing even with this script in place, use the following replacement instead:
widget.on('initialized', function() {
widget.metadata.panels.forEach(function(p) {
p.$$manifest.metadata.maxitems = 100; // replace with the number you need
});
});The replacement script differs in two ways:
- It waits for the widget's
initializedevent before accessing panel data, rather than running immediately.
- It reads and writes the limit through
p.$$manifest.metadatarather thanwidget.manifest.data.panels.
Both versions produce the same result when working correctly — raising the per-panel item limit so the Add Panel button remains available past the default of 20 items.
Alternative Approach
For pivot-specific use cases where the limit needs to be applied automatically across many widgets, or configured differently per user group, a dedicated plugin (e.g., a panel-limit plugin) is a more scalable alternative to maintaining this script on individual widgets. Consider this option if the limit needs to be managed centrally rather than per widget.
Limitations and Considerations
- Setting a very high
maxitemsvalue and then adding a large number of fields to a panel can increase widget load times.
- This script affects all panels on the widget equally. To set different limits per panel type, modify the script to check
p.type(or equivalent panel identifier) before applyingmaxitems.
- Re-verify this script's behavior after any Sisense version upgrade, since the underlying manifest structure it depends on has changed before and may change again.
