Loading
Education Data Architecture Documentation
Table of Contents
Select Filters

          No results
          No results
          Here are some search tips

          Check the spelling of your keywords.
          Use more general search terms.
          Select fewer filters to broaden your search.

          Search all of Salesforce Help
          Apex Class Descriptions for EDA

          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 (The App Launcher icon, which is a grid of gray dots) and search for and select Trigger Handlers. To stay informed about updates for Trigger Handlers, join the Education Release Readiness group.

          Important
          Important If you have technical questions about how a class works, refer to the EDA GitHub code repository.
          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.
           
          Loading
          Salesforce Help | Article