Hi, Rollbase version:126.96.36.199
We've just added to our application a grid control to enable a bulk edit on multiple records. But we are having a performance issue on Save because it seems that for each record in the list from the grid control a read/update operation is called. Is this the normal behaviour? We were expecting the Save to do just an Update call with the entire dataset.
We've tried this with both normal grid control and the revised one.
Yes, this is the expected behavior. GridControl is a complex construct that allows manipulating data in related records with ease, but the simplicity ends there. A related record is also a first class record in the system and has workflows, triggers associated with it that need to be processed.
In a save request, one could have removed records, added new ones, modified existing ones, attach, detach. These are not trivial operations and hence cannot be achieved in a single update call to the database.
If you are looking at modifying select fields on a related dataset, consider using Mass Update action after selecting all/some related records.
If you can shed light on your usecase, we can possibly guide on what feature would be best suited for the job.
Basically we have multiple records related to a Customer object. The object has only logical fields and we would like the user to be able to do a view/edit on all records at the same time ( But each field can have different values). Also if for example the first column is selected all other should be checked as well. Only operations needed are Read and Update.
If we can't do this with what's available in Rollbase, we were thinking of manually retrieving the data and using a kendo grid. Grid control is working ok, but we have some performance issues because for all the 15 records we have for example a different call is made.
[mention:53b5aec685bc483b8afb47473a9dbfd4:e9ed411860ed4f2ba0265705b8793d05] I'm just wondering, on the object that you use in your Grid control, do you have lots of After Create or After Update triggers? 15 records is really low to slow down a grid control unless there are a lot of things happening under the hood.
Another possibility would be that your parent object (Customer) would have long processing triggers as well.
Another possibility is that you have a trigger loop between your two objects.
I can't really say what your issue is for sure but I can say that 15 records should be very fast to save if there are no triggers in both objects OR if the triggers are properly optimized.
Maybe your performance issue(s) is/are bought about un-optimized code in your triggers?
Anyway, hope this helps