Data not saved when using listen target

We maintain an application that contains a set of screens where there is a data grid with below a data view. This data view listens to the data grid. User select first record and make changes (update record) in the dataview. User goes to second record in datagrid and changes (update record) the data in the dataview. After this the user press save. Results on screen looks ok, because it shows the correct data. But when screen is closed and reopened only the second record is changed/updated in the database. The changes of first record got lost. How to solve this? - Prevent user needs first press save/cancel when move to second record - Save button will save all outstanding data - Maybe an indication on datagrid that a record is not yet saved? All three options could be a solutions, but how to implement. I have this problem in 3.3.3, but also tested it in 4.3.0.
1 answers

From a usability point of view I can understand that you make your listed grid editable. But then the user has to realize that when editing there they should always use the save button. He is reminded that the object is not saved because the value in the grid will be different from the dataview. That should remind him that he forgot to press the save button.

I would make the listen grid non editable and use the popup for edits. This way you are sure that the user presses the save button.