PSA Data Dictionary

ASM Triggers

Config Key: asm-triggers

Group containing on/off settings for all triggers in the system. Each trigger can be bypassed based on the configuration settings included in this group

Option NameTypeDescriptionDefault Value
afterExpenseReportChange Boolean Determines whether the trigger code that handles After Expense Report updates fires. This code is responsible for configurably auto-submitting Expense Reports to Approval Processes. true
AllBillingTriggers Boolean Determines whether trigger code that handles PSA Billing Queue is enabled or not. true
AssignProjectManagerToBudgetApprover Boolean Update Approver in Budget with project's project manager true
AssignProjectManagerToExpenseReportApprover Boolean Update Approver in expense report with project's project manager true
AssignProjectManagerToMilestoneApprover Boolean Update Approver in Milestone with project's project manager true
AssignProjectManagerToMiscellaneousAdjustmentApprover Boolean Update Approver in Miscellaneous Adjustment with project's project manager true
AssignProjectManagerToTimecardApprover Boolean Update Approver in Timecard (Timeacard_Header__c) with project's project manager true
beforeBudgetChange Boolean Determines whether the before change trigger code on Budget executes. This validates Budget Currency and Project Active flag, and handles Budget header creation true
beforeExpenseLineChange Boolean Determines whether the before Expense trigger code fires. This handles Permission Control checks, currency/rate calculations, and validations for active/closed Projects/Assignments/Milestones/Methodologies/Phases. true
beforeGroupPlanChange Boolean Determines whether the Group Plan trigger handling Unique Name checking and setting fires. true
beforeMilestoneChange Boolean Determines whether the before change trigger code on Milestone executes. This validates Milestone Currency and Project Active flag. true
beforeMiscellaneousAdjustmentChange Boolean Determines whether the before change trigger code on Misc Adjustment executes. This validates Misc Adjustment Currency and Project Active flag. true
beforePracticePlanChange Boolean Determines whether the Practice Plan trigger handling Unique Name checking and setting fires. true
beforeRegionPlanChange Boolean Determines whether the Region Plan trigger handling Unique Name checking and setting fires. true
beforeTimecardHeaderChange Boolean Determines whether the before Timecard Header trigger code fires. This handles currency/rate calculations, inheritance of settings and rates from Assignment/Project, and validations for active/closed Projects/Assignments/Milestones true
CheckForMultipleSalesforceUsersOnResource Boolean Determines whether the trigger fires which enforces no more than one Resource (Contact) associated with a given Salesforce user true
CheckForMultipleSameDayExceptions Boolean Prevents multiple Schedule Exceptions from being saved on the same day for a single Schedule true
CheckSharedSchedules Boolean Prevents Schedules from being set on multiple Assignments true
ClearConfigCache Boolean Clears the cache when a Config is modified true
DeleteAssignments Boolean Deletes Assignments when a Project is deleted true
DeleteAssignmentSchedule Boolean Deletes Schedules when an Assignment is deleted true
DeleteProjectLocations Boolean If true, then Delete all child Project Locations on Project delete TRUE
DeleteProjectMethodologies Boolean If true, then Delete all child Project Methodologies on Project delete TRUE
DeleteProjectPhases Boolean If true, then Delete all child Project Phases on Project delete TRUE
DeleteProjectTasksWithProject Boolean If set to True, all project tasks in the project task hierarchy are deleted upon deletion of the parent project. TRUE
EnforceExpenseLimits Boolean Enforces Expense Limits when Expenses are updated true
ExpenseTrigger Boolean Determines whether Expense trigger code executes or not. true
handleTaskTimeChange Boolean Prevents user from changing a Task with TaskTime into a Summary Task true
HandleResourceDelete Boolean It determines whether Contact delete trigger code executes or not. true
handleAccountChange Boolean Controls the trigger that processes person accounts changes true
handleActualsForTransaction Boolean Controls the trigger that creates/updates Actuals roll-up records true
handleAssignmentAfterInsert.PermissionControlCheck Boolean Controls whether trigger code that implements staffing Permission Controls for Assignment insert executes. true
handleAssignmentDailyNoteChange Boolean Determines whether handleAssignmentDailyNoteChange executes: enforces one Note per Assignment per day and updates the aggregated Assignment Daily Notes field on the parent Assignment(s). true
handleAssignmentRateCardChange Boolean Controls whether trigger code that implements matching of Assignments to Rate Cards executes. true
handleAssignmentTrigger.RestrictAssignmentDeletion Boolean Controls whether trigger code that restricts Assignment deletion based on the existence of child Timecards/Expenses should fire. true
handleAttachmentDelete Boolean If the value of minimum-expense-amount-limit-for-attachment is greater than 0, set to True to prevent users from deleting attachments on submitted expense reports. true
handleBillingEventBatchDelete Boolean Controls the trigger that handles Billing Event Batch deletion, checking for Released/Invoiced child BEs, and if deleting child BEs in proper context. true
handleBillingEventChange Boolean Controls the trigger that maintains Billing_Event_Batch__c.Summary_Amount__c field from Billing Event records, as well enforcing rules on Released/Billed/Invoiced flags true
handleBillingEventItemChange Boolean Controls the trigger that maintains Billing_Event__c.Summary_Amount__c field from Billing Event Item records true
handleExpenseLineChange Boolean Determines whether Expense insert/update/delete/undelete trigger code executes. This handles the creation and update of Transactions, as well as updates to Assignment and Milestone roll-ups true
handleExpenseReportDelete Boolean Determines whether the trigger code that handles Expense Report deletion/validations executes true
handleExpenseReportUpdate Boolean Determines whether the trigger code that handles Expense Report updates fires. This code is responsible for validations and cascading updates to Expenses true
handleGroupPlanChange Boolean Determines whether the Group Plan trigger handling updating the parent Group with changes fires. true
handleGroupTrigger.GroupActualsChange Boolean Determines whether code to update Group fields containing Actuals based on changes to child Group Actuals records true
handleGroupTrigger.SetGroupChain Boolean Controls whether trigger code that maintains Group Hierarchies should execute on Group changes. true
handleGroupTrigger.SetGroupCurrentActuals Boolean Determines whether the trigger code executes which handles a change in Current Time Period for the Group true
handleGroupTrigger.UpdateGroupCurrentTimePeriod Boolean Determines whether the trigger code executes which copies the 'current period' Group Actuals up to fields on the Group object in response to checking the Action Update Current Time Period checkbox true
handleMilestoneChange.RestrictMilestoneDeletion Boolean Controls whether trigger code that restricts Milestone deletion based on the existence of child Timecards/Expenses should fire. true
handlePracticePlanChange Boolean Determines whether the Practice Plan trigger handling updating the parent Practice with changes fires. true
handlePracticeTrigger.PracticeActualsChange Boolean Determines whether code to update Practice fields containing Actuals based on changes to child Practice Actuals records true
handlePracticeTrigger.SetPracticeChain Boolean Controls whether trigger code that maintains Practice Hierarchies should execute on Practice changes. true
handlePracticeTrigger.SetPracticeCurrentActuals Boolean Determines whether the trigger code executes which handles a change in Current Time Period for the Group true
handlePracticeTrigger.UpdatePracticeCurrentTimePeriod Boolean Determines whether the trigger code executes which copies the 'current period' Practice Actuals up to fields on the Practice object in response to checking the Action Update Current Time Period checkbox true
handleProjectTrigger.ForceProjectWithBillableAssignmentsToRemainBillable Boolean Determines whether code to prevent Billable Projects from being marked Non-Billable if they have Billable Assignments executes. true
handleProjectTrigger.ProjectActualsChange Boolean Determines whether code to update Project fields containing Actuals based on changes to child Project Actuals records true
handleProjectTrigger.RestrictProjectDeletion Boolean Controls whether trigger code that restricts Project deletion based on the existence of Business Records should fire. true
handleProjectTrigger.SetActualsNeedRecalc Boolean Controls whether trigger code that maintains Project Hierarchies should flag the master project as needing actuals recalc. true
handleProjectTrigger.SetProjectChain Boolean Controls whether trigger code that maintains Project Hierarchies should execute on Project changes. true
handleProjectTrigger.SetProjectCurrentActuals Boolean Determines whether the trigger code executes which handles a change in Current Time Period for the Project true
handleProjectTrigger.updateBillingEligibleBusinessRecordCounts Boolean Determines whether code to track the number of billing eligible business records on the Project executes. true
handleProjectTrigger.UpdateEVAFromProject Boolean Determines whether code to update child Est Vs Actuals records when a Project's Project Manager changes executes. true
handleProjectTrigger.UpdateProjectCurrentTimePeriod Boolean Determines whether the trigger code executes which copies the 'current period' Project Actuals up to fields on the Project object in response to checking the Action Update Current Time Period checkbox true
handleRegionPlanChange Boolean Determines whether the Region Plan trigger handling updating the parent Region with changes fires. true
handleRegionTrigger.RegionalActualsChange Boolean Determines whether code to update Region fields containing Actuals based on changes to child Regional Actuals records true
handleRegionTrigger.SetRegionChain Boolean Controls whether trigger code that maintains Region Hierarchies should execute on Region changes. true
handleRegionTrigger.SetRegionCurrentActuals Boolean Determines whether the trigger code executes which handles a change in Current Time Period for the Region true
handleRegionTrigger.UpdateRegionCurrentTimePeriod Boolean Determines whether the trigger code executes which copies the 'current period' Regional Actuals up to fields on the Region object in response to checking the Action Update Current Time Period checkbox true
handleResourceTrigger.ResourceActualsChange Boolean Determines whether code to update Resource fields containing Actuals based on changes to child Resource Actuals records true
handleResourceTrigger.SetResourceCurrentActuals Boolean Determines whether the trigger code executes which handles a change in Current Time Period for the Resource true
handleResourceTrigger.SetResourceWorkCalendar Boolean Determines whether the trigger code fires which sets a new Resource's Work Calendar based on Region, Practice, or Group Work Calendar (depending on the Resources:default-work-calendar-hierarchy Config) true
handleResourceTrigger.UpdateResourceCurrentTimePeriod Boolean Determines whether the trigger code executes which copies the 'current period' Resource Actuals up to fields on the Resource (Contact) object in response to checking the Action Update Current Time Period checkbox true
handleTimecardHeaderChange Boolean Determines whether trigger code for Timecard Header insertion and update executes. This primarily deals with validations, Permission Control checks, currency conversions for cost rate, and splitting of the Timecard Header into Timecard Splits based on da true
handleTimecardHeaderTaskTimeChange Boolean Determines whether trigger code for project task time rollups to milestones and assignments executes. true
handleTransactionForBudget Boolean Determines whether Budget insert/update/delete/undelete trigger code executes. This primarily handles the creation and update of Transactions true
handleTransactionForMilestone Boolean Determines whether Milestone insert/update/delete/undelete trigger code executes. This primarily handles the creation and update of Transactions true
handleTransactionForMiscellaneousAdjustment Boolean Determines whether Misc Adjustment insert/update/delete/undelete trigger code executes. This primarily handles the creation and update of Transactions true
handleTransactionForTimecard Boolean Determines whether Timecard Split insert/update/delete/undelete trigger code executes. This handles the creation and update of Transactions, as well as updates to Assignment and Milestone roll-ups true
handleVendorInvoiceChange Boolean Maintains fields of the Vendor Invoice object true
handleVendorInvoiceItemChange Boolean Maintains fields of the Vendor Invoice Item object true
onTimecardHeaderDelete Boolean Determines whether trigger code that handles Timecard Header deletion executes. This validates whether the Timecard is locked and takes care of Timecard Split/Transaction clean-up true
onTimecardHeaderUndelete Boolean Determines whether trigger code that handles Timecard Header un-deletion executes. This validates whether the Timecard is locked and takes care of restoring Timecard Splits/Transactions true
RateCardValidator Boolean Enables or disables uniqueness validation on rate cards. If true uniqueness is enforced true
ScheduleModificationTrigger Boolean Performs related updates when a Schedule's start or end data changes true
SetEstVsActualsName Boolean Sets the name on the EVA for records associated with Assignments true
setHierarchiesForTransaction Boolean Determines whether the before insert/update trigger code for Transactions executes to set the Region/Practice/Group for the Transaction that will drive which Actuals it rolls up to true
ShareBudgetWithApprover Boolean If budget is in private sharing mode then share the record with it's approver. true
ShareExpenseReportWithApprover Boolean If ExpenseReport is in private sharing mode then share the record (along with it's Expenses) with it's approver. true
ShareMilestoneWithApprover Boolean If Milestone is in private sharing mode then share the record with it's approver. true
ShareMiscellaneousAdjustmentWithApprover Boolean If MiscellaneousAdjustment is in private sharing mode then share the record with it's approver. true
ShareTimecardWithApprover Boolean If timecard is in private sharing mode then share the record with it's approver. true
VersionTrigger Boolean Determines if validation is performed when saving Versions. true
updateAssignmentForExpense Boolean Determines whether the 'mini-rollups' for the parent Assignment are updated as Expenses are inserted, modified, or deleted true
updateAssignmentForTimecard Boolean Determines whether the 'mini-rollups' for the parent Assignment are updated as Timecards are inserted, modified, or deleted true
updateExpenseReportForExpense Boolean Determines whether the billable, non-billable, and reimbursible totals, as well as billed/invoiced flags for the parent Expense Report are updated as Expenses are inserted, modified, or deleted true
updateMilestoneForExpense Boolean Determines whether the 'mini-rollups' for the parent Milestone are updated as Expenses are inserted, modified, or deleted true
updateMilestoneForTimecard Boolean Determines whether the 'mini-rollups' for the parent Milestone are updated as Timecards are inserted, modified, or deleted true
UpdatePrimarySkill Boolean Updates the primary skill flag on related skills if the primary flag is modified true
UpdateProjectMonitorFieldsFromAssignment Text Determines how project monitor fields roll-up on projects in response to changes to assignments, schedules, or schedule exceptions. Valid values are: Yes (Always update), No (Never Update). Yes
UpdateScheduledHours Boolean Controls the trigger that will update the scheduled hours on the parent Schedule when a Schedule Exception modification is made true
updateTimecardHeaderForTimecard Boolean Determines whether the billed/invoiced flags for the parent Timecard Header are updated as Timecard Splits are marked or unmarked billed/invoiced true
FilterSetsTrigger Text Controls if the FilterSetsTrigger is active. true
FiltersTrigger Text Controls if the FiltersTrigger is active. true