Hi,
One more option will be by introducing a staging DSO (say DSO1) will have all records (in your example 3) and then final DSO (say DSO2).
Put the routine (end routine) between these 2 DSO and fetch the final record (ie single required record) in final DSO.
I used this method for Purchasing history data where lots of material in/out happens and need to get the final status/qty of material at end of the day, and stored in final dso,
Thank-You.
Regards,
VB