I'm trying to customize recents section functionality for our application wherein all work objects should populate in the recents section once they are created or accessed from worklist or workbasket. For this purpose, created a repeat grid with source being a editable data page on thread scope. Data Source for the data page is an activity which fetches the required work object data from pyWorkPage. The refresh condition for the recents grid is set to whenever the pxUpdateDateTime on data page changes.
So, every time a work object is created or accessed, the data page is getting recreated and the existing data is being overridden. Even when the data page is existing on the thread, it is still erasing the existing data page and recreating it. Tried using a clipboard page instead of data page but the same result. Page is not persisting even though there is no Page-Remove method to remove any of these pages.
Also, tried doing a Obj-Browse over a temporary clipboard page of class System-User-Recents and copying the fetched data onto the required data page (replacement to fetching data from pyWorkPage). Yet, the pages aren't persisting.
Any suggestions on why such peculiar behavior exists for clipboard/data pages wherein they are getting removed even without removing them explicitly.
Because you are using Thread Level DataPage and trying to update it on context of certain thread(current opened Work Object) you are creating one Data Page for each thread and hence it may appear that Data Page is getting removed.
If I have understood your scenario correctly Node Level Data Page should work for you.