Trigger Settings

Triggers Custom Setting

The Triggers custom setting contains several fields that control whether specific triggers are enabled for execution, in conjunction with configuration options in the ASM TriggersClosed Automated Services Manager Triggers. ASM triggers execute certain behavior in PSA. ASM triggers are controlled by the fields in the Triggers custom setting and the configuration options in the ASM configuration group. configuration groupClosed A collection of configuration options contained in the configuration groups tab that defines behavior of a PSA object or feature..

Key: O = Obsolete.

Field

 

Description

Default

Handle Assignment Project Methodology Change Disabled   When set to true, the Handle Assignment Project Methodology Change trigger is disabled. The default value is false where the trigger is enabled. False
Handle Assign Project Phase Changes Disabled   When set to true, the Handle Assign Project Phase Changes trigger is disabled. The default value is false (the trigger is enabled). False
RecalculateEstVsActuals Disabled   When set to true, the RecalculateEstVsActuals2 trigger is disabled. False
RecalculateEstVsActuals Enabled   This field is not currently used. Use the RecalculateEstVsActuals Disabled field instead. N/A
Res Request Geolocation Trigger Disabled   When set to true, the trigger that calculates the geographic location of the Work Address on the resource request is disabled. The default value is false. False
Resource Geolocation Trigger Disabled   When set to true, the trigger that calculates the Resource's geographic location from the Mailing Address field on their contact record is disabled. The default value is false. False
Skill Unique Name Trigger Disabled   When set to true, disables the trigger that maintains unique skill names. When false, you can select the UniqueNameAdditionalFields field in the Skills configuration group to configure uniqueness constraints. False
Skill Unique Name Under Parent Enabled   When set to true, skills must have unique names under the same direct parent category in a skills hierarchy. However, skills with identical names are permitted under another parent category in a different part of a skills hierarchy. Name uniqueness is case insensitive and this also applies to root level skills. When false, unique skill name validation does not trigger. False
Task Assignment-Delete Disabled   When set to true, the before delete trigger on task assignment is disabled. False
Task Assignment-Insert Disabled   When set to true, the before insert trigger on task assignment is disabled. False
Task Assignment-Update Disabled   When set to true, the before update trigger on task assignment is disabled. False
Task-Delete Disabled   When set to true, the before delete trigger on task is disabled. False
Task-Insert Disabled   When set to true, the before insert trigger on task is disabled. False
DEPRECATED: Task-Set Task Chain Disabled O This setting is deprecated and no longer used.  
Task Validation Trigger Disabled   When true, disables the trigger that validates task dates against being out-of-range with project, milestone and related assignments and task hours against being out-of-range with related assignments.
False
Task-Update Disabled   When set to true, the before update trigger on task is disabled. False
DEPRECATED: TrackResourceChanges Enabled O This setting is deprecated and no longer used.  
TrackResourceChanges_Disabled   When set to true, the TrackResourceChanges trigger is disabled. False

ASM Triggers

Here is a description of the options in the ASM Triggers configuration groupClosed A collection of configuration options contained in the configuration groups tab that defines behavior of a PSA object or feature.. Triggers can be bypassed using the configuration settings in this group:

