CCON_CreditTransfer_TDTM
Program Enrollment and Course Connection trigger handler/TDTM for credit transfer
Program Enrollment
Custom Permission | REDU - Admin |
Event | BeforeInsert |
Object | Program Enrollment |
Related RIO Education Settings | Auto Credit Transfer |
Description
Whenever a new Program Enrollment is inserted, this class sets its 'Auto Credit Transfer' field to the value of the 'Auto Credit Transfer' field on its parent Program Plan record. This only happens if the Auto Credit Transfer custom setting is enabled.
Use case
For more information on how auto credit transfer is used for students changing Programs, see here.
Course Connection
Custom Permission | REDU - Admin |
Event | BeforeInsert, BeforeUpdate, AfterUpdate |
Object | Course Connection |
Related RIO Education Settings | Auto Credit Transfer |
Description
Whenever a new Course Connection is inserted, this class checks if the both the related Program Enrollment and its related Program Plan have Auto Credit Transfer set to true, and checks if the Program Enrollment's Program Status is an in-progress value.
If these conditions are met, and the Auto Credit Transfer custom setting is enabled, then this Course Connection can receive (sink) a Credit Transfer.
It will then find any Course Connections that meet the following conditions:
- The Contact and Target Course fields are the same as the sink Course Connection.
- Both the Program Enrollment and its related Program Plan's Auto Credit Transfer fields are checked and the Program Enrollment's Program Status is an appropriate value for Credit Transfer OR there is no related Program Enrollment (this is to support Study Offering Course Connections for Continuing Education)
- The Enrollment Status field is Completed.
- The Grade Result is either RPL, Credit Transfer, Waiver or Pass.
- The Credit Transfer Received field is false.
Course Connections meeting these conditions can provide Credit Transfers.
Next it will process the Credit Transfers. If the sink Course Connection's Enrollment Status field is either blank, Enrollment Requested or Enrolled, its Grade Result field is blank and its Credit Transfer Received field is false, this class will map fields from the source record to the sink record as specified by the 'Auto Credit Transfer Configuration' Custom Metadata Type.
Whenever an existing Course Connection is updated, the same process as above is followed but before the Credit Transfer is processed, any previous Credit Transfers are rolled back.
Furthermore, when a Course Connection is updated, this class will also check whether the Course Connection now meets the conditions to provide (push) a Credit Transfer and will process any Credit Transfers from this record to any compatible sink records.
Where a student has multiple passed Course Connections for a Course (can be across multiple Program Enrollments), the Auto Credit Transfer will use the one with the highest Grade.
See also: Auto Credit Transfer