Calculating Account Plan Progress Using the Account Plan Hierarchy

  • iPad
  • Online
  • Windows

Account Plan Progress calculations can be performed by using a Veeva batch class instead of instantly executed triggers.

Configuring Account Plan Progress Calculations

To enable progress calculations based on the Account Plan Object Hierarchy, administrators need to schedule the VeevaRollupsSchedulingWrapper batch class to run according to the desired frequency and update the progress for each level in the Account Plan Hierarchy (as defined by the org-level Account_Plan_Object_Hierarchy_vod Veeva Setting).

To track progress on the user interface, grant appropriate FLS permission to the Progress_vod and Status_vod fields on the Account_Tactic_vod, Plan_Tactic_vod, and Account_Plan_vod objects.

Progress calculations in triggers that update fields in older environments are not automatically disabled.

  • Account_Tactic_After_Upsert_Before_Delete on Account_Tactic_vod__c
  • Plan_Tactic_After_Upsert_Before_Delete on Plan_Tactic_vod__c
  • Call_Objective_after_upsert_before_delete on Call_Objective_vod__c

As a consequence, roll-up calculations for the fixed Account Plan model (Account Plan – Plan Tactic – Account Tactic – Call Objective) are not performed and the following field values are not calculated on the objects below:

  • Account_Plan_vod__c
  • Completed_Plan_Tactics_vod__c
  • Plan_Tactic_Progress_vod__c
  • Total_Plan_Tactics_vod__c
  • Account_Tactic_vod__c
  • Call_Objective_Progress_vod
  • Completed_Call_Objectives_vod__c
  • Total_Call_Objectives_vod__c
  • Plan_Tactic_vod__c
  • Account_Tactic_Progress_vod__c
  • Completed_Account_Tactics_vod__c
  • Total_Account_Tactics_vod__c

This feature also allows custom objects to be added to the hierarchy and considered when calculating progress.

Progress Calculation Logic:

  • Progress at the first level (for example, the Account Plan level) is determined by counting the number of completed records at the second level (defined by the first object in the comma-delimited list of the hierarchy Veeva Setting) and dividing that by the total number of records (for example, complete, incomplete, etc.) at the second level
  • Progress at the second level (for example, the level immediately below the Account Plan, defined by the first object in the comma-delimited list of the hierarchy Veeva Setting) is determined by counting the number of completed records at the third level (defined by the second object in the comma-delimited list of the hierarchy Veeva Setting) and dividing that by the total number of records (for example, complete, incomplete, etc.) at the third level
  • Progress at the third level (defined by the second object in the comma-delimited list of the hierarchy Veeva Setting) is determined by counting the number of completed records at the fourth level (defined by the third object in the comma-delimited list of the hierarchy Veeva Setting) and dividing that by the total number of records (for example, , complete, incomplete, etc.) at the fourth level
  • Progress based on Call Objectives is determined based on the Completed Boolean flag (Completed_vod = TRUE)
  • Progress based on objects other than Call Objectives is calculated using the Status picklist (Status_vod = Completed_vod)