I have a scenario where i have a Root Business unit A and two child business units B and C.
When a user in BU B assigns a Contact record they own to a user in BU C using the assign button on the form navigation they are presented with the following

However, once i go and click Ok it goes ahead and assigns the record as desired.
Also if change the owner field instead of using the assign button, it works fine with no error.
All the security roles are configured correctly and I've even disabled all plugins, workflows etc.
I have also went through each option on the security role, right up to full privileges on all sections
When i look at the Log file the OwnerId is set to the user who i am trying to assign it to and the Calling user is the person who is trying to assign it (who is the owner also).
They only way this error doesn't appear is if:
- I give Org level assign privileges on Contact record
- I assign to user or Team within the same BU
Just to note also, this error is consistent across a number of entities such as Lead, Opportunity and Account.
I suspect it may be a bug and that the assign button assigns the record before the validation executes (hence why it doesn't show the error using either of the 2 steps above)
Has anyone else experienced this?
The log file extract is as follows:
<s:Envelope xmlns:s="http://schemas.xmlsoap.org/soap/envelope/"><s:Body><s:Fault><faultcode>s:Client</faultcode><faultstring xmlns:xml="http://www.w3.org/XML/1998/namespace" xml:lang="en-IE">SecLib::AccessCheckEx failed. Returned hr = -2147187962, ObjectID: e7d94673-e3b5-e411-80d1-00155d028b34, OwnerId: 55222524-d396-e411-80c2-00155d016739, OwnerIdType: 8 and CallingUser: 49222524-d396-e411-80c2-00155d016739. ObjectTypeCode: 1, objectBusinessUnitId: 790df068-3ea6-e411-80c7-00155d016739, AccessRights: 524296 </faultstring><detail><OrganizationServiceFault xmlns="http://schemas.microsoft.com/xrm/2011/Contracts"><ErrorCode>-2147187962</ErrorCode><ErrorDetails /><Message>SecLib::AccessCheckEx failed. Returned hr = -2147187962, ObjectID: e7d94673-e3b5-e411-80d1-00155d028b34, OwnerId: 55222524-d396-e411-80c2-00155d016739, OwnerIdType: 8 and CallingUser: 49222524-d396-e411-80c2-00155d016739. ObjectTypeCode: 1, objectBusinessUnitId: 790df068-3ea6-e411-80c7-00155d016739, AccessRights: 524296 </Message><Timestamp>2015-03-13T14:10:36.7648681Z</Timestamp><InnerFault><ErrorCode>-2147187962</ErrorCode><ErrorDetails /><Message>SecLib::AccessCheckEx failed. Returned hr = -2147187962, ObjectID: e7d94673-e3b5-e411-80d1-00155d028b34, OwnerId: 55222524-d396-e411-80c2-00155d016739, OwnerIdType: 8 and CallingUser: , and the calling user . ObjectTypeCode: 1, objectBusinessUnitId: 790df068-3ea6-e411-80c7-00155d016739, AccessRights: 524296 </Message><Timestamp>2015-03-13T14:10:36.7648681Z</Timestamp><InnerFault xmlns:i="http://www.w3.org/2001/XMLSchema-instance" i:nil="true" /><TraceText xmlns:i="http://www.w3.org/2001/XMLSchema-instance" i:nil="true" /></InnerFault><TraceText xmlns:i="http://www.w3.org/2001/XMLSchema-instance" i:nil="true" /></OrganizationServiceFault></detail></s:Fault></s:Body></s:Envelope>