RDK is not as powerful as I thought

I have not tried to do what you described, but it seems like IDatabaseNotifyCallback:: OnRecordChanged should work for you.  You could have that callback check to see if it has a file attachment that does not use your location/naming convention.  Then you could move/rename the PDF from within the OnRecordChanged callback.