Plan Line Course Offering trigger handler/TDTM
|REDU - Admin
|BeforeUpdate, BeforeDelete, AfterInsert, AfterUpdate
|Related RIO Education Settings
Class Session RT Id
Whenever a new class Session record is inserted, this class will create a new Plan Line, link it to the Session, set the Plan Line Name, Plan and Published fields using the values of the corresponding fields on the Session, and set the Resource Type to 'Location'.
Whenever an existing class Session record has its Booking Status updated to 'Create/Update Bookings', this class will first delete any Bookings and related Attendances for existing Plan Lines related to the Session:
- if the related Session Time's Create/Update Settings and dates are appropriate for updating, and,
- the Booking Action is 'Recreate'.
It will then set the Removed Booking Details field on the Session Time accordingly.
Finally, it will update all the existing Plan Lines related to the Session in order to trigger functionality to recreate the Bookings.
Past Bookings with related Attendances will not be deleted if the Attendance's Session Connection's Faculty field is false (ie. it is a Student Attendance) and either the Absent, Attended, Excused or Late fields are checked.
Whenever an existing class Session record is deleted, this class will delete the related Plan Line and any related Bookings.
It will also delete related Session Connections, unless either the relevant Prevent Session Deletion custom setting is enabled, or the Session Connection Enrollment Status is a status that prevents Session Connection deletion according to the relevant Prevent Session Del custom setting.