MobileSheets Forums

Full Version: How to move PDFs out of folders?
You're currently viewing a stripped down version of our content. View the full version with proper formatting.
Looking at my tablet's MSP storage, of my total of 3834 PDFs, I see that about 3677 PDFs are in folders, the rest are not. Is there a way to move the folder-ized files out, to be with all the other files, without breaking the database?

MSP manages my files. The folder dates indicate that all the folders were created the day I installed MSP and moved all PDFs into it from MSP beta. The non-folder PDFs are every song PDF added since then. It's clear the folders were a one-day/one-time thing, last year. 

This bugs me. I guess it works, but it seems to not be desirable for MSP (and my sanity) to have some songs stored one way, some another way. 

Assuming I am property interpreting what I see, my guess is that MSP imported everything from MSP beta, but was set to use folders (which I did not use in beta), THEN I changed the setting to not use folders, and ever since I have been adding songs that do not get put in folders. Odd that MSP would be happy with this mix, but it seems to be. 

Stuff I could try that seem unwise:
  • I can use a file explorer to move all the folder-ized PDFs up a level into the main MSP storage folder, then delete the empty folders. But an experiment shows the database does not notice, so the file goes missing. (Long ago I wished for a maintenance option to force MSP to re-read all the files and update the database for situations like this, but perhaps I'm the only user who likes to manage my files at the storage level. For instance, the reason I discovered this, I'm trying to compare PDF date-times on MSP with another set on a PC, to see which are newer, missing, etc. Hard to do for the many files stashed in individual folders.)
  • I could move the files, then hack the database to update all the affected records. But probably not what I should do. 
  • I could remove all the affected songs, then reload them. But this would lose whatever I might have done that is only in MSP database for those songs (annotations, lists, etc). And at the MSP level I don't know a way to identify which songs are in folder. (Fortunately, I can see the folders via an Android file explorer.)

Is there a not-so-bad way to eliminate the existing folders, but retain the songs, essentially updating their database entries?

The reason this is important is, I have a very large library (thousands and thousands of songs and growing) which I manage on a PC via folders. Then I put on the tablet only some of the PDFs/songs. But I'm routinely adding, removing, and updating these. Companion is cool but doesn't suit my method of managing so many files. (It's one song per PDF, each carefully created, cropped, reduced in size, tagged, so I don't need or want MSP to do any of that.)

Any suggestions?
I definitely do not think you should manually move the files unless you are a wizard with SQLite and don't mind updating the database yourself. One way to fix this that should work is to back up your library the way it is currently, then go to Settings->Clear Library. Make sure "Use Subdirectory Per Song" is unchecked in the storage settings, and then restore the backup file and let it restore to the default storage location. I believe this should restore all of the files into one directory (hopefully you don't have any naming conflicts).

Mike, terrific suggestion, I'll try it. Do I do the Backup and Restore in Companion, or on the Tablet?

Also, if I inadvertently try to restore a file of the same name that exists, what happens?

If I try to add (drag in) a file of the same name, what happens?

I'm very careful about naming, have convention that assures no conflicts, unless I'm intentionally updating (better scan, typically).
You can backup and restore from either location - the end result should be the same. If there are file name conflicts, it will append the database id to the end of the filename to make it unique. If you drag in a file of the same name, you will be prompted to make a decision on how to handle the file name conflict (overwrite, rename, etc). If you don't care about filenames, you can enable the "Add Unique Id to Filenames" setting which will ensure every file is uniquely named.