We are working on the fix for this issue. The ticket I have mentioned above was for the similar issue in Gantt, we have figured out the issue there but it seems that fix does not have anything to do with Grid. We have tried to reproduce the issue in grid but cannot able to do so. Can you please help us reproduce the issue in our online example for state demo in grid: https://bryntum.com/products/grid/examples/state/.
Or maybe you can help with a small test case where we can reproduce this issue.
We are still waiting on the test case from your end to reproduce this issue. We have tried multiple hacks but couldn't able to come up with a reproduction scenario.
Please refer the comment from Dharmendra on December20, it has video recording on test case .
Test case: 1) We load the grid which also has multi select filter selected --> grid works fine with filter applied shows the values 2) Then we store the state of grid refer below code 3) In our application we have feature to navigate to different page from this grid, so we click on a row which takes us to different grid 4) Then we click back button --> at this step we are restoring back the state of grid saved at step 2 , there is a code below for the same . But some how grid doesnt load the data back of what we see at step1 . It shows empty grid.
Few points : 1) Same steps above but let's say we apply any other filter at step1 like date filter or dont apply any filter and do steps 2, 3, 4 then grid just loads fine and comes back to what we see at step1 .
let state = sessionStorage.getItem("Grid-" + this.bryntumGridName);
this.grid.state = state;
then loading data using below --> when we do this grid is showing empty result altogether for mutliselect filter only . WOrks fine when we restore with other filters applied
Yes we have checked the details posted by Dharmendra on December 20. But there were two things. First, it was not a runnable code. When we resolved the errors and compiled it to run, the issue was not reproducible. You have not provided us with the data. We used our own with a little modification. See the below:
import { Grid, StateProvider, Search, } from '../../build/grid.module.js?482861';
import shared from '../_shared/shared.module.js?482861';
StateProvider.setup('local');
const grid = new Grid({
appendTo : 'container',
stateId : 'Gridfilter',
rowHeight : 37,
features : {
search : true,
cellEdit : false,
autoHeight : false,
filterBar : {
compactMode : false
},
stripe : true,
columnReorder : true,
group : false
},
store : {
useLocaleSort : { sensitivity : 'case' },
fields : [{ name : 'madisonrecommendation' }],
data : [
{ id : 1, name : 'Don A Taylor', age : 30, city : 'Moscow', food : 'Salad', color : 'Black', madisonrecommendation : 'Key Contact - All' },
{ id : 2, name : 'John B Adams', age : 65, city : 'Paris', food : 'Bolognese', color : 'Orange' },
{ id : 3, name : 'John Doe', age : 40, city : 'London', food : 'Fish and Chips', color : 'Blue' },
{ id : 4, name : 'Maria Garcia', age : 28, city : 'Madrid', food : 'Paella', color : 'Green', madisonrecommendation : 'Key Contact - All' },
{ id : 5, name : 'Li Wei', age : 35, city : 'Beijing', food : 'Dumplings', color : 'Yellow' },
{ id : 6, name : 'Sara Johnson', age : 32, city : 'Sydney', food : 'Sushi', color : 'Purple', madisonrecommendation : 'Key Contact - All' },
{ id : 7, name : 'Lucas Brown', age : 22, city : 'Toronto', food : 'Poutine', color : 'Orange' },
{ id : 8, name : 'Emma Wilson', age : 27, city : 'Paris', food : 'Croissant', color : 'Pink' },
{ id : 9, name : 'Ivan Petrov', age : 45, city : 'St. Petersburg', food : 'Borscht', color : 'Grey' },
{ id : 10, name : 'Zhang Ming', age : 50, city : 'Shanghai', food : 'Hot Pot', color : 'Purple' },
{ id : 11, name : 'Sophia Martinez', age : 20, city : 'Mexico City', food : 'Tacos', color : 'Crimson' },
{ id : 12, name : 'Noah Smith', age : 55, city : 'Cape Town', food : 'Biltong', color : 'Turquoise', madisonrecommendation : 'Key Contact - All' },
{ id : 13, name : 'Isabella Jones', age : 33, city : 'Rio de Janeiro', food : 'Feijoada', color : 'Magenta' },
{ id : 14, name : 'Ethan Taylor', age : 29, city : 'Chicago', food : 'Deep-Dish Pizza', color : 'Cyan' },
{ id : 15, name : 'Olivia Brown', age : 37, city : 'Berlin', food : 'Schnitzel', color : 'Maroon' },
{ id : 16, name : 'Mia Wilson', age : 26, city : 'Rome', food : 'Pasta', color : 'Olive' },
{ id : 17, name : 'Jacob Miller', age : 60, city : 'Amsterdam', food : 'Stroopwafel', color : 'Lime' },
{ id : 18, name : 'Chloe Davis', age : 23, city : 'Los Angeles', food : 'Burger', color : 'Teal' },
{ id : 19, name : 'Aiden Martinez', age : 48, city : 'Buenos Aires', food : 'Asado', color : 'Violet' },
{ id : 20, name : 'Liam Lee', age : 38, city : 'Seoul', food : 'Kimchi', color : 'Indigo' },
{ id : 21, name : 'Sophie Kim', age : 21, city : 'Tokyo', food : 'Ramen', color : 'Pink' },
{ id : 22, name : 'Alexander Nguyen', age : 41, city : 'Hanoi', food : 'Pho', color : 'Coral' },
{ id : 23, name : 'Ella Patel', age : 19, city : 'Mumbai', food : 'Curry', color : 'Amber' },
{ id : 24, name : 'James O Connor', age : 34, city : 'Dublin', food : 'Irish Stew', color : 'Green' },
{ id : 25, name : 'Isabelle Chen', age : 31, city : 'Hong Kong', food : 'Dim Sum', color : 'Brown' }
]
},
columns : [
{ text : 'name', field : 'name', width : 400 },
{
text : 'Madison Recommendation',
field : 'madisonrecommendation',
filterable : {
filterField : {
items : [
'Key Contact - All',
'Key Contact - New',
'Key Contact - Upgraded',
'Opportunity - All',
'Opportunity - New',
'Opportunity - Downgraded'
],
multiSelect : true,
type : 'combo'
}
}
}]
});