refresh a smartViewer and smartBrowser without opening the q

Posted by pauldownie on 06-Apr-2011 12:41

I have a SDO that includes two tables. When I create a new record in the main table, I create a new record in the joined table. The joined table is created through 4GL code in the endTransactionValidate. So far that part seems to be working fine. However, the values in the fields from this joined table are not being displayed in the viewer after new record has been created. It seems I have to reopen and reposition the query to get these values to display. If there are many records in the table this could take a fairly long time. I am wondering whether there is another way to refresh the values of the associated record in both the viewer and the browser or whether I should be taking a different approach altogether.

thanks,

Paul

v. 9.1e Win XP

All Replies

Posted by Håvard Danielsen on 06-Apr-2011 17:35

SDOs in 9.1E likely do not pass changes from EndTransactionValidate back to the client. This was a known issue that was fixed many many releases ago. The fix was done by adding a call to a refreshBuffer procedure just before the transaction ends. I assume refreshBuffer does not exist in 9.1E either, but it is basically just a query on a buffer created on the RowObjUpd table that loops through all records (except the deleted ones...) and calls RefetchDbRow for each of them.

This thread is closed