Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

Preview Data Import #27

Closed
1 of 3 tasks
mnelson4 opened this issue Apr 9, 2019 · 7 comments
Closed
1 of 3 tasks

Preview Data Import #27

mnelson4 opened this issue Apr 9, 2019 · 7 comments

Comments

@mnelson4
Copy link

mnelson4 commented Apr 9, 2019

Issue Overview

After you have set everything up for the import, it was suggested users might like a "data preview". I'm trying to define that and establish its priority.
A data preview could be:

  1. Just reiterate which CSV columns will map to which EE data (basically, regurgitating what the user specified in the "mapping" step.)
  2. Conversely, it could show what EE data relates to which CSV columns (the inverse of the mapping step; it might be helpful for users to consider the data from the other direction).
  3. Take a few sample rows from the CSV file, and show what EE objects would get created from that.
  4. Actually import a couple rows and let the user explore them but then facilitate undoing importing those sample rows (by tracking what was imported)

@joshfeck should this be part of the MVP, and if so, what UX would you like?

Bug report or feature request?

  • Bug
  • Feature
  • Neither

Expected Behaviour

Before importing all the data from a CSV file, it would be nice for users to get a preview of what's going to happen.

Current Behaviour

Users set up the import, and we run through it all; they only see how the data got imported AFTER we've importing everything.

@joshfeck
Copy link
Contributor

joshfeck commented Apr 9, 2019

I kind of think the MVP might need at least a way to undo, otherwise it's going to be impossible to fix mistakes if payments are involved. An undo wouldn't be as necessary if EE had a feature for cascading deletes of transactions, line items, payments, attendees, and registrations.

@mnelson4
Copy link
Author

mnelson4 commented Apr 9, 2019

I think it would be pretty easy to have a “delete all imported data” (ie, from every import ever).
It may be a little trickier to do a “revert import of file x at time y” (or maybe we could ask users to label each time they import; like “attendees from September 2018” etc).
What kind of UX would you think best?
Also, so having the “undo” button will mean we don’t need a preview right?
Also: would you like I instead just work on cascading deletions @joshfeck?

@joshfeck
Copy link
Contributor

We don't need a preview if there's an Undo button.

Can you put together estimates for making an undo button compared with cascading deletions for the related entities? In the case of deleting registrations (either due to a mistake with importing or just needing to delete all registrations for an event) the contacts, registrations, line items, transactions, answers, and payments would all need to be deleted.

@mnelson4
Copy link
Author

Both have a lot of uncertainty for me; but general cascading deletion will require more coordination and work since it will be added to core.

A rough guess is that the "undo button" will take 2-4 days (we'll track importer data, then delete the thinggs we importer, it may be 23 days longer if we wanted this to be a batch job so it won't time out).

Whereas cascading deletion of registrations will be 1-2 weeks because it will probably need more UI, testing, and collaboration with the rest of the team (1-2 weeks more if we want to build the infrastructure for all permanent deletions.)

for my reference: eventespresso/event-espresso-core#883

@mnelson4
Copy link
Author

Oh, and FYI the next item on my board (actually, the last item in "Next" pipeline) is GDPR compliance: eventespresso/event-espresso-core#342
I kinda think the priority of this has dropped since the GDPR hype died down. But cascading deletion was also very important for GDPR. So IMO while it may blow out of proportion, it's due to be done.

@joshfeck
Copy link
Contributor

How about we'll drop the idea of an Undo button for now, and instead add a Verify step, similar to Attendee Mover UI.

Screen Shot 2019-04-10 at 8 28 32 PM

The table for the Importer Verify step could have 4 columns:
The Event Espresso data field name
Their mapped data field name or number (if no name)
then two columns of sample data (first two attendees to be imported)

@joshfeck joshfeck removed their assignment Apr 11, 2019
@mnelson4
Copy link
Author

hmmm ya lemme see what I can drum up...

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Projects
None yet
Development

No branches or pull requests

3 participants