I modified my sample above. Please see the revised sample. I added a right-click action which keeps the value of Age increasing by one. You can see that the totals also get changed.
Now the question is why this is not working for you.
You are making changes to DBF directly and xbrowse does not know that you changed the data. Always the best way is the modify data though xbrowse. When you are using xbrowse, you need not write reclocks, recunlocks, etc. XBrowse takes care of everything automatically.
Just use oBrw:oCol:VarPut( <newvalue> )
If the <newvalue> is different from the existing value, xbrowse writes the value to the dbf, takes care of all locking issues and also makes necessary modifications to the totals. If indexed column is modified, xbrowse refreshes the data and otherwise, it refreshes the row only.
Instead of doing yourself, just tell xbrowse what to do and it does it properly and completely.