Quoting GSyren:
Quote:
...
There are a few things that are not clear to me.
- What the external BulkEdit would do that your plugin doesn't do.
- How I could "seed the internal database"?
- What BulkEdit does, exactly. Ok, I think I understand the basic idea, but I have never needed to use it, so there are most likely features that I would have study up on.
But you have planted the idea. And those are usually like weed - almost impossible to get rid of.
Well this is a conversation that I consider to be well worth it. So I don't mind investing the time. I have hoped for someone to come along who had the skills and desire to take a "BulkEdit" type of product to another level, or approach from a different persepctive, perhaps with some cool new features. BulkEdit, after LoadDVD is my most popular plugin. I have invested masses of time on it. It does things that I was explicitly told "you will not be able to do that," so it also a source of great pride. Some of the effort that I originally put into it, is no longer needed, because Ken listened and added things to the main program that, in the past, you could only do with BulkEdit (e.g. DVD Copy / Paste).
So, here is a list, from memory, of BulkEdit functions. I will try to cull out the ones that would not make sense in an external tool:
Main Editing Functions (that I can remember)- Load collections of profile data in a spreadsheet like format
- Load by category, flagged, XML, CSV
- Edit existing profile data, or create new profiles from XML and CSV (people have recovered entire databases this way. Especially before there was restore from Online)
- Automatic creation of unique manual profiles when profile ID is missing in imported data
- Automatic Locality guessing when Locality is missing in imported data
- Import specific non-profiler formats: CollectorZ, DVD Spot, (maybe others I forgot)
- Customizable CSV import. Built-in automatic recognition of legacy DVDP "2.4" format and the CSV Export plugin formats
- Select which columns of data get displayed
- Rearrange column headings either in the selection list or output display
- Sort entire sheet by clicking column header
- Ability to force a text field that includes numbers to sort correctly by prefix padding
- Drop downs created for all multi-value fields, even if not available in the API. BE crawls through the database and builds data source arrays from the set of values in the database. Less of that is need now, due to DVDP enhancements, so I am not sure how much "crawling" is still needed. For example, there used to be no way for a plugin to get a list of all the users or retailers internally. Now there is.
- Simple Find / Replace within a column
- Regex find / replace within a column
- Row by row, prefix or append text to the contents of a text field
- Row by row, prefix or append the contents of one column to another
- VB / C# script execution. Results can update data in place, or be placed in work columns
- Row by row, column copy (e.g. Copy Original Title into Sort Title)
- Change simulation to test the impact of changes before making actual database updates
- Change and error log to evaluate why some change didn't work or allow for manual undo
- Save Validated changes makes real-time updates to the database from the spreadsheet
- Export XML
- Bulk load "personal data" - stuff that does not download from invelos, and update an exiting database, using the profile ID as a key. You could do mass updates of notes, Location, Slot, Links etc. that way.
- "ScrapeGoat" feature. Using the forum handle of a user, access the user's public online collection and selectively add profiles to your own collection. Not personal data of course. Just the profile IDs are scraped from the web page, and then you can selectively download profiles from the Invelos Online.
- QuickSearch feature (Alt-F9) searches the entire database - every field in a cached XML for a specific string. Ability to include / exclude cast / crew. Ability to refresh the XML cache before running the search. Profiles where the string is found are flagged. In addition to all fields, Collection Number, Purchase place and Purchase Price can be selected for some reason. Maybe in the past you couldn't filter for them. I don't remember.
Functions that are best done in a plugin- Real time flag and filter functions (example: easy "flag in-between")
- Real time database update
- Create manual, Disc ID, Child, Custom profile IDs (remember, Ken has added to the main program since BE was originally created. I haven't tried to systematically take stuff out.)
- Added several functions under Collection
- Flag In-between
- Flag Box Set
- Flag Gifts
- Flag Watched
- Flagged Add Disc
- Flagged Clone to Manual
- Flagged Clone to Disc ID
- Flagged Clone Children from DiscIDs
- Flagged Delete All Discs
- Flagged Clear Collection#
- Flagged Flag Child Profiles
- Flagged Flag Parents
That's most if it. I have always wondered what some other developer might do with the concept, or whether it would be useful to have a standalone version that would read in a collection from XML, create its own internal database, do some bulk editing, then spit out a revised XML file to create a new database or update an existing one.
Oh, BIG CAVEAT: Bulkedit has always explicitly and intentionally avoided attempting to edit CAST and CREW. Import of cast and crew is supported, but all editing functions are relegated to much smarter people!