Lots of problems using WebGrid, Clientbinding, Batch Update and Grouping.

38 replies. Last post: March 2, 2011 11:18 PM by Huy
Tags :
  • New Discussion
  • New Question
  • New Product Feedback
Scott FrenchMember

Hello,

We recently upgraded to WG7 and are in the process of upgrading one of our main grids to use Client Side Binding and Batch updates. One of my colleagues did the actual conversion so I don't know all of the specifics but I have been tasked with testing it. In many cases it functions correctly although there are a lot of issues to be dealt with. This post is largely focused on issues related to the grid being grouped. I have taken the WG7 sample for client side binding/batch updates and updated it to more closely match our setup. We are using "OnInitializeDatasource" to do our data-binding and have a lot of other settings that weren't in line with the original sample. I was able to reproduce a lot of the behavior by making this update. I could really use some guidance on dealing with these issues as there are a lot of them. These are only the ones I was able to reproduce in your sample today. There are many others related to deleting and saving where the page freezes or takes forever to complete an update. We ran into similar freezing issue when trying to group and ungroup columns. Those issues will have to be dealt with later. Please see the attached aspx/vb files (they can be placed in the WG7 sample folder) as well as the list below which provides the actual issues and steps to reproduce them.

FYI, we are using Web Grid dll version 7.0.7200.306. Nothing new is available when I go to the Update Manager so I am assuming this is the latest version.

Thanks in advance for any assistance in solving these problems!

 

1.       Group Aggregate Row Counts are sometimes (0). The Row Counts as well as Group Sums change and/or disappear depending on the sort direction of the Group. Sort ASC and all Group Sums are missing and all Group Row Counts are (0). Sort DESC and the Sums will be displayed for some groups. These same Groups will have Row Counts while the others remain (0). It looks to me that if 100% of the group’s child records are not loaded in the initial 200 rows (our specified number of rows to load upon opening the grid) then the Group’s Row Count and Sums will not be calculated or displayed.
Steps to replicate

a.       Open the sample file provided.

b.      Group by ‘Component’ column.

c.       The top few groups will have Row Counts but most will be (0).

2.       Many times after saving or sorting when the grid is grouped most or all of the records will not be returned. Sometimes a partial list is returned, sometimes nothing. It seems to be related to the issue above. If 100% of the rows are loaded for the group that group will be returned. Otherwise after a save or sort the group will disappear.
Steps to replicate

a.       Open the sample file provided.

b.      Group by ‘Component’ column

c.       Sort by any column.

d.      Any Group with a Row Count of (0) will disappear. Refresh the grid and they will reappear.

3.       Here is another issue that occurs when the grid is grouped. If we make a change to a record, then sort a column, the change will remain in the pending area at the bottom of the grid but the row itself will not show the change. The original value for that cell will return and the highlight color for the row will go away. After accepting all changes the new value shows up in the row.
Steps to replicate

a.       Open the sample file provided.

b.      Group by ‘Component’ column

c.       Open a Group that has a row count above 0.

d.      Make a change to the value in the “Changed In Last” column for at least one row.

e.      Key off the row, the value changes, the row is highlighted and the “Pending Changes” area at the bottom the grid should reflect the changes made.

f.        Now sort the grid by the “Changed In Last” column.

g.       The changed row will no longer be highlighted and the edited cell will return to its original value, but the “Pending Changes” area will still reflect the changes that have been made.

h.      Accept all changes and the original values will be replaced with the new ones.

4.       I haven’t been able to replicate this issue in the sample yet but I wanted to pass it along in case it is a known issue and you have a solution. Opening a Group (clicking the plus sign) that has a lot of records (a few hundred) causes an error. “Stop running this script? A script on this page is causing Internet Explorer to run slowly. If it continues to run, your computer might become unresponsive.” This occurs even after we pulled all our custom code out of client side events OnSynchronizeCell and OnInitializeRow. Is there anything we can do to speed this up? It probably has to do with the large amount of data contained in each row being retrieved.

5.       We are running into a lot of other issues with saving and deleting taking a really long time. Any feedback on converting over a large/complicated page (lots of server and client side custom code) from standard server side data-binding using “OnInitializeDataSource” to ClientSideBinding and SmartBatchUpdate would be much appreciated. We will likely follow up with more questions soon.

All times are GMT -5. The time now is 8:55 AM.
Previous Next