Auto-Logging to Custom Objects

Eliminate Manual Data Entry by Auto-Logging to Custom Objects in Salesforce

Aamir Peeran avatar
Written by Aamir Peeran
Updated over a week ago

At Groove, we know that each organization has unique needs and requirements that can be extremely complex and dynamic. That’s why Groove is built to adapt to your organization’s sales process, regardless of what customizations you use. Groove’s Advanced Activity Capture can now automatically log activity back to a custom object in Salesforce. This feature can be configured by profile so that it fits the different needs of each team.

Automatically logging to custom objects minimizes the manual work required by sellers while ensuring complete visibility into account health and opportunities. Eliminating manual logging gives sellers time back to focus on building relationships and driving deals forward, while providing leadership with the visibility needed to understand what is driving their business.

**This feature applies to email activities, calendar events, calls made through Groove Omnidialer, flow actions, and one-off actions**

Please reach out to your dedicated Groove Manager to get this feature enabled.


How it Works:

Auto-logging to custom objects uses Groove Views to determine which objects to log to. These Groove Views help to find and associate each activity to the right object and can be configured for a specific profile, and ranked with priority.

Note: Groove Views are configured using SOQL (the Salesforce Object query language). Groove Views are also used to show objects and fields in your Omnibar, but can be separated from Groove Views for auto-logging.

If you are unfamiliar with SOQL, you can read this guide on configuring Groove Views. If you have any questions, please contact support@grooveapp.com to set up a meeting with one of our integration specialists.

Recommended literature is the official SOQL documentation and Jeff Douglas' excellent blogpost about SOQL.

Auto-Logging to custom objects for calls made through Groove Omnidialer:

When you have auto-logging with custom objects turned on and set up, you will notice that calls made through Groove's Omnidialer will begin to auto-populate with the custom object while calls are being logged. You will find the call activity in Salesforce being logged to the custom object as well.

Notice in the screenshot below that the custom object is added to the Log To bar.


Setting up Auto-Logging to Custom Objects:

  1. Create a Groove View for a custom object you'd like to log to.

  2. Enable that Groove View for custom object logging by checking off 'Related-To Logging,' this will activate the view to be used for logging.

    1. Note: The 'Active' checkbox is for enabling a view for the Groove Omnibar, but it is not necessary to have a view in the Omnibar for logging purposes.

  3. Determine and add which profiles this view will apply to (or not apply to). By default this will apply to all profiles if not specified.

  4. Choose your Display Order, the higher the number, the higher the priority for this view.

    1. Note: The max a display order can be is 999. It is also recommended to not have 2 Views that are related to the same profile(s) with the same display order.

  5. Navigate back to Profile Settings in Manage My Org and adjust the relevant profiles' 'Related-To Lookup Logic' to Custom Object Logging.

Once these steps are complete, each activity a seller makes will automatically log to the custom object associated with that profile.

Notes:

  • For emails and calendar events, Groove provides "Suggested Records" to log to from a selection of records

  • By default, with a custom SOQL query configured, Groove will return the top result only in Suggested Records

  • However, if your Groove Managed Package version is 9.128 or higher, Groove will return the top 15 results to choose from

    • Recommended: To limit the result set to lower than 15, simply include a LIMIT within your SOQL query

Example Scenarios:

Groove View that is used for Omnibar viewing and Auto-Logging:

This view is for the custom object Purchase Order (Purchase_Order__c)

SELECT Name, Contact__r.name, Primary_Email__c, Direct_Phone_Number__c, Start_Date__c, Number_of_Units__c, Price__c, Products__c, SKU__c, Owner.name, 

(SELECT Subject, CreatedBy.NamE, ActivityDatE, StatuS, Description FROM ActivityHistories ORDER BY ActivityDate DESC LIMIT 3)

FROM Purchase_Order__c
WHERE Contact__r.email = '{!email}'
ORDER BY LastModifiedDate DESC
LIMIT 3

Groove View that is used for Auto-Logging only:

This view is for the custom object Purchase Order (Purchase_Order__c)

SELECT Name 

FROM Purchase_Order__c
WHERE Contact__r.email = '{!email}'
ORDER BY LastModifiedDate DESC
LIMIT 3


Important Factors to Note about SOQL:

URL Parameter and SOQL Placeholders

In order to execute the SOQL query in the context of a specific email or calendar event, the SOQL query in the view usually contains placeholders. These placeholders will be replaced with the email address or parts of it of the sender. These placeholders are:

<a href="https://downloads.intercomcdn.com/i/o/36643124/04d394b2e34e0e44c9c833e9/image.png" target="_blank" rel="nofollow noopener noreferrer">https://downloads.intercomcdn.com/i/o/36643124/04d394b2e34e0e44c9c833e9/image.png</a>

Unsupported SOQL Idioms

Do not use any kind of SOQL alias notation, as this is not supported by Groove. Here are examples that are not supported and may lead to unexpected results:

SELECT c.Firstname, c.Lastname FROM Contact c WHERE Lastname = 'Smith' SELECT Firstname, Lastname FROM Contact c WHERE c.Lastname = 'Smith' SELECT Firstname, Lastname FROM Contact c, c.Account a WHERE a.name = 'MyriadPubs'

Also note that aggregate functions and keywords are not supported by Groove. If a SOQL query in a Groove View contains such aggregate functions (SUM, AVG, etc.) or keywords (GROUP BY), you won't be able to save it.

Did this answer your question?