I'd like to update the Export user interface to allow the selection of multiple forms, each one with a separate export directory, export type, private key, etc.
This is an important feature because some implementers (hi @noel) have campaigns that need the flexibility to put different exports in different folders (just like the CLI supports) with different permissions, but they need to do it without requiring the complexities of writing a batch/shell script.
The changes I'm proposing are:
Update Export interface to mirror the Pull/Push interface.
Allow users to select some or all forms and then export the selection with a single button press (similar to Pull/Push)
Interface will have a list of Forms to Export with column headers for Selected, Form Name, and Configure
Interface will have other useful column headers (e.g., Last Exported Date, Details) from community feedback
Configure will allow user to select export directory, private key, and start/end date (similar to the current Export tab) for the specific form
Configure will allow user to enable pull before exporting and tries to use persisted pull credentials
Update application so all parameters are persisted between applications launches
Sensitive parameters (e.g., passwords) will have a checkbox to save
I'll do all the things to get it to ship in Briefcase, but I'd love feedback from Briefcase users if what I'm proposing sounds reasonable.
I think a global default for export configuration would be nice to have. And then you can select any number of forms and then allow specific export configuration for each form which will override the default export configuration.
Hi, just to say that I agree with the suggestion as it would be a logical part of any system with multiple export folders. If the list of forms is long then there should be a default folder. This way errors are not produced whenever one of the forms in the list doesn't have a destination. Maybe this would sit best beside the storage location on the settings tab.
You can check out the code and run Briefcase from the branch "multiple_export" on my fork. It's a working, rough on the edges version and next I want to focus on edge-case-proofing everything and working more on the design.