We help IT Professionals succeed at work.

Resolving issue with Account Owner and Reparenting settings in CRM 2011

ccaines asked
Hi, I seem to be stuck in limbo with the way CRM reparenting works. Lets assume I'm working with Opportunities and Accounts as the two entities.

I understand that if you have Reparent set to "Cascade All", then when you change the Parent account for an Opportunity, the existing Account owner can then see all the opportunities which have his account as the newly assigned parent (by creating an entry in the POA table)

However, when the Account owner is changed on the Account, due to the reparent event not triggering the new Account owner cannot see the Opportunities. (Obviously if we can manually reparent all the opportunities, the event triggers, but this is impractical).

We have Assign set to Cascade None on the Account entity as we do not want the owners of the Opportunities changing when the account owner changes, we simply want the new Account owner to be able to see all Opportunities under Accounts that they own.

We cannot increase the security rights to opportunities for the Account Owners as they only get rights to see their own opportunities, or those on Accounts that they own.

I'm stuck as how to explain to the business that you can only have an Account Owner seeing all opportunities on their account "in certain situations" and am racking my brains trying to find a solution to this. Is this simply just a case of 'that's how it is' or am I missing something?

Many thanks.
Watch Question

This is interesting, and I've never tested what happens with this isolated security feature when you reassign the parent account. I would say the fact that the ability to see all children Opportunities by the new Account owner doesn't get granted when the assign occurs is a design oversight.

Let's see if we can come up with a workaround...

The reparent action would trigger if you changed the Parent Account of each of the children Opportunities, yes? So - what if we used workflow to help us here? The out of the box workflow engine does not have the ability to distribute actions down to children records, but this can be accomplished easily with the Distribute Workflow accelerator (http://crm2011distributewf.codeplex.com/) as long are your not running on CRM Online.

Run a worklfow on Accounts that runs when reassigned. That workflow calls the Distribute Workflow step and calls an Opportunity workflow for all children Opportunities that reassigns the Parent Account to the initiating Account.


I did assume there was a way to achieve it through workflow, but was thwarted by the exact issue the accelerator resolves and if that's the most practical solution, is the one I'll go with in the absence of any out-of-the-box solution.

I also guess a plugin could achieve the same result, but obviously requires more development work.

Glad it's not just me who thinks this is a design oversight, something to add to the feedback for CRM I think!

Thanks for your help.
Glad I could help :)