Delphi 10.4.2 Sydney
Web Core 220.127.116.11 (full)
See attached project WebCoreBugDBGrid.zip (379.3 KB)
Do you have any plans to enable grid embeded editor for datetime values (as in both at the same time)?
Change value programmatically after insert
You can click on button "Problem 1" or use navigator to trigger insert, then we edit any dataset field programmatically. The result is displayed in image.
As the operation is insert (not append) we would expect record to be inserted in-place (before) current record. Changing current record field value after that would then probably not cause any issues as the active record of grid and dataset would be the same.
Using inplace editors on non active record.
For example when we edit checkbox embeded editor on a different record than current record. The grid does not change active record. As a result we are editing wrong record.
Increasing delay in processing user/gui events
This problem is a bit harder to explain. It requires that you first trigger refresh multiple times (30 times). After that a single click on any control will take about 1s or more. Point is the whole web application is slowed down every time grid rebuilds its content.
It helps a bit if we detach the grid datasource before re-opening the dataset. The application will slow down regardless if we click refresh enough times. You will notice there is an increasing delay in how user events are processed (such as clicking on a button). The execution is not delayed just the triggering. The slowdown persists event if you destroy the form. Only F5 helps.
Triggering of Dataset.OnCalcFields event
In relation to opening a dataset connected to grid. The DatasetOnCalcFields is triggered quite a lot. Can this be reduced in any way (workaround in code maybe)? If it triggers once it would be enough because it is linked to dataset not fields.