Using the Account Territory Loader
- Browser
The Account Territory Loader (ATL) is a Territory Management method used to add one or more territories to one or many accounts. This method lists the territories each account should be assigned to without the complexities of the Territory2, Group or ObjectTerritory2Association objects.
The New Account and New Record Type wizards create ATL objects when a user creates accounts that align the new account to the current user.
Because CRM has many other methods of assigning accounts to territories, an account’s ATL record may not have the full list of territories an account is currently assigned to. Salesforce’s ObjectTerritory2Association table always contains the most accurate list of which users and territories have access to an account.
Considerations
- Each account should only have one associated ATL record
- This feature does not require an Align license to use
Configuring ATL
To configure ATL:
- Grant users CRUD access to the Account_Territory_Loader_vod object.
-
Grant users FLS edit permission to the following Account_Territory_Loader_vod fields:
- Account_vod
- External_ID_vod
- Territory_vod
- Territory_to_Add_vod
- Territory_to_Drop_vod
- Ensure users do not have FLS edit permission to the Territory_vod field on the Account object.
- Enter 1 for the ATL_Mode_vod Territory Setting. This step is only required for customers using Align.
Dataloading Best Practices
The following are basic recommendations when loading ATL records via an external data loader or the SFDC API.
Inserting ATL Records
The initial ATL record creation should include the following fields:
- Account_vod
- External_Id_vod
- Territories_vod if using ATL Mode 0, or Territory_To_Add_vod if using ATL Mode 1
Updating ATL Records
Updating or Upserting ATL records should include the following fields:
- Account_vod
- External_Id_vod
- Territory_To_Add_vod or Territory_To_Drop_vod – A semicolon-delimited list of territory names
Processing Changes to ATL Records
The following are two methods of processing changes made to ATL records:
- Classic ATL Approach (ATL Mode = 0) – The default setting. Each ATL update or insert updates the Account assignments by first clearing each Territory assigned to the Account and re-inserting only the Territories listed in the Territory_vod field.
- Incremental ATL Approach (ATL Mode = 1) – This approach only processes changes to the Territory_To_Add_vod and Territory_To_Drop_vod fields
Veeva CRM orgs can be configured to use one of the approaches via the ATL_Mode_vod Territory Setting.
Customers using Align must use the incremental approach.
Classic ATL Processing Approach
The classic processing approach assumes the values listed in the Territory_vod field are the desired list of Territories, regardless of what is listed in the ObjectTerritory2Association table for an Account.
When the ATL_Mode_vod field on the Territory_Settings_vod object has a value of 0 or is blank, the following happens on an account merge:
- The ATL record for the winning account is preserved
- Territory assignments included in the Territory_vod field on the ATL record of the losing account are appended to the Territory_vod field of the ATL record for the winning account and the assignments are preserved
- Territory assignments manually created in Salesforce that did not exist on the ATL record of the losing account are removed
- The ATL record for the losing account is deleted
Each ATL insert or update processes the following:
- Territories are added or removed from the account based on the values of the Territory_To_Add_vod and/or Territory_To_Drop_vod fields. The Territory_To_Add/Drop_vod fields are then cleared.
- All ObjectTerritory2Association rows for the Account where ObjectTerritory2Association.RowCause = Territory2Manual are deleted
- New ObjectTerritory2Association rows are created for each territory listed in the Territory_vod field
Incremental ATL Processing Approach
For some Veeva CRM environments, the classic approach adversely affects Account to Territory assignments from other alignment methods by deleting valid Territory assignments listed in the ObjectTerritory2Association table but not listed on the ATL record.
This is especially true for territory assignments that come from outside of Veeva CRM, for example, from Align. Some of these systems do not use ATL for Territory management. Instead, Account-to-Territory assignments are inserted directly into the CRM ObjectTerritory2Association object.
The incremental processing approach allows an org to continue using the ATL utility in conjunction with outside Account to Territory assignment systems that do not use ATL.
When the ATL_Mode_vod field on the Territory_Settings_vod object has a value of 1, the following happens on an account merge:
- The ATL record for the winning account is preserved
- Territory assignments of the losing account are reparented to the winning account
- If the assignment being reparented existed on the ATL record of the losing account, the Territory Name is appended to the Territory_vod field on the winning ATL record
- If the assignment being reparented was manually created in Salesforce and did not exist on the ATL record of the losing account, it is not appended to the Territory_List_vod field on the winning ATL record
- The ATL record for the losing account is deleted
Each ATL update processes the following:
- Territories are added or removed from the account based on the values of the Territory_To_Add_vod and/or Territory_To_Drop_vod fields. The Territory_To_Add/Drop_vod fields are then cleared.
- ObjectTerritory2Association records are compared to the changes made from the Add or Drop fields. Only differences are processed.
For example, a user aligned to Territory 103 uses Network Account Search to add an account to their territory, resulting in an upserted ATL record. Only Territory 103 is listed in the Territory_vod field on the Account_Territory_Loader_vod object in CRM. Because the ATL_Mode_vod field is set to 1, ATL does not delete the initial two territories inserted by Align (101 and 102). The ATL processing approach processes only the single Territory listed in the ATL record—Territory 103.
Veeva CRM environments with Veeva Align managing the Territories and CRM containing Account assignments must have the Territory_Settings_vod field set to 1.