+ Start a Discussion
piyush parmarpiyush parmar 

NSUFFICIENT_ACCESS_ON_CROSS_REFERENCE_ENTITY, insufficient access rights on cross-reference id:

HI,

I need ur help !!

I am getting error INSUFFICIENT_ACCESS_ON_CROSS_REFERENCE_ENTITY, insufficient access rights on cross-reference id:[] Trigger.ShareOperatingUnits:  when test code covereag.

 

Test class ::

private class TestNewWorkOrder {

    static testMethod void myUnitTest() {
        User usr1 = [select id, Name, ProfileId  from User where Profile.Name = 'System Administrator' limit 1 ];
        System.runAs(usr1) {  
        Object__c ou = new Object__c();
        ou.Branch_Manager__c = UserInfo.getUserId();
        ou.Name = 'Test';
        insert ou;
     }

}

 

After insert Trigger::

trigger ShareOperatingUnits on Object__c (after insert, after update) {
    List<Object__Share> ouShareList = new List<Object__Share>();

    for(Object__c ou: Trigger.New) {
        Object__Share ouShare = new Object__Share();
        ouShare.ParentId  = ou.Id;
        ouShare.UserOrGroupId = ou.Branch_Manager__c;
        ouShare.AccessLevel = 'Read';
        ouShareList.add(ouShare);
        allOUids.add(ou.id);
    }

   insert ouShareList;   // HERE I M GETTING ERROR

}

 

Please tell me what i done wrong .

I think i need to make some changes on object side my trigger is working fine but getting prblm for test coverage .

Please help me !!

 

Many Thnks In Advance

 

Piyush

minkeshminkesh

Hello piyush,

                          the field you are assigning to USerOrgroupId i.e. branch_Manager__c is User and you need to assign groupId there.so try to find groupId and than assign that.

 

 

piyush parmarpiyush parmar

Hi minkesh ,

 In share  USerOrgroupId is field and we need to add only user in this field