Check out the latest Sales updates!Learn about the key capabilities and features of Dynamics 365 Sales and experience some of the new features.
Download overview guide | Watch Sales video
2020 release wave 1 Discover the latest updates and new features to Dynamics 365 planned through September 2020
Release overview guides and videos Release Plan | Preview 2020 Release Wave 1 Timeline
Ace your Dynamics 365 deployment with packaged services delivered by expert consultants. | Explore service offerings
Connect with the ISV success team on the latest roadmap, developer tool for AppSource certification, and ISV community engagements | ISV self-service portal
The FastTrack program is designed to help you accelerate your Dynamics 365 deployment with confidence.
FastTrack Program | Finance TechTalks | Customer Engagement TechTalks | Upcoming TechTalks
I have created several rollup fields on Opportunity for sales reporting, which look to currency fields on the OpportunityProduct. I would like to have refresh relatively quickly. Is there a way to set the frequency any more? I think the default frequency is around 12 hours?
Apologies if this has been covered in another thread.
As a related question, if I have multiple sales opportunties per account (1:N) and multiple OpportunityProducts (on which the rollup fields in the above are calculated), then will the rollup on the Opportunity roll up ALL OpportunityProducts related to the Account or just those related to the Opportunity?
I would ideally like to ensure we can rollup to Account and Parent Account levels (if possivble?)
We could modify the repetition frequency of the rollup field to 1 hour, which is also the shortest time.
Mass Calculate Rollup Field job is executed in 12 hours after Rollup field is created or updated. But in case you do not want to wait for 12 hours and have first instance of job to be started immediately, follow below steps:
Once Mass Calculate Rollup Field job is executed successfully, Calculate Rollup Field job will kick in and run every hour for any incremental changes on existing records.
For more information, please refer to https://community.dynamics.com/365/b/sachinbansalmicrosoft/posts/dynamics-365-rollup-fields-important-points
The rollup field of the Opportunity entity can only rollup the count of OpportunityProducts for the current single opportunity, not the account-related records.
So I understand you, can you create a rollup field on Account, of a rollup field which is on opportunity?
Will the rollup of OpportunityProduct on the Opportunity record pick up ALL OpportunityProduct values or just those where OpportunityProduct is related to the Opportunity?
Thanks Hao. So if you create a new opportunity record, then the only way is to have the data appear quickly you need to manually trigger the rollup (using Mass Calculate Rollup field as you outline) as an administrator?
For every rollup field that is added to an entity, there is a system job created automatically to calculate the rollup fields. You could modify the recurrence for this job.
Navigate to System Jobs. Settings --> System Jobs. Change the view to Recurring System Jobs. Look for the job named Calculate rollup fields for <entityname> as shown in the screenshot below
From Actions --> Modify Recurrence - set the desired recurrence.
Do note that it is not desirable to run the job very frequently as it resource consuming and may impact user experience if this is run often during business hours.
You could programmatically get the rollup field to calculate for the desired record if you wish to have the latest values with you. For this read up the CalculateRollupFieldRequest. And yes finally there is always the option to click on the refresh button on-demand to get the updated values.
Highly recommend looking at the alternates suggested above than changing the frequency to be too frequent.
Sorry I misunderstood you.
The Recurrence Frequency of the rollup field defaults to every hour, not 12 hours.
However, after creating or updating rollup fields, the 'Mass Calculate Rollup Field' Job will wait for 12 hours before running. After it runs successfully, the Calculate Rollup Field job will run every hour.
So if you want to modify the Recurrence Frequency, you only need to modify the ‘Calculate Rollup Field’ Job instead of the ‘Mass Calculate Rollup Field’ Job.
Open the system logs and double click on “Calculate Rollup Field” Job, then select Actions menu in top navigation and Click on “Modify Recurrence” option which will open a dialog.
Regarding the rollup field, please refer to this official document: https://docs.microsoft.com/en-us/dynamics365/customerengagement/on-premises/customize/define-rollup-fields
In addition, you could refer to Roohi's suggestion and use CalculateRollupFieldRequest to recalculate rollup fields when creating, updating and deleting child records, instead of always refreshing them regularly.
Please refer to https://technologyblog.rsmus.com/microsoft-dynamics/dynamics-365-customer-engagement/changing-rollup-calculation-frequency-microsoft-dynamics-crm-2015/
"can you create a rollup field on Account, of a rollup field which is on opportunity?"
You mean to create a rollup field for the Account entity to rollup all OpportunityProducts of all Opportunities under this Account?
Unfortunately, this cannot be achieved using the rollup field because a rollup over the rollup field is not supported.
If you want to implement it, you have to create a plugin or use a custom workflow.
"Will the rollup of OpportunityProduct on the Opportunity record pick up ALL OpportunityProduct values or just those where OpportunityProduct is related to the Opportunity?"
It only selects OpportunityProducts that are related to the current opportunity, that is, those products that appear in the Opportunity Line sub-grid of the current opportunity form.
In D365, the display name of OpportunityProducts is Opportunity Line.
would you say every 1 hour is too frequent, for an entity with 10 rollup and around 300 records on the oppty entity?
I am a little confused by all the answers - so 'mass calculate' takes place after 12 hours of creating the actual rollup field, then 'Calculate rollup fields for [entity]' runs hourly after that by default - is that correct?
Business Applications communities