For that u need to catch the navigation event and have a global variable to store the newRangeStart value in it and use VO.setRangeStart(globalVariableName);
String value = pageContext.getParameter(VALUE_PARAM);
if (value != null)
int val = Integer.parseInt(value);
int newRangeStart = val; //Record Number of Current Navigation
Please have the code in the AM itself.
Before you navigate to some other page (or any other type of Page refresh), you get the absolute index of the first row in the rowset range. For this purpose, you can try vo.getRangeStart(). This would return an integer.
Now post refresh action, you can do a vo.setRangeStart(int) to the same integer value retrieved earlier. If you are showing 20 records at a time, you can also do a vo.setRangeSize(20).
Please try this and let us know your observations.