Removing Students/Users

What is (or are, if there is more than one way) the best and safest way to remove a Student? (by safest I’m thinking in trying to avoid having to mess with the database tables directly)

By that I mean, that the student no longer shows in the student list or in any other part of the system.

Scenario 1: The student was enrolled by mistake, or cancelled the enrollment before starting attending. So I need to remove all data related to that student including the users created in the application process, in order not to leave gargabe data in the database.

Scenario 2: The student is not attending any more to the school. So, I need the student to stop showing as an active student system wide, but I don’t want to lose the student’s history.
And also, if the student returns to the school some time later, to be able to activate the account whithout having to input all the data again.
This is important for me for two reasons; first to avoid having to do all the enrollment process again, and second and most important, I use a certain standard to name the users so all the usernames follow the same pattern, and if I have to enroll the student again, when it asks for the username I will have to break the pattern, because otherwise I will have a repeated username (that probably is not even allowed by the system)

Thank you very much!!
Warm regards

Hi Ricardo, good question.

For Scenario 1, the best bet is to unenroll the students from any classes (if any), then remove their student enrolment (if any), finally deleting any parents, family, and then the user itself. These deletion options should have enough cascade-deletes in them that will clean up any linked data.

For Scenario 2, just set the student to Left. No data will be lost, and they can be re-activated as needed.

Hope this helps!