So I recently had a nice hitch in the SharePoint app I made for my client. We have a Document Library which is supposed to contain PDFs, converted from drawing files made in other programs. The test system has been deployed for public testing for his clients. This is real site usage, by the way, so real corporate data is being transfered. The site had been tested to be stable on the code side of things, but naturally I failed to take into account user-based errors. The testers uploaded a file in its normal file format instead of converting it to PDF first. And it's already passed through the entire first leg of the approval process before anyone caught this. I plan to implement this question's answer in the future to prevent this from happening again, but now I need to fix this current situation.
Because this is a real field test, I cannot simply upload the new PDF file and run it through the process, I need to maintain the field data from the original file, in all of its versions as well. Is there a way I can somehow upload the PDF as a new version of the original file?