Grid view update bug in InstantJChem?

User 121285d3c7

20-04-2011 17:33:49

I am using version 5.4.1.1 and the database is mysql.


I have a one-to-many between tables with delete cascade set up. When I delete a row from the Grid view of the standard parent table and switch to the standard child table, the rows are still there. If I close and reopen the Grid view for the child table, the rows are still there.


If I disconnect/reconnect  the schema or alternatively if I import a structure file into a separate structure table, then go back to the Grid view of the standard tables, the rows are (correctly) not there.


Resolution appreciated.


Thank you,


~Mark.

ChemAxon e189db4705

20-04-2011 18:44:59

The simplest solution is to use Reload data action (menu Data -> Reload data) for detail table.

We can implement automatic re-load of data when IJC guesses something can change, but this can be slow operation.

Result sets from different datatrees (the object which contain forms/gridviews) are independent in IJC. It means they keep their status including current rows. The problem here is that deleting of rows from detail table actually happens in database and IJC doesn't know about it. It's similar to when rows are deleted from database directly using e.g. some db console.

We can detect what gridviews/forms should be refreshed when rows are deleted from some table. Then it's necessary to re-run the search for all gridivews which are potentially not up-to-date. And query execution can be slow operation. Doing this automatically after each row delete can be pretty slow.

We'll try to look at it anyway. Thank you for reporting this.

Petr