09-21-2009 11:24 AM
A customer (SLX 7.5.1 LAN) has a small number of accounts with huge numbers (several thousand) of asset records. They complained that the Account Asset records tab was too slow to work with on these accounts, so I turned on VSSC on the Assets datagrid.
Now the Assets datagrid is no longer functioning like it did before. Even on Acconts with a more typical number of records (maybe two dozen), columns that were editable are no longer editable. This itself not a showstopper, but when you click on a record, the selection goes to different record from the one you clicked on. It can take quite a few attempts and false starts before successfully opening the edit asset form on the Asset record you want to edit.
Has anyone see this?
Solved! Go to Solution.
09-22-2009 09:09 AM
It's not always possible to just check off they VSSC property. You should run the Slx Profiler to see what's happening. Also refer to the VSSC documentation for additional info.
The original problem sound like an index issue (and maybe a BIND problem as well). Run Slx Profiler to see.
09-22-2009 12:38 PM
The documentation does indeed say that VSSC returns a read-only dataset, which makes the grid read-only even if it's configured otherwise. This isn't a big deal, because they can open an Add/Edit Form (provided they can select the correct record). This also causes the right-click Delete option to throw an error, so I'd have to script a different way to allow users to delete a record.
All you can see in Profiler is that instead of loading all of the records matching the account ID, it uses an IN with recordIDs to load up to 100 records. If there are more than 9 records, and you click a record more than 9 records from the top or bottom, the grid will scroll and select a record other than the one you clicked. It can take several rounds of "Click-a-Mole" to fuinally select the record you want.
Clicking around on the grid produces nothing in SLX Profiler. If the there are more than 100 records matching the current bindID, then scrolling past the initial 100 will produce a query for additional records.
09-22-2009 01:58 PM
Sounds like VSSC is doing just what it's supposed to do - it is a read-only operation.
One thing that I'm not sure you are aware of is.. if you do NOT select VSSC and sorted is not selected then the entire recordset is not held in memory. If you do select sorted, you will see a complete "load" of the recordset and it will take noticeable time to load the grid.
09-22-2009 02:44 PM
The read-only is not a big issue. Users can edit from the Add/Edit view and I've already scripted a delete record function that bypasses the VSSC recordset.
The issue was that a few of their account records have thousands of asset records each. On the account I was testing on, the Assets Tab was took 45 seconds to appear. Users looking for a specific record probably sorted by different columns, which I'm sure took more time. VSSC fixes that and sorts are fast as long as the column you're sorting on is indexed.
My problem was that when there are more than a dozen records, you'd click a record and the scroll would shift and select the wrong record. I narrowed this down to customizations the customer had done to the query, deleted some OOTB columns and adding others. Apparently the Quantity column has a required index because once I added it back in the grid selection worked properly.