Option Description
AllBillingTriggers Indicates whether trigger code that handles the PSA Billing Queue fires.
afterExpenseReportChange Indicates whether trigger code that handles expense report updates fires. This allows you to automatically submit expense reports for approval when there is an approval process on your system. See Setting up Workflow and Approval Processes
AssignProjectManager
ToBudgetApprover
Indicates whether the approver in a budgetClosed An amount used to manage expenditure on customer purchase orders, internal budgets, outbound vendor purchase orders and work orders. A budget must be associated with a project. is to be updated with the project manager of the project.
AssignProjectManagerTo
ExpenseReportApprover
Indicates whether the approver in an expense reportClosed A mechanism for charging expenses incurred to a project or an assignment. is to be updated with the project manager of the projectClosed A collection of activities and related items to be managed over a defined time range, such as timecards, expenses, milestones and budgets..
AssignProjectManagerToMilestoneApprover Indicates whether the approver in a milestoneClosed A fixed target, which when achieved, can be billed to the customer for a fixed fee or by logging time against it. is to be updated with the project manager of the project.
AssignProjectManagerTo
MiscellaneousAdjustmentApprover
Indicates whether the approver in a miscellaneous adjustmentClosed A catch-all business record that allows you to correct data entry errors or adjust transactions. is to be updated with the project manager of the project.
AssignProjectManagerTo
TimecardApprover
Indicates whether the approver in a timecardClosed A mechanism for logging time against a project or an assignment. is to be updated with the project manager of the project.
beforeBudgetChange Indicates whether the before change trigger code on a budget is executed. This validates the Budget Currency and Project Active flag, and handles Budget header creation.
beforeExpenseLineChange Indicates whether the before Expense trigger code executes. This handles permission controlClosed Determines whether a single user has permission to carry out specific tasks in PSA. checks, currency/rate calculations, and validations for active/closed projects/assignments/milestones/methodologies/phases.
beforeGroupPlanChange Indicates whether the group plan trigger that handles unique name checking and setting executes.
beforeMilestoneChange Indicates whether the before change trigger code on milestones executes. This validates the Milestone Currency and Project Active fields.
beforeMiscellaneousAdjustmentChange Indicates whether the before change trigger code on miscellaneous adjustments executes. This validates miscellaneous adjustment Currency and Project Active fields.
beforePracticePlanChange Indicates whether the practice plan trigger that handles unique name checking and setting executes.
beforeRegionPlanChange Indicates whether the region plan trigger that handles unique name checking and setting executes.
beforeTimecardHeaderChange Indicates whether the before Timecard Header trigger code executes. This handles currency/rate calculations, inheritance of settings and rates from Assignment/Project, and validations for active/closed projects/assignments/milestones.
CheckForMultipleSalesforce
UsersOnResource
Indicates whether the trigger that enforces no more than one resource (contact) associated with a given Salesforce user executes.
CheckForMultipleSameDayExceptions Indicates whether multiple schedule exceptions are prevented from being saved on the same day for a single schedule
CheckSharedSchedules Indicates whether users are prevented from setting schedules on more than one assignment.
ClearConfigCache Indicates whether the cache is cleared when a configuration setting is modified.
DeleteAssignments Indicates whether assignments are deleted when a projectClosed A collection of activities and related items to be managed over a defined time range, such as timecards, expenses, milestones and budgets. is deleted.
DeleteAssignmentSchedule Indicates whether schedules are deleted when the associated assignmentClosed Connection between a resource and a project. is deleted.
DeleteProjectLocations Indicates whether child project locations are deleted when the parent project is deleted.
DeleteProjectMethodologies Indicates whether child project methodologies are deleted when the parent project is deleted.
DeleteProjectPhases Indicates whether child project phases are deleted when the parent project is deleted.
DeleteProjectTasksWithProject Indicates whether all project tasks in the project task hierarchy are deleted upon deletion of the parent project.
EnforceExpenseLimits Indicates whether expense limits are enforced when expenses are updated.
ExpenseTrigger Indicates whether the Expense trigger code executes.
handleAccountChange Indicates whether trigger code that processes changes to person accounts executes.
handleActualsForTransaction Indicates whether the trigger that creates and updates actuals roll-up records executes.
handleAssignmentAfterInsert.
PermissionControlCheck
Indicates whether trigger code that implements staffing permission controls for assignment creation executes.
handleAssignmentDailyNoteChange Indicates whether the handleAssignmentDailyNoteChange trigger executes. This enforces one note per assignment per day and updates the aggregated Assignment Daily Notes field on parent assignments.
handleAssignmentRateCardChange Indicates whether trigger code that implements matching of assignments to rate cardClosed Suggested bill rate or average cost rate for a resource role in a region, practice or group. You can use these rates for information purposes in resource requests.s executes.
handleAssignmentTrigger.
RestrictAssignmentDeletion
Indicates whether trigger code that restricts assignment deletion based on the existence of child timecards/expenses executes.
handleAttachmentDelete If the value of minimum-expense-amount-limit-for-attachment is greater than 0 and this trigger is set to true, users will not be able delete attachments from expense reports that have been submitted.
handleBillingEventBatchDelete Indicates whether the trigger that handles billing event batchClosed A group of billing events deletion executes. This checks for released/invoiced child billing events, and whether child billing events are to be deleted in the proper context.
handleBillingEventChange Indicates whether the trigger that maintains Billing_Event_Batch__c.Summary_Amount__c field from billing event records executes, as well enforcing rules on Released/Billed/Invoiced checkboxes.
handleBillingEventItemChange Indicates whether the trigger that maintains Billing_Event__c.Summary_Amount__c field on billing event items executes.
handleExpenseLineChange Indicates whether the 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-upClosed Term used to describe how a lower level figure or transaction is included in a higher level transaction or calculation.s.
handleExpenseReportDelete Indicates whether the trigger code that handles expense reportClosed A mechanism for charging expenses incurred to a project or an assignment. deletion/validation executes.
handleExpenseReportUpdate Indicates whether the trigger code that handles expense report updates executes. This code validates and cascades updates to expenses.
handleGroupPlanChange Indicates whether the group plan trigger that handles updates to the parent group when a group plan is changed executes.
handleGroupTrigger.GroupActualsChange Indicates whether code to update group fields containing actualsClosed Totals for a given time period. based on changes to child group actuals records executes.
handleGroupTrigger.SetGroupChain Indicates whether trigger code that maintains group hierarchies should execute on changes to a Group.
handleGroupTrigger.
SetGroupCurrentActuals
Indicates whether the trigger code that handles changes to the current time periodClosed A period of time with a start date and an end date to which forecasts, actuals calculations, billing event batches, utilization calculations and region plans belong. for the Group executes.
handleGroupTrigger.
UpdateGroupCurrentTimePeriod
Indicates whether the trigger code executes that copies the 'current period' group actuals up to fields on the Group object in response to selecting the Action Update Current Time Period checkbox.
handleMilestoneChange.
RestrictMilestoneDeletion
Indicates whether trigger code that restricts milestone deletion based on the existence of child timecards/expenses executes.
handlePracticePlanChange Indicates whether the Practice Plan trigger that handles updating a parent practice when the child changes executes.
handlePracticeTrigger.
PracticeActualsChange
Indicates whether code to update practice fields containing actuals based on changes to child practice actuals records executes.
handlePracticeTrigger.SetPracticeChain Indicates whether trigger code that maintains practice hierarchies executes when changes are made to a practice.
handlePracticeTrigger.
SetPracticeCurrentActuals
Indicates whether the trigger code that handles changes to the current time period for the practice executes.
handlePracticeTrigger.
UpdatePracticeCurrentTimePeriod
Indicates whether the trigger code executes which copies the 'current period' Practice Actuals up to fields on the Practice object in response to selecting the Action Update Current Time Period checkbox.
handleProjectTrigger.
ForceProjectWithBillableAssignments
ToRemainBillable
Indicates whether code to prevent billable projects from being marked non-billable when they have billable assignments executes.
handleProjectTrigger.
ProjectActualsChange
Indicates whether code to update project fields containing actuals based on changes to child project actuals records executes.
handleProjectTrigger.
RestrictProjectDeletion
Indicates whether trigger code that restricts project deletion based on the existence of a business recordClosed Timecard Split, Expense, Milestone, Miscellaneous Adjustment or Budget executes.

