I said "think about it"! A sequential dataset is just that - a long series of bytes one after the other. Your program interprets those bytes. How is it to interpret whatever is left after deleting the record? The read routines only know that each consecutive n bytes is a record and returns them to the program. If you want to have records in the middle of the fdataset that you need to make obsolete then you have to have way of identifying those records when the read routines present them to your program. In any event, you should always create a new dataset just in case something goes wrong during processing leaving you with a corrupt file.
The problem I have is that people can explain things quickly but I can only comprehend slowly.