You are here:
Apex Class Descriptions for EDA
Verify access to EDA Apex classes for all profiles and permission sets that need them.
These Apex classes are managed by Table-Driven Trigger Management (TDTM). Use these descriptions to help inform your decisions when using TDTM, for example, when disabling Trigger Handlers.
For a complete list of the trigger handlers that EDA uses, click App
Launcher icon (
) and search for and select Trigger Handlers. To stay informed about updates for Trigger Handlers,
join the Education Release Readiness group.
| Object | Class Name | Description |
| Account | ACCT_CannotDelete_TDTM | This class prevents an Account from being deleted if it has any related Address, Affiliation, Attribute, Course, Course Connection, Education History, Facility, Program Enrollment, Program Plan, Term, or Time Block records. |
| Account | ADDR_Account_TDTM | When you update the values on Billing Address fields (Billing Street, Billing City, and so on), this class creates or updates a related Address record for Accounts that are configured for Address management in EDA Settings. If the Account is a Household Account, the class updates the Mailing Address fields for any Contacts associated with the Household. |
| Account | AFFL_AccRecordType_TDTM | When you change the record type of an Account, and it's a Primary Affiliation for a Contact, this class updates the Primary Affiliation to match the new record type. For example, if you change the Account's record type from Academic Program to Sports Organization, this class updates the Contact's Primary Sports Organization field. This class does not create a new Affiliation record when the related Account type is changed. It updates the existing Primary Affiliation record to reflect the new Account Type. |
| Account | RenameLeadConvertedAccounts_TDTM | When an Account is created during Lead conversion with a record type specified in Automatically Rename Lead-Converted Accounts in EDA Settings, this class enforces the use of the Account naming format associated with the record type in EDA. |
| Address__c | ADDR_Addresses_TDTM | When you create, update, or delete an Address record, this class sets the Latest Start Date, Latest End Date, Default, and Parent Account/Contact fields. If the Address is designated as Primary field, this class updates the related Billing Address/Mailing Address fields. |
| Address__c | ADDR_CannotDelete_TDTM | This class prevents an Address record from being deleted if it has any related Account (Administrative or Household) or Contact records. |
| Affiliation__c | AFFL_AccChange_TDTM | When you change or clear the Account field on an Affiliation record designated as Primary, this class updates or clears the appropriate Primary Affiliation lookup on the related Contact record. |
| Affiliation__c | AFFL_CannotDelete_TDTM | This class prevents an Affiliation record from being deleted if it has any related Course Connection records. |
| Affiliation__c | AFFL_ContactChange_TDTM | When you change the Contact field on an Affiliation record designated as Primary, this class clears the corresponding Primary Affiliation field on the related Contact and populates the appropriate Primary Affiliation on the updated Contact. If you clear the Contact field on an Affiliation record, this class clears the corresponding Primary Affiliation field on the related Contact. |
| Affiliation__c | AFFL_MultiRecordType_TDTM | This class ensures that a given Contact has only one Primary Affiliation per record type. If you deselect Primary on an Affiliation record, this class clears the corresponding Primary Affiliation field on the related Contact record. If you select Primary checkbox on a non-Primary Affiliation, this class populates the appropriate Primary Affiliation on the related Contact record, and any other Primary Affiliations of the same type become non-Primary. If the Affiliation type is configured for Program Enrollments in EDA Settings, this class creates the Program Enrollment record for the Contact and Account related to the Affiliation. |
| Application__c | Application_TDTM | This class verifies that the Application Due Date follows the Application Open Date. If the Application Due Date is on or before the Application Open Date, the class returns an error and doesn't save the Application. |
| Attendance_Event__c | ATTD_CourseConnectionContact_TDTM | This class validates that the same Contact is specified for a Course Connection and a related Attendance Event. |
| Behavior_Involvement__c | BEH_CannotDelete_TDTM | This class prevents a Behavior Involvement record from being deleted if it has any related Behavior Response records. |
| CampaignMember | REL_Relationships_Cm_TDTM | When you create or update a Campaign Member record with data in a custom Contact lookup field, and Relationships Autocreation is configured in EDA Settings, this class creates or updates a Relationship record between the two Contacts. |
| Case__c | CASE_CannotDelete_TDTM | This class prevents a Case record from being deleted if it has any related Behavior Involvement records. |
| Contact | ACCT_IndividualAccounts_TDTM | This class ensures that when the owner of a Primary Contact record that has an Administrative or Household Account is updated, the owner of the Account is also updated. It also ensures that when a Primary Contact is moved from an Administrative or Household Account, the first remaining Contact on the Account becomes the Account's Primary Contact. When the name of a Contact used to name an Account changes, the Account's name is updated using the Account Naming Format specified on the Systems tab in EDA Settings. These behaviors apply to all Accounts with the Administrative or Household Account Record Type specified on the Accounts and Contacts tab in EDA Settings. |
| Contact | ADDR_Contact_TDTM | This class implements Address management on the Contact object. When you create or update a Contact with Mailing Address information, this class creates a related Address record. If the Contact is in a Household, this class creates Address records for all Contacts in the same Household (except Contacts who have Do Not Automatically Update selected). |
| Contact | CON_CannotDelete_TDTM | This class prevents a Contact from being deleted if it has any related Address, Affiliation, Application, Attendance Event, Attribute, Behavior Involvement, Contact Language, Course Connection, Course Offering (Faculty), Education History, Program Enrollment, Term Grade, or Test records. |
Contact (K-12 Architecture Kit only) |
CON_CurrentGradeLevel_TDTM | When you populate the Current Grade Level field on a new Contact record, this class creates a related Grade Enrollment record for the Contact and sets its status to Current. When you update a Contact record that already has a value in the Current Grade Level field, this class creates a new Grade Enrollment record for the Contact and sets its status to Current. In this case, the previous Grade Enrollment's status is set to Former. |
| Contact | CON_DoNotContact_TDTM | When you update the Do Not Contact or Deceased settings on a Contact, this class synchronizes the Exclude From Household naming fields (Exclude From Household Name, Exclude From Household Formal Greeting, and Exclude From Household Informal Greeting) and communication preferences (Do Not Contact, Do Not Call, Email Opt Out, and Fax Opt Out). For example, if you specify Deceased for a Contact, the Exclude From Household fields are also selected. |
| Contact | CON_Preferred_TDTM | This class populates a Contact's standard Email and Phone fields based on Preferred Email and Preferred Phone selections. As of release 1.82, this class syncs Preferred Phone selections only if the enhanced Preferred Phone sync functionality isn't enabled. |
| Contact | CON_PreferredPhone_TDTM | This class syncs the value in a Contact's standard Phone field with the value in Preferred Phone. For example, if Preferred Phone is set to Mobile, with a value of 555-867-5309, this value is copied to the Contact's standard Phone field. This class returns an error if the selected Preferred Phone has an empty value. This class prompts users to specify which Phone is preferred when more than one value is entered, but Preferred Phone is not selected. |
| Contact | CON_PrimaryAffls_TDTM | When you create a Contact record that has a Primary Affiliation field or update any Primary Affiliation field on a Contact record, this class creates a related Affiliation record between the Contact and Account, and selects the Affiliation's Primary field. If an existing Primary Affiliation value is changed or cleared, this class deselects the Primary field on the previous Affiliation and creates a new Primary Affiliation. |
| Contact | REL_Relationships_Con_TDTM | When you create or update a Contact record with data in a custom Contact lookup field, and Relationships Autocreation is configured in EDA Settings, this class creates or updates a Relationship record between the two Contacts. |
| Contact_Language__c | CLAN_PrimaryLanguage_TDTM | This class keeps the Contact's Primary Language lookup field in sync with the Language related to the Contact's primary Contact Language record. |
| Contact_Language__c | CON_PrimaryLanguage_TDTM | This class ensures that the Contact Language record related to a Contact's Primary Language lookup field is marked as Primary, and that the Fluency value is automatically set on newly created Contact Language records when a user sets the Primary Language lookup field on a Contact. |
| Course__c | COUR_CannotDelete_TDTM | This class prevents a Course record from being deleted if it has any related Course Offering or Plan Requirement records. |
| Course_Connection__c | CCON_PreventUpdate_TDTM | When a Course Connection has a related Term Grade or Attendance Event, this class prevents changes to a Contact or Course Offering on that Course Connection. |
| Course_Enrollment__c | CENR_AcademicProgram_TDTM | When you populate or change the Program Enrollment ID field on a Course Connection record, this class sets the Academic Program field to the same Account related to the Program Enrollment. |
| Course_Enrollment__c | CCON_Faculty_TDTM | This class implements several aspects of Course Connections functionality, including updates to the Primary Faculty field on the related Course Offering, and Affiliation records between the faculty Contact and Course's Department. This class is relevant only if you have enabled Course Connections in EDA Settings. |
| Course_Offering__c | COFF_Affiliation_TDTM | When you create or update a Course Offering and populate or change the Primary Faculty field, this class creates a Course Connection that relates the faculty Contact record to the Course Offering. This class also creates an Affiliation record between the faculty Contact and the Course's Department. |
| Course_Offering__c | COFF_CannotDelete_TDTM | This class prevents a Course Offering record from being deleted if it has any related Course Connection or Course Offering Schedule records. |
| Course_Offering_Schedule__c | COS_StartEndTime_TDTM | When you create or update a Course Offering Schedule that has a related Time Block, this class populates the Start Time and End Time fields for the Course Offering Schedule with the values from the Time Block. |
Education_History__c (K-12 Architecture Kit only) |
EDUHIS_DataInteg_TDTM | When you create or update an Education History record, this class evaluates whether the Educational Institution specified in the Grade Enrollment record matches the Educational Institution Account specified in the Education History record. This class returns an error if the values don't match. A blank Educational Institution field isn't considered a mismatch. |
Grade_Enrollment__c (K-12 Architecture Kit only) |
GRER_DataInteg_TDTM | When you create or update a Grade Enrollment object, this class evaluates whether the Educational Institution specified in the Grade Enrollment record matches the Educational Institution Account specified in the Education History record. This class returns an error if the values don't match. A blank Educational Institution field isn't considered a mismatch. |
Grade_Enrollment__c (K-12 Architecture Kit only) |
GRER_SyncGradeLevel_TDTM | This class matches the value on a Contact's Current Grade Level field to the Grade Level set on a Grade Enrollment record with a Current status. If any other Grade Enrollment record has a Current status when another Grade Enrollment record is set to Current, this class sets the status for that record to Former. This class also updates the Current Grade Level field on a Contact to Not Applicable when no Grade Enrollment records have a Current status. |
| Facility__c | FACI_CannotDelete_TDTM | This class prevents a Facility record from being deleted if it has any related Facility or Course Offering records. Facility records also cannot be deleted when they have related Course Offering Schedules due to the configuration of the Facility object's lookup field. |
| Plan_Requirement__c | PReq_CannotDelete_TDTM | This class prevents a Plan Requirement record from being deleted if there are any related Plan Requirement records. |
| Program_Enrollment__c | PREN_Affiliation_TDTM | This class creates an Affiliation record between the Contact and the Academic Program (Account) when you create a Program Enrollment record. When you delete a Program Enrollment record, the class either updates the related Affiliation's status or deletes the Affiliation, depending on the configuration in Affiliation settings in EDA Settings. |
| Program_Enrollment__c | PREN_CannotDelete_TDTM | This class prevents a Program Enrollment record from being deleted if it has any related Course Connection records. |
| Program_Enrollment__c | PREN_ProgramPlan_TDTM | When you create a Program Enrollment record, this class populates the Program Plan field with the Program Plan that's specified as Primary for the Academic Program. If a primary Program Plan isn't specified, then the Program Plan field isn't populated. |
| Program_Plan__c | PPlan_CannotDelete_TDTM | This class prevents a Program Plan from being deleted if is has any related Plan Requirement or Program Enrollment records. |
| Program_Plan__c | PPlan_Primary_TDTM | This class ensures there is only one primary Program Plan per Account. When you insert or update a Program Plan and set Is Primary to True, the class updates Is Primary to False for all other Program Plan records related to the same Account. |
| Relationship__c | REL_Relationships_TDTM | This class implements Reciprocal Relationship functionality. When you create a Relationship record for one Contact, this class creates a reciprocal record for the Related Contact. When you update fields like Status or Type, this class makes an equivalent update to the reciprocal Relationship based on Relationships configuration in EDA Settings. |
| Term__c | Term_CannotDelete_TDTM | This class prevents a Term record from being deleted if it has any related Course Offering, Term, or Term Grade records. |
| Term__c | TERM_CourseOff_TDTM | When you populate the Start Date or End Date on a Term record, this class copies the dates to all related Course Offering records. |
| Term_Grade__c | TGRD_ValidateData_TDTM | This class ensures that the selected Course Connection matches the selected Contact and Course Offering. It attempts to populate the missing data based on the data provided. |
| Test__c | TST_CannotDelete_TDTM | This class prevents a Test record from being deleted if it has any related Test Score records. |
| Time_Block__c | TB_CannotDelete_TDTM | This class prevents a Time Block record from being deleted if it has any related Course Offering or Course Offering Schedule records. |
| Time_Block__c | TB_StartEndTime_TDTM | When you update the Start Time and End Time for a Time Block, this class locates related Course Offering Schedules and updates their Start Time and End Time to match the new Time Block values. |
| Trigger_Handler__c | THAN_Filter_TDTM | This class performs validation on Trigger Handler records. It prevents two Trigger Handlers from referencing the same TDTM class. The class also enforces that Trigger Handler records with Filter Field data must also have Filter Value data. |
| Trigger_Handler__c | THAN_ClearCache_TDTM | This class clears cached TDTM Tokens after you create or update a Trigger Handler record. |

