Andy in the Cloud

From BBC Basic to and beyond…


I started this blog to share some thoughts, ideas and opinions around my main passion in life computing, or more specifically these days Cloud computing. Who knows maybe I’ll go stray now and again into some of my others as well!

I am currently working for in Product Management for the Platform. Previously CTO. Enjoying working and at times coding hard with everyone to make this new startup company a raging success! Along with our friends at and UNIT4. I am pleased to have been selected as a MVP!

I am a Salesforce MVP. For more information on the Salesforce MVP community, visit: Salesforce, Force,, Chatter, and others are trademarks of, inc. and are used here with permission.

Any views expressed on this blog are entirely my own.


255 thoughts on “About

  1. Salesforce is doing a Critical Update for Winter 21 Release:

    We want to take this opportunity to remind you that we are enforcing the ‘Restrict Access to @AuraEnabled Apex Methods for Guest and Portal Users’ and the ‘Restrict Access to @AuraEnabled Apex Methods for Authenticated Users Based on User Profile’ Release Updates in the Winter ‘21 release.

    Does your installed package have @Auraenabled Classes that i would need to add to profiles?

  2. Hello Andrew,

    I am having an issue with DLRS. I posted on the community chatter group but I did not receive any responses yet. The issue is as under. Can you please help. Thanks a lot.

    I created a Roll up summary to count the number of contact roles on an Opportunity using DLRS. [Parent: Opportunity, Child: OpportunityContactrole, Relationship field: OpportunityId, FieldtoAggtregate: ID]

    I selected the calculation more as scheduled and it calculated the values correctly.But now when I add a new contact role to opportunity it gives me the following error

    dlrs_OpportunityContactRoleTrigger : dlrs_OpportunityContactRoleTrigger: execution of AfterInsert caused by: System.QueryException: Grouped field should not be aggregated: OpportunityId Class.dlrs.LREngine.QueryExecutor.query: line 662, column 1 Class.dlrs.LREngine.WithSharingQueryExecutor.query: line 671, column 1 Class.dlrs.LREngine.rollUp: line 238, column 1 Class.dlrs.LREngine.rollUp: line 117, column 1 Class.dlrs.RollupService.updateMasterRollupsTrigger: line 1035, column 1 Class.dlrs.RollupService.handleRollups: line 919, column 1 Class.dlrs.RollupService.triggerHandler: line 311, column 1 Trigger.dlrs_OpportunityContactRoleTrigger: line 7, column 1

    • It should not be running the query realtime for Schedule mode – have you perhaps got another rollup definition lurking somewhere else?

  3. Hi Andrew,

    Many thanks for this tool (though in all honesty, thanks is too small a word to describe my gratitude).
    I recently modified the relationship criteria of an existing rollup to add an OR condition.
    When I run a full calculate on this revised rollup the batch completes successfully, but doesn’t pickup any records, so its like a false positive.
    Can you please advise why this could be happening


    • For full calculate you need to put your criteria in on the screen when you press the button. The criteria on the rollup definition is not used for full schedule rollups.

  4. I created some DLRS while I was in Classic, but I can’t see or edit them in Lightning. Do I need to delete them and re-create them in Lightning?

    • No they will exist – the Lightning App however does not by default show the “Declarative Rollup Summary” tab – you will need to add this to your profile or a permission set assigned to your user. Then search for the tab in the laucher or add the tab to the rollup app.

  5. Hi Andrew,
    We have created many DLRS fields to update data for lookup relationships. These are defined as real-time. However when the “child” record is created or edited the fields on the “parent” object are not consistently updated. Any insight you can provide would be greatly appreciated since the data is critical to the proper flow of a major upgrade to out current applications.

    • Rollups are calculated on insert and delete of a child record – when updating a child – only field changes to fields referenced on the rollup definition are monitored. Check “Relationship Fields” field.

  6. Pingback: Awesome Salesforce – Massive Collection of Resources – You Ever Wondered To Get – Learn Practice & Share

  7. Hello Andrew, Salesforce has released new updates which impact the existing components of managed packages. As c3HealthcareRX is using Declarative Lookup Rollup Summaries Tool which is a managed package, there may be impact on the components used. Please could you confirm is there any impact on functionality if we activate the critical updates ?

  8. Hi Andrew. We have been using DLRS for a while now and it’s been working fantastically. Until a week or so ago. I have recently had to edit all of our US and Canada State/Country Integration values. Previously they were, for example, United States. I recently changed them to match ISO coding, i.e US.

    Since making these changes, some records are not able to be saved, giving me error messages such as: “There’s a problem with this country, even though it may appear correct. Please select a country from the list of valid countries.”
    Mismatched integration value and ISO code for field

    After chatting with the Salesforce Support team, and doing some of my own digging, it seems that the DLRS_AccountTrigger, ContactTrigger, and Opportunity Trigger apex triggers are causing the problem. Disabling them in my sandbox solves the issue.

    I’m wondering, why would those DLRS triggers be interfering with my state/country integration values? Have you come across this? And if so, is there a workaround?

    Thanks so much.


    • My guess is it could be one of the rollup rules is rolling up a field with an old country picklist value in it maybe? Go through your rollup rules for these objects and see if thats the case. And if you have any old records with picklist values that are no longer valid. And also does it still fail for brand new records?

  9. Hello Andy,

    I’m hoping you can help with an issue that SF Support is troubleshooting for us at Guiding Eyes for the Blind. The issue has been sent to tier 3 and they have sent this request –

    The error that is thrown in the flow in coming from the apex classes that are part of the managed package.

    The managed package: ” Declarative Lookup Rollup Summaries Tool (Managed)”.

    If you are not the vendor of the managed package please get written consent from the vendor the managed package to enable the debug logs in order to find out the point of the error.

    Are you the correct person to give this permission or can you tell me who is. Thanks in advance for your help.


    • I am a key originating author of this tool yes. However it is reallly supported by a great community and when i can myself. Please check out the readme file in the tools github repo for a link to the chatter community group.

  10. I am trying to schedule DLRS apex job Rollup summaries and keep getting the error “Error: You must select an Apex class that has a parameterless constructor” I have not deleted the old schedule that is under an Admin ID. please advise.

    • You have to use the Schedule button on your rollup definition if this is a full recalc you want. The other way is the incremental reschedule path. Check out the wiki on the repo for a great article that covers the differences.

Leave a Reply

Fill in your details below or click an icon to log in: Logo

You are commenting using your account. Log Out /  Change )

Google photo

You are commenting using your Google account. Log Out /  Change )

Twitter picture

You are commenting using your Twitter account. Log Out /  Change )

Facebook photo

You are commenting using your Facebook account. Log Out /  Change )

Connecting to %s