** Sorry for the long prompt. I am trying to give as much information ahead-of-time as possible. The actual question that I have is in bold-green-italicized text in the fourth-to-last paragraph (not including the comment that I made at the end). **
I am my institution's Canvas system administrator and I work in our Department of Online Learning. We started out piloting Canvas during the 2018-2019 academic year and the 2019-2020 academic year is the first time we are exclusively using Canvas.
We are a Banner institution and it is administered by our Information Technology Department. I work with our IT Department's Enterprise Applications Team to extract/export Banner data so that it can be transferred/imported into Canvas.
We have Banner to Canvas jobs that are scheduled to run Monday through Friday at 8 AM, 12 PM, 4 PM, and 8 PM. The job creates a single ZIP file with CSV files inside of it for users, courses, sections, and enrollments. The ZIP file is uploaded to our Canvas SFTP server and it starts to be processed at quarter-after-the-hour. The job is usually finished in a little more than five minutes. For students, we have a single-sign-on Portal that provides them with the ability to access a variety of systems including their college-provided email and Canvas.
During the creation of our enrollment CSV file, we consider any SFRSTCA.SFRSTCA_RSTS_CODE enrollment status code in Banner that starts with an "R" to be an active enrollment. Anything else is considered to be either (a) a deleted enrollment in Canvas if it is before the start of a course's part-of-term because the course has not started and they have not generated any activity in the course or (b) an inactive enrollment in Canvas if it is after the start of a course's part-of-term because the course has already started and the student may have generated activity in the course.
We currently have a student that is technically enrolled in a course but they are going through our disciplinary process and they are not allowed on our physical campus or in Canvas. They are allowed to continue to have access to our Portal, their college-provided email, and other systems. We are not able to withdraw or drop the student from their course(s) unless they have been officially suspended. So that we are able to keep lines of communication open, we are not able to disable their Portal account or college-provided email.
Based on that background, how can we temporarily (and in an as automated manner of a way as possible) override their Banner enrollment status (which says that they should be in a course) until the disciplinary process has concluded?
Right now, I have been manually uploading an enrollment CSV file shortly after the scheduled data transfer has finished. The enrollment CSV file contains entries for only this student and they have the student's Canvas enrollment status set to inactive instead of active.
It seems that the only automated way to handle this is to track a specific enrollment status code in Banner (possibly create a new one) so that they are technically still active in the course according to Banner and other systems but Canvas would know it as an inactive enrollment. Our concern is that we do not know what impact this will have anywhere else in Banner, other systems, or in our data governance, reporting or analytics.
Thank you for your time and help.
** If only Canvas enrollment changes made through the graphical user interface would be considered "sticky" but they are not because I have read How do I format CSV text files for uploading SIS data into a Canvas account?, contacted Canvas Support, asked our Customer Success Manager, and I have also tried to see what would happen (it reverts). **