handleProjectTrigger.

RestrictProjectDeletionBasedOnResourceRequest

Indicates whether trigger code that restricts project deletion based on the existence of child resource requests executes. Config option value for handleProjectTrigger.RestrictProjectDeletion must be set to “true” to use config option handleProjectTrigger. RestrictProjectDeletionBasedOnResourceRequest.

Warning:
We recommend that you contact Certinia Customer Support if you want to use this configuration option.

To set up this configuration option, take the following action:

  1. Create a configuration option with the following attributes:
    1. Name: handleProjectTrigger.RestrictProjectDeletionBasedOnResourceRequest
    2. Type: Boolean
    3. Configuration Group: ASM Triggers
    4. Version: 1
    5. Description: It allows you to restrict the deletion of a project with child resource requests present.
  2. Create a configuration value with the following attributes:
    1. Configuration Option: handleProjectTrigger.RestrictProjectDeletionBasedOnResourceRequest
    2. Value: true or false

handleProjectTrigger.SetActualsNeedRecalc Indicates whether the Actuals: Need Recalc checkbox is automatically selected on the original master/parent project and the new master/parent project when the hierarchy of a project is changed.
handleProjectTrigger.SetProjectChain Indicates whether trigger code that maintains project hierarchies executes when changes are made to a project.
handleProjectTrigger.
SetProjectCurrentActuals
Indicates whether the trigger code that handles changes to the current time period for the project executes.
handleProjectTrigger.
updateBillingEligibleBusinessRecordCounts
Indicates whether code to track the number of billing eligible business records on the Project executes.
handleProjectTrigger.
UpdateEVAFromProject
Indicates whether code executes which updates child estimates versus actuals records when a the project manager of a project is changed.
handleProjectTrigger.
UpdateProjectCurrentTimePeriod
Indicates whether the trigger code executes which copies the 'current period' project actuals up to fields on the Project object in response to selecting Action Update Current Time Period checkbox.
handleRegionPlanChange Indicates whether the Region Plan trigger that handles updating a parent region when the child changes executes.
handleRegionTrigger.
RegionalActualsChange
Indicates whether code to update region fields containing actuals based on changes to child region actuals records executes.
handleRegionTrigger.SetRegionChain Indicates whether trigger code that maintains region hierarchies executes when changes are made to a region.
handleRegionTrigger.SetRegionCurrentActuals Indicates whether the trigger code that handles changes to the current time period for the region executes.
handleRegionTrigger.
UpdateRegionCurrentTimePeriod
Indicates whether the trigger code executes which copies the 'current period' region actuals up to fields on the region object in response to selecting Action Update Current Time Period checkbox.
HandleResourceDelete Indicates whether the contact delete trigger code executes or not.
handleResourceTrigger.
ResourceActualsChange
Indicates whether code to update resource fields containing actuals based on changes to child resource actuals records executes.
handleResourceTrigger.
SetResourceCurrentActuals
Indicates whether the trigger code that handles changes to the current time period for the resource executes.
handleResourceTrigger.
SetResourceWorkCalendar
Indicates whether the trigger code fires which sets a new resource's work calendar based on the value of the Default Work Calendar Hierarchy configuration option in the Resources configuration groupClosed A collection of configuration options contained in the configuration groups tab that defines behavior of a PSA object or feature..
handleResourceTrigger.
UpdateResourceCurrentTimePeriod
Indicates whether the trigger code executes which copies the 'current period' resource actuals up to fields on the Resource object in response to selecting Action Update Current Time Period checkbox.
handleTimecardHeaderChange Indicates whether trigger code for Timecard Header insertion and update executes. This handles validation, permission control, currency conversions for cost rate and splitting timecard header information into timecard splits based on dates and time periods.
handleTimecardHeaderTaskTimeChange Indicates whether the trigger code that rolls ups project task time to milestones and assignments executes.
handleTransactionForBudget Indicates whether budget insert/update/delete/undelete trigger code executes. This handles the creation and update of budget transactions.
handleTransactionForMilestone Indicates whether milestone insert/update/delete/undelete trigger code executes. This handles the creation and update of milestone transactions.
handleTransactionForMiscellaneousAdjustment Indicates whether Miscellaneous Adjustment insert/update/delete/undelete trigger code executes. This handles the creation and update of miscellaneous adjustmentClosed A catch-all business record that allows you to correct data entry errors or adjust transactions. transactions.
handleTransactionForTimecard Indicates whether timecard splitClosed A whole timecard or part of a timecard. insert/update/delete/undelete trigger code executes. This allows transactions to be created and updated and also allows updates top assignment and milestone roll-ups.
handleVendorInvoiceChange Indicates whether the trigger code that maintains fields on a vendor invoice executes.
handleVendorInvoiceItemChange Indicates whether the trigger code that maintains fields on a vendor invoice item executes.
onTimecardHeaderDelete Indicates whether the trigger code that handles deletion of timecards executes. This validates whether the timecardClosed A mechanism for logging time against a project or an assignment. is to be locked and cleans up related timecard splits and transactions.
onTimecardHeaderUndelete Indicates whether the trigger code that handles undeletion of timecards executes. This validates whether a restored timecard is to be locked and restores timecard splits and transactions.
RateCardValidator Indicates whether rate cards are validated for uniqueness.
ScheduleModificationTrigger Indicates whether a trigger executes to carry out updates to related data when the start or end date on a schedule is changed
setHierarchiesForTransaction Indicates whether the trigger code that sets the Region/Practice/Group to which the actuals numbers for a transaction roll up to.
ShareBudgetWithApprover Indicates whether budgetClosed An amount used to manage expenditure on customer purchase orders, internal budgets, outbound vendor purchase orders and work orders. A budget must be associated with a project.s are shared with the approver when they are privately shared.
ShareExpenseReportWithApprover Indicates whether expense reportClosed A mechanism for charging expenses incurred to a project or an assignment.s and expenses are shared with the approver when the expense report is privately shared.
ShareMilestoneWithApprover Indicates whether milestones are shared with the approver when they are privately shared.
ShareMiscellaneousAdjustment
WithApprover
Indicates whether miscellaneous adjustments are shared with the approver when they are privately shared.
ShareTimecardWithApprover Indicates whether timecards are shared with the approver when they are privately shared.
updateAssignmentForExpense Indicates whether the roll-ups on a parent assignment are updated when expenses are created, modified or deleted.
updateAssignmentForTimecard Indicates whether the roll-ups on a parent assignment are updated when timecards are created, modified or deleted.
updateExpenseReportForExpense Indicates whether billable, non-billable and reimbursable totals and Billed / Invoiced checkboxes are updated when expenses are created, modified or deleted.
updateMilestoneForExpense Indicates whether the roll-ups on a parent milestone are updated when expenses are created, modified or deleted.
updateMilestoneForTimecard Indicates whether the roll-ups on a parent milestone are updated when timecards are created, modified or deleted.
UpdatePrimarySkill Indicates whether the Primary Skill checkbox on related skills is updated when a user updates the Primary checkbox.
UpdateProjectMonitorFieldsFromAssignment 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 project monitor fields.
No - never update project monitor fields.
UpdateScheduledHours Indicates whether the trigger that updates the scheduled hours on the parent schedule when a user modifies a Schedule Exception runs.
updateTimecardHeaderForTimecard Indicates whether the Billed and Invoiced checkboxes on the parent timecard header are updated when the Billed or Invoiced status on timecard splits is changed.
UseDeltaRollupForTimecard

When true, timecard rollup on the assignment or milestone is performed based on timecards that have been added, updated, deleted, or undeleted rather than all the timecards associated with the assignment or milestone.

The default value of this configuration option is true.

UseDeltaRollupForExpense

When true, expense rollup on the assignment or milestone is performed based on expenses that have been added, updated, deleted, or undeleted rather than all the expenses associated with the assignment or milestone.

The default value of this configuration option is true.